jupyterhub / jupyterhub/nbgitpuller
🚀 Feature request: configure default repos to pull
- Dominant language
- Python
- Stars
- 237
- Forks
- 86
- PR merge metrics
- No merged PRs in 30d
Description
### Proposed change
Extension configuration to register a list of repos to pull, and API handler to trigger pulling each repo in the configured list.
### Alternative options
Don't do this, keep using requests as the source of all pull info
### Who would use this feature?
Me! Deployments that want nbgitpuller-style functionality, but 'always' rather than only triggered through certain links. I use this [for the simula summer school image](https://github.com/minrk/simula-summer-school/blob/2021/image/pull_server_ext.py), where we want:
- all users to start with up-to-date clone of course materials, without needing the visit to originate from a special link
- a button in the UI to refresh the repo(s)
### (Optional): Suggest a solution
Something similar to what I use [in the simula summer school image](https://github.com/minrk/simula-summer-school/blob/2021/image/pull_server_ext.py):
- server-side config for a list of repos to pull (I source mine from a remote URL at startup)
- pull list of repos on server start
- API handler to trigger 'pull everything'
- bonus: nbclassic plugin to add a button that hits the API
- bonus: (I don't have this yet) jupyterlab plugin version, adding action to command palette / menu to pull everything that makes the API request
In the single-repo case, the need for a button can be mitigated by e.g. a link in a readme to the current nbgitpuller handler URLs. That should work most of the time, I think, but adding an action to the menu seems nice.
Contributor guide
Assessment
This issue has not been assessed yet.