-
Notifications
You must be signed in to change notification settings - Fork 109
Description
Feature description
Allow a Jhub app to be configured on nebari startup via the Nebari config file by adding something like the following to the nebari config file.
JhubApps:
- display_name:
description:
thumbnail:
framework:
filepath: <insert public git repo>
conda_environment:
spawner_profile:
allow_public_access:
start_app: False
share_with: [<nebari-usernames-or-groups>]
user: <insert nebari user>
retry: # (optional)
retry_frequency: '1min'
max_retries: 10Ideally, this would also retry deployment if the filepath or conda environment aren't present initially e.g. files are still being downloaded, conda env is still being built. Alternatively, Jhub apps could create the app (e.g. a tile shows up for it on the jhub apps startup screen), but doesn't start it yet. The inputs are only validated once a user goes and starts the app via the GUI.
Value and/or benefit
This would enable the creation of a RAG distribution of Nebari. The goal would be to allow people to easily try out Ragna and other AI apps in the future. This would be done by creating a nebari-ragna plugin which adds a --distr=ragna cli arg to nebari init which would configure a ragna conda env, gpus, and sets up the ragna app via jhub apps by adding to the nebari config file.
See https://docs.google.com/document/d/1mlZHAxIusTdYlnT6rfHxCpXi88fND2Cs1EDzgiL1Gxc for more details.
This feature would also allow the infrastructure as code approach to extend to deployed Jhub apps which some users may prefer.
Anything else?
I'm not sure of tho following:
- Can jhub apps accept a git repo path for filename?
- Can jhub apps input validation (e.g.filepath and conda env exist) be postponed until user tries to start the app?
- My understanding is that all Jhub apps need to be created by a jhub user. We may need to create a Nebari user for these apps to belong to?
- Other hurdles I'm missing?
Metadata
Metadata
Assignees
Labels
Type
Projects
Status