SharedLabConfig#

pydantic model nublado.controller.config.SharedLabConfig#

Sanitized configuration for mounting into the Lab as ConfigMap.

This is a subset of LabConfig. It will have extra fields not part of Lab config attached to it when the ConfigMap is constructed.

Parameters:

data (Any)

Show JSON schema
{
   "title": "SharedLabConfig",
   "description": "Sanitized configuration for mounting into the Lab as ConfigMap.\n\nThis is a subset of LabConfig.  It will have extra fields not part\nof Lab config attached to it when the ConfigMap is constructed.",
   "type": "object",
   "properties": {
      "enableJobsMenu": {
         "default": true,
         "description": "If true, put the Jobs menu and its submenus into the JupyterLab UI.",
         "title": "Whether to enable Jobs menu",
         "type": "boolean"
      },
      "enableTutorialsMenu": {
         "default": true,
         "description": "If true, put the Tutorials menu and its submenus into the JupyterLab UI.",
         "title": "Whether to enable tutorials menu",
         "type": "boolean"
      },
      "fileBrowserRoot": {
         "$ref": "#/$defs/LabFileBrowserRoot",
         "default": "home",
         "description": "Whether to allow traversal in the UI file browser all the way up to the container root, or only as high as the user home directory.",
         "title": "JupyterLab file browser root"
      },
      "jupyterlabConfigDir": {
         "default": "/etc/nublado",
         "description": "Path inside the lab container where custom configuration is stored.  Things like kernel definitions, custom logger definitions, service tokens, and Lab-instance-specific secrets are stored under this path.",
         "title": "Root of Lab custom Jupyterlab configuration",
         "type": "string"
      },
      "runtimeMountsDir": {
         "default": "/etc/nublado",
         "description": "Directory under which runtime information (e.g. tokens, environment variables, and container resource information will be mounted.",
         "title": "Runtime-info mounts",
         "type": "string"
      }
   },
   "$defs": {
      "LabFileBrowserRoot": {
         "description": "Where the top of the UI file browser is.",
         "enum": [
            "root",
            "home"
         ],
         "title": "LabFileBrowserRoot",
         "type": "string"
      }
   }
}

Fields:
field enableJobsMenu: Annotated[bool] = True (name 'enable_jobs_menu')#

If true, put the Jobs menu and its submenus into the JupyterLab UI.

field enableTutorialsMenu: Annotated[bool] = True (name 'enable_tutorials_menu')#

If true, put the Tutorials menu and its submenus into the JupyterLab UI.

field fileBrowserRoot: Annotated[LabFileBrowserRoot] = LabFileBrowserRoot.HOME (name 'file_browser_root')#

Whether to allow traversal in the UI file browser all the way up to the container root, or only as high as the user home directory.

field jupyterlabConfigDir: Annotated[str] = '/etc/nublado' (name 'jupyterlab_config_dir')#

Path inside the lab container where custom configuration is stored. Things like kernel definitions, custom logger definitions, service tokens, and Lab-instance-specific secrets are stored under this path.

field runtimeMountsDir: Annotated[str] = '/etc/nublado' (name 'runtime_mounts_dir')#

Directory under which runtime information (e.g. tokens, environment variables, and container resource information will be mounted.