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
Built Distribution
File details
Details for the file slurmformspawner-2.7.0.tar.gz
.
File metadata
- Download URL: slurmformspawner-2.7.0.tar.gz
- Upload date:
- Size: 20.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a715feea2b17b078dc278a45952b904dfa0a2d71450d2aef2b8dba0a879537e3 |
|
MD5 | 9a5adb37c2f78b7046e10ae7833daf74 |
|
BLAKE2b-256 | 487fe815442015b99f85f41b4cecd53cb661fcd0071ec8b9aa190a5180a82203 |
Provenance
The following attestation bundles were made for slurmformspawner-2.7.0.tar.gz
:
Publisher:
main.yml
on cmd-ntrf/slurmformspawner
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
slurmformspawner-2.7.0.tar.gz
- Subject digest:
a715feea2b17b078dc278a45952b904dfa0a2d71450d2aef2b8dba0a879537e3
- Sigstore transparency entry: 148482594
- Sigstore integration time:
- Predicate type:
File details
Details for the file slurmformspawner-2.7.0-py3-none-any.whl
.
File metadata
- Download URL: slurmformspawner-2.7.0-py3-none-any.whl
- Upload date:
- Size: 20.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b8a07f9a30c35247f171c1dd72b36c156d29ca7f4a3eb4a02e6cc66e3383eee |
|
MD5 | 1d5354fb8de9cba787fcc9e7563491b4 |
|
BLAKE2b-256 | e6126d1c72d9dd73eab009b936fd1ee3ccf46d20daec292732a3faced287e150 |
Provenance
The following attestation bundles were made for slurmformspawner-2.7.0-py3-none-any.whl
:
Publisher:
main.yml
on cmd-ntrf/slurmformspawner
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
slurmformspawner-2.7.0-py3-none-any.whl
- Subject digest:
4b8a07f9a30c35247f171c1dd72b36c156d29ca7f4a3eb4a02e6cc66e3383eee
- Sigstore transparency entry: 148482595
- Sigstore integration time:
- Predicate type: