summaryrefslogtreecommitdiffstats
path: root/ogcp
Commit message (Collapse)AuthorAgeFilesLines
* forms: ensure ip and mac are not empty in client add formAlejandro Sirgo Rica2024-06-032-2/+9
| | | | | | Use the WTForms validator InputRequired to check the field and disable the submit button if either the IP or MAC fields have no contents.
* templates: use the correct storage units1.1.3-20Alejandro Sirgo Rica2024-05-303-12/+12
| | | | | | | Use base 2 storage units in html templates as that's the correct representation for the values shown in the web. Remove units such as "Gbytes" and "MB" for their binary byte unit counterparts.
* views: prevent backtrace when no server is availableAlejandro Sirgo Rica2024-05-301-0/+1
| | | | | | | Define the timestamp in the codepath executed when no server is found active. Prevent the web to show a backtrace because the timestamp variable is used but not defined as it is only created when a server is found.
* ogcp: add cache management pageAlejandro Sirgo Rica2024-05-304-1/+301
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement cache management through cache/list and cache/delete API REST methods. The view corresponds to the URL action/cache and contains three main parts: - Free cache available in the client's bubbles. - Image selection form to request the deletion and view the client with that image in cache. - Cache details per client to see total, used and available cache. The main usecase for the view is the removal of cache to make room for new images in clients with slow connections. Checking clients where available cache space is not enough to hold the new image and then requesting removal of specific images. The html template receives the following structures from the view: storage_data[ip] = {'used': 223452345, 'total': 2345234523452} client_images[ip] = [f'{image_name}.{image_checksum}', ...] image_data[f'{image_name}.{image_checksum}'] = { clients: ['192.168.0.1', ...], size: 34534530850, name: image_name, }
* views: check if EFI filesystem is FAT32 in partition formAlejandro Sirgo Rica2024-05-161-0/+4
| | | | | Add validation for partition and format form to ensure the EFI partition has a FAT32 filesystem assigned.
* make the boot OS form work over multiple clientsAlejandro Sirgo Rica2024-05-163-19/+79
| | | | | | | | | Enable working over multiple clients even if their OS configuration is different to greatly improve the user's workflow. Group clients with the same configuration under the same checkbox in the form. Report clients excluded from the boot instruction due to not matching OS configuration.
* views: add EFI partition type to MBR partition schemeOpenGnSys Support Team2024-05-141-0/+1
| | | | Add 0xef (239) entry to display this accordingly
* js: only add MAC to client pills1.1.3-19Alejandro Sirgo Rica2024-05-132-2/+4
| | | | | | Ignore any room, center or folder as they don't have a MAC address. Trying to get the MAC of an scope element without one leads to a JS exception.
* views: check if repository is selected in repo/ pagesAlejandro Sirgo Rica2024-05-131-0/+12
| | | | | | Add checks and error report about non selected repository. Non having a repository selected caused a traceback to be shown in the web.
* js: remove console.log statementAlejandro Sirgo Rica2024-05-132-2/+1
| | | | Remove print statement generating noise in the browser logs.
* remove Format field from partition setup formAlejandro Sirgo Rica2024-05-133-5/+2
| | | | | | | Remove the 'Format' field from the Partition and Format form as the default value will always be to format the partitions. This will lead to less portantial codepaths to maintain and support and less manual clicks in the web form.
* js: prevent js exception in pages without pill controlAlejandro Sirgo Rica2024-05-132-1/+6
| | | | | Add check to test if a pill control has been found and don't try to add mac data to non existent client pill controls.
* views: ensure only one cache partition is definedAlejandro Sirgo Rica2024-05-131-3/+7
| | | | | Add validation for the case where the user defines more than one CACHE partition in the Partition and Format form.
* Make partition id non editable in partition formAlejandro Sirgo Rica2024-05-125-11/+16
| | | | | | | Show the partition id as a non editable label in each partition of the Partition and Format form. Assign sequential partition id from top to down and recalculate every partition id when a partition is removed.
* js: fix id update in partition form deletionAlejandro Sirgo Rica2024-05-102-3/+5
| | | | | | | Update all the name and id fields of the elements in the partition form after a delete operation. Inconsistent ids make form.validate() to always return False, this causes all the form validation code to be skipped.
* views: check target partition size in image restoreAlejandro Sirgo Rica2024-05-091-4/+12
| | | | | Compare image data size with the size of the target partition and show an error if the size is not enough for the operation.
* views: prevent image restore on invalid partition typesAlejandro Sirgo Rica2024-05-091-2/+9
| | | | | | | Add partition type info to the form data. Check if the user is trying to restore on an invalid partition type and report an error if that's the case. The invalid types are 'EMPTY', 'LINUX-SWAP', 'CACHE', 'EFI' and 'WIN-RECOV'.
* views: report error when spaces are found in image nameAlejandro Sirgo Rica2024-05-091-1/+6
| | | | | | Validate imagen names in POST /action/image/create. Remove spaces at the begining and end of the image name, then report error if the image name still contains space characters.
* forms: remove EXFATOpenGnSys Support Team2024-05-071-1/+0
| | | | ogclient does not support this filesystem type, remove it.
* views: use PART_TYPE_CODES, not PART_CODES1.1.3-18OpenGnSys Support Team2024-02-211-1/+1
|
* views: unmatched ] in use getter to access PART_TYPE_CODES and FS_CODES1.1.3-17OpenGnSys Support Team2024-02-211-2/+2
|
* views: use getter to access PART_TYPE_CODES and FS_CODES1.1.3-16OpenGnSys Support Team2024-02-211-8/+8
| | | | otherwise KeyError is raised on access to undefine value in the dictionary.
* views: call POST /refresh from get_client_setup()OpenGnSys Support Team2024-02-191-1/+9
| | | | | | | | | | | Refresh the disk layout before any command that displays it, no need to manually call command -> refresh. this cannot be skipped, POST /setup is an asynchronous invocation in ogserver is asynchronous, POST /refresh provides the existing disk layout, otherwise it shows the existing layout in the database which is not complete. this is also good in case someone manipulates the disk from the command line.
* views: add update centerJavier Hernandez2024-02-093-0/+49
| | | | add view to update center data such as its name or comment.
* views: Add update roomJavier Hernandez2024-02-094-0/+66
| | | | Add view to modify room information such as name, gateway and netmask
* views: Add edit-folder1.1.3-15Javier Hernandez2024-02-053-0/+57
| | | | Add view to modify folder information such as name
* views: provide a hint in list images that one or more can be selectOpenGnSys Support Team2024-02-051-1/+1
| | | | Provide an indication that one or more images can be selected.
* templates: remove Server: and Repo: in list imagesOpenGnSys Support Team2024-02-051-2/+1
| | | | | | | Although ogcp support for multiple server, the plan is to only support for one server in this version. Remove Server: context information and Repo: in list images
* views: preselect pxe boot mode in add clientJavier Hernandez2024-02-052-2/+23
| | | | | | | | preselect 'pxe' (if available) at adding a new client. use a dedicated template for adding a client and remove irrelevant partition table; client has yet to set its partition, so everytime, the table would load empty.
* improve delete confirmationJavier Hernandez2024-02-055-56/+54
| | | | | | | | Make delete confirmations show information in a manner that is easier to read. This includes delete confirmations for centers, room and folder. Messages are now more clear. Also, content table shows the type of the items (folder, room, etc.)
* Make list_images show only selected imagesJavier Hernandez2024-02-022-24/+28
| | | | | | | | | | | Make list images command show only information of the images the user has selected in the sidebar. Improve readability of the information. Show size and data size attributes rounded Warn the user if no images have been selected in sidebar
* views: Fix client-info form not fully read-only1.1.3-14Javier Hernandez2024-02-011-22/+2
| | | | | fix some fields (boot-mode and oglive) in client-info form that, despite being flagged as read-only, allowed the user to change values.
* improve delete confirmation pageJavier Hernandez2024-02-014-15/+120
| | | | | | | | | | In delete-center, delete-room and delete-folder confirmation pages, show the ancestors of the items about to delete. Likewise, show the items it contains. For example, if user is about to delete a room, confirmation page will display in which center it is contained and the clients and folder it has inside
* Add list images actionJavier Hernandez2024-01-303-0/+68
| | | | | Add list images action that shows a list of all the images in each server and their properties
* templates: show folder iconJavier Hernandez2024-01-301-0/+3
| | | | | | Add icons to differentiate folders. Use 📁 which represents folder using emojis.
* views: Preselect most used ogliveJavier Hernandez2024-01-292-3/+58
| | | | | | | | When setting up oglive, preselect oglive that is most used by selected clients. If only one client is selected, preselect that of the client. In the unusual scenario where a client is set with an oglive that is not in the ogserver's list of available oglives, preselect default.
* dashboard: Show all servers, online or offlineJavier Hernandez2024-01-292-13/+39
| | | | | | | Show in dashboard the list of all servers, regardless if they are online or offline. If they are offline, uptime appears as 'offline' Modify dashboard template to make it work with offline servers
* views: remove one level of indentation in action_image_restoreOpenGnSys Support Team2024-01-251-19/+18
| | | | | r.status_code == requests.codes.ok is redundant, already checked for error, remove this check and save one level of indentation.
* views: consolidate server error reportingOpenGnSys Support Team2024-01-251-71/+110
| | | | use ogserver_down() and ogserver_error()
* views: Check HTTP GET response from ogserver (part 2)Javier Hernandez2024-01-251-21/+165
| | | | | | | | | Check that connection to ogserver works and GET response is ok. Otherwise, show error message to the user and redirect. If there is an error while talking to server, a serverError or a serverErrorCode is raised so that it is possible to differentiate from different errors and give an appropiate error to the user
* views: Check HTTP GET response from ogserverJavier Hernandez2024-01-241-0/+90
| | | | | Check that GET response is ok. Otherwise, show error message to the user and redirect
* translations: update translationsJavier Hernandez2024-01-243-752/+1020
| | | | | | Update Spanish and Catalan translations And use _ in folder support
* views: do not use '_' variable, it causes conflict with babel gettext()Javier Hernandez2024-01-241-5/+5
| | | | | Do not use the '_' variable, this causes a conflict with babel gettext() alias '_' that results in a traceback.
* views: Add client's name in action/setup/selectJavier Hernandez2024-01-221-1/+11
| | | | | Show client's name (next to client's ip) in selectable in action/setup/select form.
* views: Fix traceback due to missing translationJavier Hernandez2024-01-221-2/+2
| | | | | | | Fix crash when adding a folder if no room or center is selected because no translation is available. plan is to update translations in a follow up patch.
* views: Display error if partitions are not availableJavier Hernandez2024-01-221-1/+1
| | | | | Display an error if the user tries to partition and format a client that has no partition info available
* views: Display error if software inventory are not availableJavier Hernandez2024-01-221-0/+4
| | | | | Display an error if the user tries to view software inventory but it is yet not available
* views: Fix wrong room in client detailsJavier Hernandez2024-01-221-1/+2
| | | | Fix incorrect room showing in client-details command.
* views: Add checking that no folder is selected1.1.3-13Javier Hernandez2024-01-191-0/+3
| | | | | Check that, when adding a new folder there is no other folders checked. It is only allowed to add folders to either centers or rooms
* templates: Add versioning to avoid browser caching ogcp.js errorsJavier Hernandez2024-01-191-1/+1
| | | | | | | | | Add version parameter to ogcp.js url. This is so that, if ogcp.js is modified, the browser is able to see that that file has been changed and that it has to load the new version instead of acquiring it from cache. We have experienced stranged errors, related to browsers caching old javascript files, leading to python flask backend backtraces