You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
At the moment for deploying apps you have to fill up the "Create App" form where you'd fill up all the details about app and then select server options (if available) and then deploy.
The proposal is to add the ability to create app from repository. Here is a mock UI
The Create App button will dropdown into two Options:
Create App (from scratch)
Create App (from git repository)
The create app form would look something like:
(Also see the alternative approach described below, we might end up taking that one)
🗒️ Configuration File
The app configuration can be defined in the git repository as following:
## jhub_app.ymlname: My Panel Appdescription: This is a panel appframework: panelsoftware_environment: environment.yml # relative path from git repository rootfilepath: src/panel_app.py # relative path from git repository root# non critical environment variables# critical ones can be added from the UIenvironment:
SOMETHING_FOO: barSOMETHING_BAR: betakeep_alive: falsepublic: falsethumbnail: src/thumbnail.jpg # relative path from git repository root
📦 Software Environment
The environment value (e.g environment.yml) can ideally be an environment file provided in the git repo, which will then be created in conda-store via API and then used for deploying the app, but for now in the first iteration we can start with not specifying it in the config file and letting the user chose from the UI.
⚙️ Environment variables
The environment variables has be provided from the UI as it would not be ideal from security point of view to add those in the git repo. Non-critical environment variables can be added in the git repository.
🚀 Implementation
We'll have to update the spawner command here to run a script in the newly created pod (or on temp directory in local deployment) to clone the repository and take the app params from it:
✨ Alternative approach (could be the main approach)
Clone the repo directory and pre-fill the form could be easier, but cloning repo might be a slow process and can potentially cause the UI to be non-responsive if the repository is too big, This may not be the average case as apps repo might just be really very light and cloning it with min depth (--depth 1), might just be quite fast, so we should definitely try this approach first before moving on to the other approach.
Value and/or benefit
This is a good approach for creating/testing new apps, but there isn't a way
to package app to be shared (whole app including code) to a wider community or even other team members
to version control app configuration
Anything else?
No response
The text was updated successfully, but these errors were encountered:
Feature description
At the moment for deploying apps you have to fill up the "Create App" form where you'd fill up all the details about app and then select server options (if available) and then deploy.
The proposal is to add the ability to create app from repository. Here is a mock UI
The Create App button will dropdown into two Options:
The create app form would look something like:
(Also see the alternative approach described below, we might end up taking that one)
🗒️ Configuration File
The app configuration can be defined in the git repository as following:
📦 Software Environment
The environment value (e.g
environment.yml
) can ideally be an environment file provided in the git repo, which will then be created in conda-store via API and then used for deploying the app, but for now in the first iteration we can start with not specifying it in the config file and letting the user chose from the UI.⚙️ Environment variables
The environment variables has be provided from the UI as it would not be ideal from security point of view to add those in the git repo. Non-critical environment variables can be added in the git repository.
🚀 Implementation
jhub-apps/jhub_apps/spawner/spawner_creation.py
Line 101 in 902ddcc
✨ Alternative approach (could be the main approach)
Clone the repo directory and pre-fill the form could be easier, but cloning repo might be a slow process and can potentially cause the UI to be non-responsive if the repository is too big, This may not be the average case as apps repo might just be really very light and cloning it with min depth (
--depth 1
), might just be quite fast, so we should definitely try this approach first before moving on to the other approach.Value and/or benefit
This is a good approach for creating/testing new apps, but there isn't a way
Anything else?
No response
The text was updated successfully, but these errors were encountered: