def yml_billing()

in infrastructure-provisioning/src/ssn/scripts/configure_billing.py [0:0]


def yml_billing(path):
    try:
        with open(path, 'r') as config_yml_r:
            config_orig = config_yml_r.read()

        config_orig = config_orig.replace('billingEnabled: false', 'billingEnabled: true')
        if args.cloud_provider == 'aws':
            if args.aws_job_enabled == 'true':
                args.tag_resource_id =  'resourceTags' + ':' + args.tag_resource_id
            config_orig = config_orig.replace('MONGO_HOST', args.mongo_host)
            config_orig = config_orig.replace('MONGO_PASSWORD', args.mongo_password)
            config_orig = config_orig.replace('MONGO_PORT', args.mongo_port)
            config_orig = config_orig.replace('BILLING_BUCKET_NAME', args.billing_bucket)
            config_orig = config_orig.replace('REPORT_PATH', args.report_path)
            config_orig = config_orig.replace('AWS_JOB_ENABLED', args.aws_job_enabled)
            config_orig = config_orig.replace('ACCOUNT_ID', args.account_id)
            config_orig = config_orig.replace('ACCESS_KEY_ID', args.access_key_id)
            config_orig = config_orig.replace('SECRET_ACCESS_KEY', args.secret_access_key)
            config_orig = config_orig.replace('CONF_BILLING_TAG', args.billing_tag)
            config_orig = config_orig.replace('SERVICE_BASE_NAME', args.service_base_name)
            config_orig = config_orig.replace('DATALAB_ID', args.datalab_id)
            config_orig = config_orig.replace('USAGE_DATE', args.usage_date)
            config_orig = config_orig.replace('PRODUCT', args.product)
            config_orig = config_orig.replace('USAGE_TYPE', args.usage_type)
            config_orig = config_orig.replace('USAGE', args.usage)
            config_orig = config_orig.replace('COST', args.cost)
            config_orig = config_orig.replace('RESOURCE_ID', args.resource_id)
            config_orig = config_orig.replace('TAGS', args.tags)
            config_orig = config_orig.replace('KEYCLOAK_REALM_NAME', args.keycloak_realm_name)
        elif args.cloud_provider == 'azure':
            config_orig = config_orig.replace('SERVICE_BASE_NAME', args.service_base_name)
            config_orig = config_orig.replace('OS_USER', args.os_user)
            config_orig = config_orig.replace('MONGO_PASSWORD', args.mongo_password)
            config_orig = config_orig.replace('MONGO_PORT', args.mongo_port)
            config_orig = config_orig.replace('MONGO_HOST', args.mongo_host)
            config_orig = config_orig.replace('KEY_STORE_PASSWORD', args.keystore_password)
            config_orig = config_orig.replace('KEYCLOAK_CLIENT_ID', args.keycloak_client_id)
            config_orig = config_orig.replace('KEYCLOAK_CLIENT_SECRET', args.keycloak_client_secret)
            config_orig = config_orig.replace('KEYCLOAK_AUTH_SERVER_URL', args.keycloak_auth_server_url)
            config_orig = config_orig.replace('CLIENT_ID', args.client_id)
            config_orig = config_orig.replace('CLIENT_SECRET', args.client_secret)
            config_orig = config_orig.replace('TENANT_ID', args.tenant_id)
            config_orig = config_orig.replace('SUBSCRIPTION_ID', args.subscription_id)
            config_orig = config_orig.replace('AUTHENTICATION_FILE', args.authentication_file)
            config_orig = config_orig.replace('OFFER_NUMBER', args.offer_number)
            config_orig = config_orig.replace('CURRENCY', args.currency)
            config_orig = config_orig.replace('LOCALE', args.locale)
            config_orig = config_orig.replace('REGION_INFO', args.region_info)
            config_orig = config_orig.replace('KEYCLOAK_REALM_NAME', args.keycloak_realm_name)
        elif args.cloud_provider == 'gcp':
            config_orig = config_orig.replace('SERVICE_BASE_NAME', args.service_base_name)
            config_orig = config_orig.replace('OS_USER', args.os_user)
            config_orig = config_orig.replace('MONGO_PASSWORD', args.mongo_password)
            config_orig = config_orig.replace('MONGO_PORT', args.mongo_port)
            config_orig = config_orig.replace('MONGO_HOST', args.mongo_host)
            config_orig = config_orig.replace('KEY_STORE_PASSWORD', args.keystore_password)
            config_orig = config_orig.replace('DATASET_NAME', args.billing_dataset_name)
            config_orig = config_orig.replace('KEYCLOAK_CLIENT_ID', args.keycloak_client_id)
            config_orig = config_orig.replace('KEYCLOAK_CLIENT_SECRET', args.keycloak_client_secret)
            config_orig = config_orig.replace('KEYCLOAK_AUTH_SERVER_URL', args.keycloak_auth_server_url)
            config_orig = config_orig.replace('KEYCLOAK_REALM_NAME', args.keycloak_realm_name)
        f = open(path, 'w')
        f.write(config_orig)
        f.close()
    except:
        print("Could not write the target file {}".format(path))
        sys.exit(1)