| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
ogCP now have to types of users, regular and administrator users.
ogCP configuration file defines users roles with the boolean field
"ADMIN".
|
|
|
|
|
|
|
|
|
|
|
| |
The front-end now hashes passwords before sending them to the back-end.
It uses SHA-512.
This commit adds a hidden input which sends the password hash to not
interfere with browsers' save password functionality.
Also change passwords of the template configuration file for their
hashed/digested versions.
|
|
|
|
|
|
|
|
|
|
|
| |
Add import clients form with required inputs: room and dhcpd.conf.
This permits users to rapidly add large amounts of clients to a room
using dhcpd.conf's syntax. Users can copy full dhcpd.conf files to the
text area and the parser only matches lines with the following format as
clients:
host dummy {hardware ethernet 12:34:56:78:90:ab; fixed-address 192.168.1.55; }
|
|
|
|
|
| |
On connection error show a (toast) message warning the user. Otherwise,
users see Werkzeug debug page.
|
|
|
|
|
|
|
|
| |
Allows updating the image file for an existing image.
This action is related to /image/create in ogServer API. If ogServer
receives an POST /image/create without the parameter "description", it
does not create a new image and only updates.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Disk selection uses "scopesForm" to submit the change, but setup/show
view receives new parameters not provided by this form.
Commit 17757baa4727 adds those parameters.
This commit gives disk selection its own form with all the required
parameters.
|
|
|
|
|
| |
Allow the user to choose a computer as reference to display the
partition scheme form.
|
|
|
|
|
|
| |
get_client_setup() takes an IP address that identify the client,
instead of passing an iterator with one single IP address, pass
directly such IP address.
|
| |
|
|
|
|
|
|
|
| |
ogServer GET /stats returns ogServer uptime in seconds.
Transform seconds to days, hours and minutes and print them in the
dashboard.
|
|
|
|
|
| |
Constant strings outside of a request must use lazy strings. See
flask-babel documentation for more information.
|
|
|
|
| |
Add certain statistics on memory and swap usage, as well as the uptime.
|
|
|
|
| |
Otherwise, "image details" page lose the images tree and buttons.
|
|
|
|
|
| |
Otherwise, this actions pages lose the scopes tree and the scopes
buttons.
|
|
|
|
|
|
| |
Both "Add client" and "Client details" views use client_details.html
template. With this commit, "Add client" extends scopes.html and "Client
details" extend commands.hmlt.
|
|
|
|
|
| |
Draw selected clients from confirmation pages like selected clients from
scopes and commands pages.
|
|
|
|
|
| |
Otherwise, this actions pages lose the scopes tree and the commands
buttons.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Extend commands.html template to keep scope tree, and action buttons
state.
When in the software inventory view, there exists two options: 'update'
or 'view'. Do not print raw json response from ogserver about the software
inventory/profile.
When vieweing the software list, print a html table using the new
template: software_list.html.
Do not print blank pages with plain text html error codes when something
goes wrong. Instead, print an error message after redirecting to the
commands view.
|
|
|
|
|
|
|
| |
If something goes wrong, the application shows an error message after
redirecting to the commands view.
Do not show blank pages with plain text error codes.
|
|
|
|
|
| |
Do not show plain text '400 Bad Request'. Instead, show error message
and return to commands view.
|
| |
|
|
|
|
|
|
|
|
| |
Extending from command.html is required for action views to mantain
the scope context on the left side column.
Enables setting dropdown button and action button as active when loading
the hardware inventory view.
|
|
|
|
|
|
|
|
| |
User can confirm when deleting an image by double checking the
information displayed on this page.
Adds a new optional field in GenericForm: 'ids'. Used when dealing with
ids instead of ips.
|
|
|
|
|
|
|
|
|
|
| |
This commit adds an extra view to ensure users do not reboot clients
accidentally.
ogcp GET /reboot returns the confirmation page and POST /reboot
builds and sends the request to ogServer.
It also includes Spanish translation of the new strings.
|
|
|
|
|
|
|
|
|
|
| |
This commit adds an extra view to ensure users do not power off clients
accidentally.
ogcp GET /poweroff returns the confirmation page and POST /poweroff
builds and sends the request to ogServer.
It also includes Spanish translation of the new strings.
|
|
|
|
|
|
|
| |
This commit rename partition table type MSDOS to MBR in the front-end.
At the back-end ogCP still uses MSDOS string because ogClient scripts
(aka cloning engine) expects it.
|
|
|
|
|
|
|
|
|
| |
This commit converts disk and partition size from kibibytes to mebibytes
to improve usability. Disk and partition size are used in "Client
details" and "Partition & format" forms.
It also returns size to kibibytes when creating /setup API
payload as required by ogServer.
|
|
|
|
|
|
|
| |
This commit adds an extra view to ensure users do not clients
accidentally.
It also includes Spanish translation of the new strings.
|
|
|
|
| |
Otherwise, ogcp redirects to a blank page instead of the scopes view.
|
|
|
|
|
|
| |
python-babel is not compatible with f-strings.
See also: https://github.com/python-babel/babel/issues/594
|
|
|
|
| |
Otherwise, client image assignation fails if "images" variable is empty.
|
|
|
|
| |
Otherwise, ogLive field always shows the default value.
|
|
|
|
|
|
| |
This action is related to /oglive in ogServer's API. Allows changing the
ogLive for a set of given clients, previously selected in the /commands
view.
|
|
|
|
|
|
|
| |
ogCP limits which scopes can use each user.
Configuration file stores allowed scopes by their names. Leave scope
list empty to give a user permissions on all scopes.
|
|
|
|
|
| |
It is inspired by the following example:
https://github.com/maxcountryman/flask-login/blob/c760c0ef7ccc95d49b4693200245a4f2b148d41b/README.md#usage
|
|
|
|
|
|
|
|
| |
Clients in ogLive offer a web page with lighttpd that shows a real-time
log. This commit links this log in ogcp.
Future patches will deprecate this log functionality in favour of more
robust solutions.
|
|
|
|
|
| |
Otherwise, ogcp breaks when receiving an unknown disk table type,
partition type or file system.
|
|
|
|
|
|
|
|
|
| |
Add a new select input and button to choose which disk you want to
partition.
TODO: Current argument parsing function returns a list with all the
arguments, except csrf_token. Future patches should add granular parsing
of different types of arguments.
|
|
|
|
|
| |
Future patches will deprecate this log functionality in favour of more
robust solutions.
|
|
|
|
| |
Show a table with client's disks and partitions information.
|
|
|
|
|
|
|
| |
Adds a new button in the images view.
This action handles image deletion, one at a time for security. Users
must select an image using the images tree.
|
|
|
|
|
|
|
| |
Partition & Format JSON cache fields always have the default values (no
cache) although users order to create a cache partition.
Set JSON cache fields with the values filled by the user.
|
|
|
|
|
| |
This action is used to visualize the specific details of an image, as
its ID, name, size, etc.
|
|
|
|
|
|
|
|
|
|
|
| |
These functions can work with any kind of strings and not only with IPs.
This is required by the "image details form" that a follow up patch
implements. "Image details form" validates and parses IDs instead of IPs
with these functions.
Rename validate and parse IPs functions to a generic name, so it makes
sense to use them with any kind of string.
|
|
|
|
|
|
|
| |
Images view manages all the images stored in the server.
Follow up patches adds actions to get and edit image details, and to
delete them.
|
|
|
|
| |
To increase the compatibility of "Partition & format" (aka setup).
|
|
|
|
|
|
|
| |
Otherwise, ogcp fails to parse them when received.
Note: this commit write the codes in decimal notation, but the common
way is hexadecimal notation.
|
|
|
|
|
|
|
|
| |
Creates "delete center" form with a select to choose a center to delete.
Adds a new button in the scopes view. Because scopes checkboxes values
maps to ips the only way to specify the center to delete is in the delete
center form itself, using a select input.
|
|
|
|
|
|
|
| |
Adds a new button in the scopes view.
This action handles clients deletion on one or multiple scopes. Users
must select clients using the scopes tree.
|