orangeqs.juice.orchestration.jupyterhub#

Jupyterhub Utilities.

Module Contents#

Functions#

ensure_required_directories_exist

Ensure database, user data and configuration directories exist.

ensure_secrets_configured

Ensure secrets for Jupyterhub server Autherntications are configured.

render_jupyterhub_hub_configuration

Render Jupyterhub’s Hub configuration file.

render_jupyterhub_container_file

Render Jupyterhub configuration file for the singleuser server.

render_supervisor_files

Render the supervisord configuration for single-user Jupyter servers.

API#

orangeqs.juice.orchestration.jupyterhub.ensure_required_directories_exist(config: orangeqs.juice.orchestration.settings.JupyterHubInstanceSettings) None#

Ensure database, user data and configuration directories exist.

Parameters#

  • config (JupyterHubInstanceSettings): The settings block for the JupyterHub Instance.

orangeqs.juice.orchestration.jupyterhub.ensure_secrets_configured(config: orangeqs.juice.orchestration.settings.JupyterHubInstanceSettings) bool#

Ensure secrets for Jupyterhub server Autherntications are configured.

If the JupyterHub Server is configured to use ‘shared-password’ authenticator, creates and writes secrets.

Writes the secrets to a secrets file specified in the JupyterHubInstanceSettings. Replaces the secrets file from env if it already exists

Parameters#

  • config (JupyterHubInstanceSettings): The settings block for the JupyterHub Server.

Returns#

  • bool (False if the file already exists. True if a new file was generated.)

orangeqs.juice.orchestration.jupyterhub.render_jupyterhub_hub_configuration(settings: orangeqs.juice.orchestration.settings.OrchestrationSettings) None#

Render Jupyterhub’s Hub configuration file.

Parameters#

  • settings (JuiceSettings): The full Juice settings containing JupyterHub settings.

orangeqs.juice.orchestration.jupyterhub.render_jupyterhub_container_file(config: orangeqs.juice.orchestration.settings.JupyterHubInstanceSettings) None#

Render Jupyterhub configuration file for the singleuser server.

Parameters#

  • config (JupyterHubInstanceSettings): The settings block for the JupyterHub Server.

orangeqs.juice.orchestration.jupyterhub.render_supervisor_files(config: orangeqs.juice.orchestration.settings.JupyterHubInstanceSettings) None#

Render the supervisord configuration for single-user Jupyter servers.