Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a FAQ entry for 'nbgitpuller link selecting profile options' #322

Merged
merged 5 commits into from
Sep 11, 2023
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions docs/faq.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Frequently asked questions

## Can I automatically tell JupyterHub what kind of server to start (node size, profile name, etc) as part of my nbgitpuller link?

You can use Kubespawner's profile_list or ProfileSpawner to allow your
end users to choose the resources (memory, cpu, GPUs, etc) they want before
starting their server. Wouldn't it be nice if this information could be
embedded in the nbgitpuller link, so this (often confusing) choice is made
for your students?

While it would indeed be very nice, this is not currently possible for two
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought this was inaccurate, but wasn't sure - that promoted the investigation.

I'd like this to be either closed pending work outlined in 2i2c-org/infrastructure#3096, or updated so it doesnt claim its not possible. The claim could instead be that its currently undocumented how to make a launch link specifying user options practically, and that currently with jh 4.0.2 at least, such links would not restart or error etc if a server was already running with either the same or different server options, but instead quickly proceed to the user server and the git pulling.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@consideRatio I've updated it to say 'not easy', and then also stated that this would have to be configured at the JupyterHub level, rather than at nbgitpuller level. What do you think now?

reasons:

1. nbgitpuller is a Jupyter Server extension, and only runs _after_ the server
is started. It knows nothing about JupyterHub. So it can not influence the
options JupyterHub uses to start the server.
2. There is UX complexity in what happens if the user clicks an nbgitpuller
link when a server is _already_ running, but with a different set of resource
requests / profile options. Do we shut that existing one down? Just error? Do
nothing? Many valid options, but takes a bunch of work.

So while this workflow _is_ possible, it would most likely require work in
JupyterHub to make it possible, rather than in nbgitpuller
1 change: 1 addition & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,5 +69,6 @@ contributing
topic/automatic-merging
topic/url-options
topic/repo-best-practices
faq
link
```