in mysqloperator/backup_main.py [0:0]
def create_oci_config_file_from_envs(env_vars: dict, logger : logging.Logger) -> dict:
backup_oci_user_name = env_vars.get(BACKUP_OCI_USER_NAME)
backup_oci_fingerprint = env_vars.get(BACKUP_OCI_FINGERPRINT)
backup_oci_tenancy = env_vars.get(BACKUP_OCI_TENANCY)
backup_oci_region = env_vars.get(BACKUP_OCI_REGION)
backup_oci_passphrase = env_vars.get(BACKUP_OCI_PASSPHRASE)
oci_config_name = env_vars.get(OCI_CONFIG_NAME)
oci_api_key_name = env_vars.get(OCI_API_KEY_NAME)
if backup_oci_user_name is None:
raise Exception(f"No env var {BACKUP_OCI_USER_NAME} passed")
elif not backup_oci_user_name:
raise Exception(f"Empty value for {BACKUP_OCI_USER_NAME} passed")
if backup_oci_fingerprint is None:
raise Exception(f"No env var {BACKUP_OCI_FINGERPRINT} passed")
elif not backup_oci_fingerprint:
raise Exception(f"Empty value for {BACKUP_OCI_FINGERPRINT} passed")
if backup_oci_tenancy is None:
raise Exception(f"No env var {BACKUP_OCI_TENANCY} passed")
elif not backup_oci_tenancy:
raise Exception(f"Empty value for {BACKUP_OCI_TENANCY} passed")
if backup_oci_region is None:
raise Exception(f"No env var {BACKUP_OCI_REGION} passed")
elif not backup_oci_region:
raise Exception(f"Empty value for {BACKUP_OCI_REGION} passed")
if backup_oci_passphrase is None:
raise Exception(f"No env var {BACKUP_OCI_PASSPHRASE} passed")
if oci_config_name is None:
raise Exception(f"No env var {OCI_CONFIG_NAME} passed")
elif not oci_config_name:
raise Exception(f"Empty value for {OCI_CONFIG_NAME} passed")
elif os.path.isfile(oci_config_name):
raise Exception(f"{oci_api_key_name} already exists, won't overwrite")
if oci_api_key_name is None:
raise Exception(f"No env var {OCI_API_KEY_NAME} passed")
elif not oci_api_key_name:
raise Exception(f"Empty value for {OCI_API_KEY_NAME} passed")
elif not os.path.isfile(oci_api_key_name):
raise Exception(f"{oci_api_key_name} is not a file")
import configparser
config_profile = "DEFAULT"
config = configparser.ConfigParser()
config[config_profile] = {
"user" : backup_oci_user_name,
"fingerprint" : backup_oci_fingerprint,
"tenancy": backup_oci_tenancy,
"region": backup_oci_region,
"passphrase": backup_oci_passphrase,
"key_file" : oci_api_key_name,
}
with open(oci_config_name, 'w') as configfile:
config.write(configfile)
return {
"config": oci_config_name,
"profile" : config_profile,
}