2018-12-11 06:20:57 +00:00
|
|
|
import os
|
|
|
|
|
2019-05-16 17:34:52 +00:00
|
|
|
OPTION_TO_ENVIRONMENT_VARIABLE = {
|
|
|
|
'borg_base_directory': 'BORG_BASE_DIR',
|
|
|
|
'borg_config_directory': 'BORG_CONFIG_DIR',
|
|
|
|
'borg_cache_directory': 'BORG_CACHE_DIR',
|
|
|
|
'borg_security_directory': 'BORG_SECURITY_DIR',
|
|
|
|
'borg_keys_directory': 'BORG_KEYS_DIR',
|
|
|
|
'encryption_passcommand': 'BORG_PASSCOMMAND',
|
|
|
|
'encryption_passphrase': 'BORG_PASSPHRASE',
|
|
|
|
'ssh_command': 'BORG_RSH',
|
|
|
|
}
|
2018-12-11 06:20:57 +00:00
|
|
|
|
2019-08-26 16:39:41 +00:00
|
|
|
DEFAULT_BOOL_OPTION_TO_ENVIRONMENT_VARIABLE = {
|
|
|
|
'relocated_repo_access_is_ok': 'BORG_RELOCATED_REPO_ACCESS_IS_OK',
|
|
|
|
'unknown_unencrypted_repo_access_is_ok': 'BORG_UNKNOWN_UNENCRYPTED_REPO_ACCESS_IS_OK',
|
|
|
|
}
|
|
|
|
|
2018-12-11 06:20:57 +00:00
|
|
|
|
2019-05-16 17:34:52 +00:00
|
|
|
def initialize(storage_config):
|
|
|
|
for option_name, environment_variable_name in OPTION_TO_ENVIRONMENT_VARIABLE.items():
|
|
|
|
value = storage_config.get(option_name)
|
|
|
|
if value:
|
|
|
|
os.environ[environment_variable_name] = value
|
2019-08-26 16:39:41 +00:00
|
|
|
|
|
|
|
for (
|
|
|
|
option_name,
|
|
|
|
environment_variable_name,
|
|
|
|
) in DEFAULT_BOOL_OPTION_TO_ENVIRONMENT_VARIABLE.items():
|
|
|
|
value = storage_config.get(option_name, False)
|
|
|
|
os.environ[environment_variable_name] = 'yes' if value else 'no'
|