NASA-IMPACT / veda-jupyterhub

VEDA JupyterHub technical planning and documentation
1 stars 1 forks source link

Objective JH-5: Dynamic, shareable environments #45

Closed batpad closed 4 weeks ago

batpad commented 4 months ago

Motivation

As hubs get a wider user base, different users need different environments to do their work. The same user may need multiple environments at different times too. Long term, we can not rely on admins to continuously update the small set of images available, and for users to have to keep up with modifying their code to work with newer packages. We need a way for users to be able to specify environments (without having to really understand Docker), and share it with others in a standardized way. This should be done in a way that’s compatible with community standards as well, rather than re-inventing something new. As part of the previous PI, we have deployed jupyterhub-fancy-profiles to VEDA for an improved logged-in environment choosing experience. This builds on top of that, with the goal of making it easier for users to easily & reproducibly create and use whatever environments they want, and share it with others as well.

Proposal

We improve the Dynamic Image Building feature of jupyterhub-fancy-profiles (courtesy a prior grant from GESIS) until it can be put in front of production users. Once deployed, end users can easily create environments in the form of GitHub repositories (or Zenodo DOIs, or many other versioned sources) and share it with each other. These same environments will work on mybinder.org, our existing image building infrastructure and the ephemeral hub set up as part of JH-5 by using the same backend technology to build images (binderhub and repo2docker).

Owners

Success Criteria

batpad commented 2 months ago

I created an issue for URL support for dynamic environments here: https://github.com/yuvipanda/jupyterhub-fancy-profiles/issues/66

For this PI, the plan will be to:

This will allow us to have dynamic image building working on the VEDA hub and have the ability to share URLs with the environment details encapsulated.

Once we are able to prove this all works and get some feedback from users, what we probably plan for next PI:

@yuvipanda let me know if this note and the ticket on fancy-profiles seems to accurately represent what we talked through and please feel free to add more context :-)

cc @oliverroick @freitagb

batpad commented 1 month ago

Done this quarter:

We need to deploy all the frontend changes to VEDA staging this week to test and take a call on moving this to production.