Share via


KernelBaseSettings Class

Base class for all settings classes in the SK.

A subclass creates it's fields and overrides the env_prefix class variable with the prefix for the environment variables.

In the case where a value is specified for the same Settings field in multiple ways, the selected value is determined as follows (in descending order of priority):

  • Arguments passed to the Settings class initializer.

  • Environment variables, e.g. my_prefix_special_function as described above.

  • Variables loaded from a dotenv (.env) file.

  • Variables loaded from the secrets directory.

  • The default field values for the Settings model.

Constructor

KernelBaseSettings(_case_sensitive: bool | None = None, _nested_model_default_partial_update: bool | None = None, _env_prefix: str | None = None, _env_file: DotenvType | None = PosixPath('.'), _env_file_encoding: str | None = None, _env_ignore_empty: bool | None = None, _env_nested_delimiter: str | None = None, _env_parse_none_str: str | None = None, _env_parse_enums: bool | None = None, _cli_prog_name: str | None = None, _cli_parse_args: bool | list[str] | tuple[str, ...] | None = None, _cli_settings_source: CliSettingsSource[Any] | None = None, _cli_parse_none_str: str | None = None, _cli_hide_none_type: bool | None = None, _cli_avoid_json: bool | None = None, _cli_enforce_required: bool | None = None, _cli_use_class_docs_for_groups: bool | None = None, _cli_exit_on_error: bool | None = None, _cli_prefix: str | None = None, _cli_implicit_flags: bool | None = None, _secrets_dir: PathType | None = None, *, env_file_path: str | None = None, env_file_encoding: str = 'utf-8')

Parameters

Name Description
_case_sensitive
Default value: None
_nested_model_default_partial_update
Default value: None
_env_prefix
Default value: None
_env_file
Default value: .
_env_file_encoding
Default value: None
_env_ignore_empty
Default value: None
_env_nested_delimiter
Default value: None
_env_parse_none_str
Default value: None
_env_parse_enums
Default value: None
_cli_prog_name
Default value: None
_cli_parse_args
Default value: None
_cli_settings_source
Default value: None
_cli_parse_none_str
Default value: None
_cli_hide_none_type
Default value: None
_cli_avoid_json
Default value: None
_cli_enforce_required
Default value: None
_cli_use_class_docs_for_groups
Default value: None
_cli_exit_on_error
Default value: None
_cli_prefix
Default value: None
_cli_implicit_flags
Default value: None
_secrets_dir
Default value: None

Keyword-Only Parameters

Name Description
env_file_path
Required
env_file_encoding
Default value: utf-8

Methods

create

Update the model_config with the prefix.

create

Update the model_config with the prefix.

create(**data: Any) -> T

Attributes

env_file_encoding

env_file_encoding: str

env_file_path

env_file_path: str | None

env_prefix

env_prefix: ClassVar[str] = ''