skeydula.server.config.env module¶
Loading environmental variables.
- class skeydula.server.config.env.Missing¶
Bases:
objectClass for generating singletons to test for if a field is missing.
- skeydula.server.config.env.MISSING = Missing¶
Singleton to indicate an environment variable was missing.
- skeydula.server.config.env.SUPPORTED_CAST_TYPES = (<class 'int'>, <class 'float'>, <class 'str'>, <class 'bool'>, <class 'NoneType'>)¶
The types supported for casting of environment variables.
- class skeydula.server.config.env.EnvVarValue¶
Bases:
object- spec: EnvVarSpec¶
- static do_cast(value, cast_type)¶
Decode an environment variable to a python type, uses json.loads.
- classmethod from_raw(spec, raw)¶
- Parameters:
spec (EnvVarSpec) –
raw (str) –
- Return type:
- __init__(spec, raw, value)¶
Method generated by attrs for class EnvVarValue.
- Parameters:
spec (EnvVarSpec) –
raw (str | skeydula.server.config.env.Missing) –
value (Any) –
- Return type:
None
- class skeydula.server.config.env.EnvConfig¶
Bases:
object- __init__(env_var_values)¶
- Parameters:
env_var_values (tuple[skeydula.server.config.env.EnvVarValue, ...]) –
- static validate_values(env_var_values)¶
- Parameters:
env_var_values (tuple[skeydula.server.config.env.EnvVarValue, ...]) –
- Return type:
- skeydula.server.config.env.validate_environment(environment_variables, expected_specs)¶
Validate and cast a set of environment variables against a set of expected variables.
- Parameters:
environment_variables (dict[str, str | skeydula.server.config.env.Missing]) –
expected_specs (tuple[skeydula.server.config.env.EnvVarSpec, ...]) –
- Return type:
- skeydula.server.config.env.extract_starlette_config(starlette_config, expected_specs)¶
Extract the starlette environment configuration for the expected environment variables.
If a variable is not found it will be set to None.
- Parameters:
starlette_config (Config) –
expected_specs (tuple[skeydula.server.config.env.EnvVarSpec, ...]) –
- Return type: