| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Add front end for the client/move REST API.
Enable the move of multiple clients selected from the sidebar of
Scopes Management.
Show the target of the move operation as a list of paths in a
dropdown widget in the form. Each path will be structured as:
Server/Center/Room
The path will also contain folders if they are present.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Match user enabled scopes as numerical id instead of the scope
name.
Rename get_available_scopes to get_center_choices and add only
center data. This function returns the list of values used to
validate the data returned by the form (form.scopes.choices).
Fix scope filtering to only allow the scopes stored in the user
configuration. The filtering removes the scopes of type 'center'
from the scopes dictionary when the center id is not present in
the list of available scopes for the logged user.
|
|
|
|
|
|
|
| |
Check no center selection before missing server data.
Lack of checkbox selection will not carry server data as server
information is defined based on the components selected. Report
no center selection instead of lack server data in that case.
|
|
|
|
|
| |
Validate request parameters before accessing the dictionary values.
Prevent web backtrace.
|
|
|
|
|
|
| |
Remove flash() error messages after validate_elements().
validate_elements() defines error messages for min and max
element selection from sidebar.
|
|
|
|
|
|
|
|
|
|
| |
Add the server scope during scope filtering for user accounts
with restricted scope access.
The HTML server scope component in the sidebar holds important
information as a hidden component. The removal of the server
scope also removes the respective HTML component in the web.
Missing server scopes result in a backtrace while trying to get
data such as server IP.
|
|
|
|
|
| |
Update multi_request() to skip non-200 OK requests to servers, otherwise
traceback is displayed while trying to access the json body.
|
|
|
|
|
|
| |
Ensure a cache partition is present before trying to do a UNICAST
or TIPTORRENT image restore.
Inform the user about the lack of cache in such case.
|
|
|
|
|
| |
Remove the check that disables creating a client without cache.
This is the initial step towards unicast restoration support.
|
|
|
|
|
| |
Ignore '00unknown', '10' from the list of boot modes in the form
shown in action/mode.
|
|
|
|
|
| |
Use a conventional for loop instead of a oneliner.
Improve code readability.
|
|
|
|
|
|
|
| |
Add better visualization to the boot modes shown in /action/mode.
Use a dictinary to implement hardcoded human readble strings of
the form choices.
A better method will be implemented in the future.
|
|
|
|
|
| |
Remove 2 instances of redirect(url_for('servers')), this path
does not exist anymore and causes the web to show a backtrace.
|
|
|
|
|
| |
Check the provided IP is valid before trying to send the payload
to the server.
|
|
|
|
| |
Allow MAC address modification in the client update form.
|
|
|
|
|
|
|
|
| |
Defining a partition size <1 causes the partition to show with
a different configuration to the one configured in the form.
Any <1 size partition shows as Linux, Empty and the size field
without value.
Validate the form so we refuse any partition with size <1.
|
|
|
|
|
|
| |
Use the WTForms validator InputRequired to check the field
and disable the submit button if either the IP or MAC fields
have no contents.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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,
}
|
|
|
|
|
| |
Add validation for partition and format form to ensure the EFI
partition has a FAT32 filesystem assigned.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Add 0xef (239) entry to display this accordingly
|
|
|
|
|
|
| |
Add checks and error report about non selected repository.
Non having a repository selected caused a traceback to be shown
in the web.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Add validation for the case where the user defines more than one
CACHE partition in the Partition and Format form.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Compare image data size with the size of the target partition and
show an error if the size is not enough for the operation.
|
|
|
|
|
|
|
| |
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'.
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
otherwise KeyError is raised on access to undefine value in the dictionary.
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
add view to update center data such as its name or comment.
|
|
|
|
| |
Add view to modify room information such as name, gateway and netmask
|
|
|
|
| |
Add view to modify folder information such as name
|
|
|
|
| |
Provide an indication that one or more images can be selected.
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
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 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
|
|
|
|
|
| |
fix some fields (boot-mode and oglive) in client-info form that, despite being flagged as
read-only, allowed the user to change values.
|
|
|
|
|
|
|
|
|
|
| |
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 action that shows a list of all the images in each
server and their properties
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
r.status_code == requests.codes.ok is redundant, already checked for error,
remove this check and save one level of indentation.
|
|
|
|
| |
use ogserver_down() and ogserver_error()
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
Check that GET response is ok. Otherwise, show error message to the user
and redirect
|
|
|
|
|
|
| |
Update Spanish and Catalan translations
And use _ in folder support
|