* web-apps(front): Fix status case
* Fix the status case to properly show the warning icon when the status
phase is warning.
Signed-off-by: Elena Zioga <elena@arrikto.com>
* web-apps(front): Modify status-icon component
* Modify the status-icon component to follow the status cases.
Signed-off-by: Elena Zioga <elena@arrikto.com>
* web-apps(front): Modify status component
Signed-off-by: Elena Zioga <elena@arrikto.com>
* web-apps(front): Introduce status-info component
* Have an admonition in the details page of each Notebook with a
detailed message on the current status.
Signed-off-by: Elena Zioga <elena@arrikto.com>
* jwa(back): Extend process_status function
The process_status parses the status by:
- Checking the .status.containerState.
- Checking the .status.conditions, since they have the one-liner reason
and a message.
- If none of the above exist, it will use the Events emitted for the
notebook.
- In case it deduces the status from an Event and it's not available
anymore, it uses a generic message.
Also, add a 10 second delay to the backend logic where we display a
spinner and a generic message to prevent a warning icon from appearing
immediately after a notebook is initialized.
Signed-off-by: Elena Zioga <elena@arrikto.com>
* jwa(back): Extend getNotebook request
* Extend the getNotebook request to also include the processed status
information in the Notebook details page.
Signed-off-by: Elena Zioga <elena@arrikto.com>
* jwa(front): Extend the frontend
Extend the frontend by:
- Adding an admonition with a detailed message on the current status
bellow the notebook name.
- Adding the processed_status field.
Signed-off-by: Elena Zioga <elena@arrikto.com>
* jwa(front): Fix unit tests
Fix unit tests accordingly.
Signed-off-by: Elena Zioga <elena@arrikto.com>
* jwa: Don't show the popup when a notebook is being stopped
* Use the waiting status, which also uses the spinner, when a notebook
is being stopped.
Signed-off-by: Elena Zioga <elena@arrikto.com>
* vwa(front): Update lib-status-icon
Signed-off-by: Elena Zioga <elena@arrikto.com>
* fixup! jwa(back): Extend getNotebook request
* fixup! jwa(back): Extend process_status function
---------
Signed-off-by: Elena Zioga <elena@arrikto.com>
* Update the backend
For the frontend to work properly we will need to add the following
changes to jupyter web app's backend as well as to the common backend
code:
* rename the references from `flask_rest_backend` to `crud_backend` in
the web app's backend code
* add a route for exposing GPU info. This way the UI will block users
from creating Notebooks with a GPU type that is not installed at all
in the cluster
Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
* Update the common frontend library
New functionality added:
* An `Advanced Settings` button that can expand and shrink to
expose/hide more options in the form
* All validators will have a debounce time to make the input of
characters smoother
* Extend the Status types to allow start/stopped resources
* Extend the main table config to support a button [ ex CONNECT for
jupyter web app ]
* The http services should use relative URLs
Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
* Update the frontend to utilize the common code
The bulk of the new frontend code. The folder structure is changed to
make it more clear what pages are used from the page.
Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
* {Make,Docker}files
Add Makefile and Dockerfiles. Note that GCB build process needs to be
updated.
Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
* README.md
Add a readme that explains how to build the app and have a development
environment.
Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
* WA: Backend common: update the library
Update the common python wheel wrt:
* How to distinguish between dev and prod mode
* Extra routes for handling Notebooks
* Serving the index.html for every non api route (SPA)
* Add a STOPPED state to the possible Status values
Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
* JWA: Add the refactored backend
Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
* JWA: Backend: Add support for Affinity/Tolerations
* Extend the configuration yaml with default form values for the
affinity/tolerations
* Set them accordingly when the user submits a notebook
Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
Reviewed-by: Ilias Katsakioris <elikatsis@arrikto.com>