slurmformspawner: JupyterHub SlurmSpawner with a dynamic spawn form
Project description
slurmformspawner
JupyterHub SlurmSpawner with a dynamic spawn form
Requirements
- Python >= 3.7
- JupyterHub >= 4.0.0
- batchspawner>= 1.3.0
- cachetools
- traitlets
Configuration
SlurmFormSpawner
Variable | Type | Description | Default |
---|---|---|---|
c.SlurmFormSpawner.disable_form |
CBool |
Disable the spawner input form, use only default values instead | False |
c.SlurmFormSpawner.error_template_path |
Unicode |
Path to the Jinja2 template of the error page | os.path.join(sys.prefix, 'share', 'slurmformspawner', 'templates', 'error.html') |
c.SlurmFormSpawner.submit_template_path |
Unicode |
Path to the Jinja2 template of the submit file | os.path.join(sys.prefix, 'share', 'slurmformspawner', 'templates', 'submit.sh') |
c.SlurmFormSpawner.ui_args |
Dict |
Dictionary of dictionaries describing the UI options | refer to ui_args section |
ui_args
ui_args
is a dictionary where the keys are labels that will be re-used in SbatchForm.ui
and the values are dictionnaries describing how to launch the user interface.
Each option dictionary can have the following keys:
name
(required): string that will appear in the Spawner formurl
(optional): url user is being redirected to after spawning the single-user server (refer toJUPYTERHUB_DEFAULT_URL
documentation)args
(optional): list of flags and options that will be appended to jupyter single-user command that should redirect to the UI.modules
(optional): list of module names that needs to be loaded to make the user interface work
Here is an example of a dictionary that would configure Jupyter Notebook, a terminal and RStudio.
c.SlurmFormSpawner.ui_args = {
'notebook' : {
'name': 'Jupyter Notebook'
},
'terminal' : {
'name': 'Terminal',
'url': '/terminal/1'
},
'rstudio' : {
'name': 'RStudio',
'url': '/rstudio',
'modules': ['rstudio-server']
}
}
SbatchForm
Variable | Type | Description | Default |
---|---|---|---|
c.SbatchForm.runtime |
Dict({'max', 'min', 'step', 'lock', 'def'}) |
Runtime widget parameters | refer to form.py |
c.SbatchForm.nprocs |
Dict({'max', 'min', 'step', 'lock', 'def'}) |
Number of cores widget parameters | refer to form.py |
c.SbatchForm.memory |
Dict({'max', 'min', 'step', 'lock', 'def'}) |
Memory (MB) widget parameters | refer to form.py |
c.SbatchForm.oversubscribe |
Dict({'def', 'lock'}) |
Oversubscribe widget parameters | refer to form.py |
c.SbatchForm.gpus |
Dict({'def', 'choices', 'lock'}) |
GPUs widget parameters | refer to form.py |
c.SbatchForm.ui |
Dict({'def', 'choices', 'lock'}) |
User interface widget parameters | refer to form.py |
c.SbatchForm.reservation |
Dict({'def', 'choices', 'lock'}) |
Reservation widget parameters | refer to form.py |
c.SbatchForm.account |
Dict({'def', 'choices', 'lock'}) |
Account widget parameters | refer to form.py |
c.SbatchForm.partition |
Dict({'def', 'choices', 'lock'}) |
Slurm partition parameters | refer to form.py |
c.SbatchForm.form_template_path |
Unicode |
Path to the Jinja2 template of the form | os.path.join(sys.prefix, 'share', 'slurmformspawner', 'templates', 'form.html') |
SlurmAPI
Variable | Type | Description | Default |
---|---|---|---|
c.SlurmAPI.info_cache_ttl |
Integer |
Slurm sinfo output cache time-to-live (seconds) | 300 |
c.SlurmAPI.acct_cache_ttl |
Integer |
Slurm sacct output cache time-to-live (seconds) | 300 |
c.SlurmAPI.acct_cache_size |
Integer |
Slurm sacct output cache size (number of users) | 100 |
c.SlurmAPI.res_cache_ttl |
Integer |
Slurm scontrol (reservations) output cache time-to-live (seconds) | 300 |
screenshot
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
slurmformspawner-2.6.0.tar.gz
(20.2 kB
view hashes)
Built Distribution
Close
Hashes for slurmformspawner-2.6.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60a2c7a67cc83ec4fd52a2256e4a4ea89f1e690b3ad90efe6b6cbbefb408d43e |
|
MD5 | 0c54a25a5d5d4c84890606dd7643e41a |
|
BLAKE2b-256 | 2f521eb11165d1322f9e0bd628fca7ea63aa30c4654dd07d4c4f722e5e3275f0 |