summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add example image creation WTForms validatorJose M. Guisado2021-02-161-1/+3
| | | | | | | | | | | Adds in a declarative way the validation of the image name form control when creating a partition image. This commit serves as an example of adding a predefined validator of the WTForms module. Custom validator may be added by creating a given function and appending it to the list of validators. See https://wtforms.readthedocs.io/en/2.3.x/validators/#custom-validators
* Add ips field validation and better redirectionsJose M. Guisado2021-02-161-6/+22
| | | | | | | | Add a function to validate that the ips received from the /scopes form is valid (no more, no less). Also redirects to the /scopes when any final request to the ogServer is responded by a "200 OK"
* Add FAT32 to FS_CODES dictJose M. Guisado2021-02-161-0/+1
| | | | | | An error was produced when rendering the setup form of a computer with any FAT32 partition. It was missing from the mapping of codes received in a response to a given filesystem.
* Add some minor cosmetic changesJose M. Guisado2021-02-163-7/+13
| | | | | | | | | | | | This commit may serve for future reference as to how some cosmetic changes have been applied to the web. Primarily using bootstrap classes in order to adjust margin or padding, there are mechanisms that allow modifying the class of an underlying html element in WTForms. Bootstrap classes are written directly in html templates for Flask. Also add a Soleta branded footer.
* Start using Flask flash messagesJose M. Guisado2021-02-162-9/+25
| | | | | | These are used to store a message string that can be later accessed. We can use Flask flash messages to alert about any error or providing info when processing a request.
* Add image create templateJose M. Guisado2021-02-102-1/+12
| | | | | | | | Image creation action was lacking a template to render the form. This patch adds said template. Also redirects to /scopes when the request was processed by the ogserver successfully.
* Add UNICAST-DIRECT method to image restoreJose M. Guisado2021-02-102-2/+3
| | | | | | | | | | | | Previously the only method (in the form select) was "UNICAST". This patch enables specifying a correct parameter for the underlying script to fetch the image to be restored. UNICAST-DIRECT makes the administrator transfer the image through the network. UNICAST-CACHE indicates the taget pc to search for the image in its cache partition. Also redirects to the /scopes when ogserver responds with 200 OK.
* Add setup modif part scheme param and autofill partition_setupJose M. Guisado2021-02-101-4/+30
| | | | | | | | | | | | | | A new parameter for the setup/ was added: type. Regarding the disk partition scheme. It must be either "MSDOS" or "GPT". ogServer expects a 4 partition setup in order to succesfully execute a setup/ command. Ogcp is currently getting the partition to modify one partition at a time. This patch enables ogcp to "autofill" with empty partitions the partition_setup payload parameter. TODO: In the future, the setup/ logic should not need to query the database once again in order to create the 'partition_setup' payload parameter with the form modifications.
* config: rename config file to ogcp.jsonJose M. Guisado2020-11-062-1/+1
| | | | Do not use the same name as ogserver config file.
* config: use from_json to read ogserver configJose M. Guisado2020-11-064-15/+11
| | | | | | | | | | | | | | | This patch introduces the usage of Flask.Config class so the config can be read at startup (__init__) only once. Config keys must be uppercase so that from_json method does take it into account. dormousehole.readthedocs.io/en/stable/api.html#flask.Config.from_json Prior to this patch each request required opening and closing the ogserver.json file via load_config in views.py. In the future the decorated load_config function inside views.py may be removed to avoid creating multiple instances of the OGServer class.
* Add software actionJose M. Guisado2020-10-294-1/+58
| | | | | | | | This action lists every piece of software installed in an OS from a client. This action can handle listing the software from the DB as well as updating that DB with the latest client information.
* Add image create actionRoberto Hueso Gómez2020-10-293-1/+52
| | | | | This action handles the creation of the image in the DB as well as the '.img' file.
* Add templates for clients, hardware, restore, session and setupRoberto Hueso Gómez2020-10-275-0/+73
| | | | These templates were not added in previous commits.
* Add run_test.sh scriptRoberto Hueso Gómez2020-10-271-0/+6
| | | | This script is used to run a Flask testing environment.
* Add image restore actionRoberto Hueso Gómez2020-10-233-1/+66
| | | | | This action provides the image restoring functionality on a specific client.
* Add session actionRoberto Hueso Gómez2020-10-223-2/+32
| | | | | This action provides the functionality to run one of the installed OSs in a client.
* Add client hardware actionRoberto Hueso Gómez2020-10-213-1/+26
| | | | This action lists all the hardware items in a client.
* Add create client actionRoberto Hueso Gómez2020-09-282-0/+37
| | | | | This action provides the functionality to add a new client to an ogServer.
* Add client details actionRoberto Hueso Gómez2020-09-283-2/+70
| | | | | This action is used to visualize the specific details of a client, such as its IP, Name, MAC, etc.
* Add delete partition viewRoberto Hueso Gómez2020-09-151-1/+32
| | | | This view deletes and formats a partition from the selected machine.
* Fix setup partitions filesystem codes to stringRoberto Hueso Gómez2020-09-151-12/+39
| | | | | | Partition filesystem are encoded with integers in the DB. We need to send the type string instead of the encoded integer, so this patch parses the encoded integer to string.
* Add partitions setup formsRoberto Hueso Gómez2020-09-143-3/+78
| | | | | This provides a menu to setup the internal partitions setup of each machine. Delete partitions is still just a placeholder.
* Fix parse_ips(...) function to avoid parsing CSFRRoberto Hueso Gómez2020-09-141-2/+3
| | | | This avoids trying to parse CSFT token as an IP.
* Fix internal server error codeRoberto Hueso Gómez2020-09-141-2/+2
|
* Add 500 default error handlerRoberto Hueso Gómez2020-09-041-0/+4
| | | | This handles HTTP 500 internal server errors.
* Add 404 default error handler.Roberto Hueso Gómez2020-09-042-0/+13
| | | | This handles HTTP 404 page does not exist errors.
* Add refresh actionRoberto Hueso Gómez2020-09-042-0/+10
| | | | This action can be applied on single or multiple scopes.
* Add WoL actionRoberto Hueso Gómez2020-09-046-3/+55
| | | | | | This action can be applied on one or multiple scopes. This implementation use Flask-WTF as a way to build and valdiate forms. As a side effect, this adds CSRF protection to all forms.
* Add reboot actionRoberto Hueso Gómez2020-09-032-0/+9
| | | | This action handles reboot on one or multiple scopes.
* Rename add_state_to_scopes() functionRoberto Hueso Gómez2020-09-021-3/+3
| | | | This function is renamed to add_state_and_ips() which is more accurate.
* Add action_poweroff() view functionRoberto Hueso Gómez2020-09-021-1/+14
| | | | This function handles a poweroff request to one or multiple scopes.
* Implement scopes() view functionRoberto Hueso Gómez2020-09-021-1/+21
| | | | | This function provides the data needed to render the scopes.html template.
* Add requests functionality to the OGServer classRoberto Hueso Gómez2020-09-021-0/+19
| | | | | These functions will be used to make HTTP GET and POST requests to the OGServer.
* Add scopes.html templateRoberto Hueso Gómez2020-09-021-0/+40
| | | | | This template shows information about scopes and its states as well as a tool to apply actions on them. Style improvements are still necessary.
* Add bootstrap bundleRoberto Hueso Gómez2020-09-022-0/+8
| | | | This is used for multiple bootstrap components such as dropdown menus.
* Add frontend basic structureRoberto Hueso Gómez2020-08-315-0/+52
| | | | | This adds base.html and nav.html templates as well as its dependencies on Bootstrap and jQuery.
* Add basic backend structureRoberto Hueso Gómez2020-08-314-0/+43
| | | | This adds views functions and ogServer config loading.
* Add requirements.txtRoberto Hueso Gómez2020-08-311-0/+14
| | | | | | | | | These are the basic libraries this app needs in order to run: - Flask - requests - Flask-Babel the rest of libraries are dependencies of theirs.
* Add gitignoreRoberto Hueso Gómez2020-08-281-0/+135