| 3 | |
| 4 | |
| 5 | class EnvVariables: |
| 6 | |
| 7 | def __init__(self, os_variables, *, extra_variables=None, hidden_variables=None) -> None: |
| 8 | super().__init__() |
| 9 | |
| 10 | self._variables = dict() |
| 11 | if os_variables: |
| 12 | self._variables.update(os_variables) |
| 13 | |
| 14 | if extra_variables: |
| 15 | self._variables.update(extra_variables) |
| 16 | |
| 17 | if hidden_variables: |
| 18 | for hidden_var in hidden_variables: |
| 19 | self._variables.pop(hidden_var, None) |
| 20 | |
| 21 | def build_env_vars(self, extra_variables=None): |
| 22 | result = dict(self._variables) |
| 23 | |
| 24 | if extra_variables: |
| 25 | result.update(extra_variables) |
| 26 | |
| 27 | return result |
| 28 | |
| 29 | |
| 30 | def read_variable(variable_name, *, fail_on_missing=True): |
no outgoing calls