Config#
- pydantic settings nublado.controller.config.Config#
Nublado controller configuration.
- Parameters:
_nested_model_default_partial_update (
Optional[bool], default:None)_env_prefix_target (
Optional[Literal['variable','alias','all']], default:None)_env_file (
Union[Path,str,Sequence[Union[Path,str]],None], default:PosixPath('.'))_cli_parse_args (
Union[bool,list[str],tuple[str,...],None], default:None)_cli_settings_source (
Optional[CliSettingsSource[Any]], default:None)_cli_use_class_docs_for_groups (
Optional[bool], default:None)_cli_implicit_flags (
Union[bool,Literal['dual','toggle'],None], default:None)_cli_kebab_case (
Union[bool,Literal['all','no_enums'],None], default:None)_cli_shortcuts (
Optional[Mapping[str,Union[str,list[str]]]], default:None)_secrets_dir (
Union[Path,str,Sequence[Union[Path,str]],None], default:None)_build_sources (
Optional[tuple[tuple[PydanticBaseSettingsSource,...],dict[str,Any]]], default:None)values (
Any)
- Fields:
- Validators:
_validate_fileserver_volume_mounts»all fields
-
field baseUrl:
Annotated[str] = 'http://127.0.0.1:8080' (name 'base_url')# Injected into the lab pod as EXTERNAL_INSTANCE_URL
- Validated by:
_validate_fileserver_volume_mounts
Configuration for which images are displayed in the spawner dropdown menu for users to choose from when spawning labs.
- Validated by:
_validate_fileserver_volume_mounts
-
field fileserver:
Annotated[Union[DisabledFileserverConfig,EnabledFileserverConfig]] = DisabledFileserverConfig(enabled=False, path_prefix='/files')# - Validated by:
_validate_fileserver_volume_mounts
-
field fsadmin:
Annotated[FSAdminConfig] [Required]# - Validated by:
_validate_fileserver_volume_mounts
-
field images:
Annotated[PrepullerConfig] [Required]# Configuration for which images to prepull and to display in the spawner menu for users to choose from when spawning labs
- Validated by:
_validate_fileserver_volume_mounts
-
field logLevel:
Annotated[LogLevel] = LogLevel.INFO (name 'log_level')# Python logging level
- Validated by:
_validate_fileserver_volume_mounts
-
field logProfile:
Annotated[Profile] = Profile.production (name 'log_profile')# production uses JSON logging. development uses logging that may be easier for humans to read but that cannot be easily parsed by computers or Google Log Explorer.
- Validated by:
_validate_fileserver_volume_mounts
-
field metadataPath:
Annotated[Path] = PosixPath('/etc/podinfo') (name 'metadata_path')# This directory should contain files named
name,namespace, anduid, which should contain the name, namespace, and UUID of the lab controller pod, respectively. Normally this is done via the KubernetesdownwardAPI.) These are used to set ownership information on pods spawned by the prepuller and to find secrets to inject into the lab.- Validated by:
_validate_fileserver_volume_mounts
-
field metrics:
TypeAliasType[Optional]# Configuration for reporting metrics to Kafka
- Validated by:
_validate_fileserver_volume_mounts
-
field name:
Annotated[str] = 'Nublado'# Used when reporting problems to Slack
- Validated by:
_validate_fileserver_volume_mounts
-
field pathPrefix:
Annotated[str] = '/nublado' (name 'path_prefix')# This prefix is used for all APIs except for the API to spawn a user file server. That is controlled by
fileserver.path_prefix.- Validated by:
_validate_fileserver_volume_mounts
-
field slackWebhook:
Annotated[Optional[SecretStr]] = None (name 'slack_webhook')# If set, failures creating user labs or file servers and any uncaught exceptions in the Nublado controller will be reported to Slack via this webhook
- Validated by:
_validate_fileserver_volume_mounts
-
field watchReconnectTimeout:
Annotated[TypeAliasType] = datetime.timedelta(seconds=180) (name 'watch_reconnect_timeout')# How long to wait before explictly restarting Kubernetes watches. This can prevent the connection from getting unexpectedly getting closed, resulting in 400 errors, or worse, events silently stopping.
- Validated by:
_validate_fileserver_volume_mounts