def main()

in TerraformScripts/sc_terraform_wrapper/__main__.py [0:0]


def main():
    cleanups = []
    args = parse_args()

    print("\n\n\n==========TERRAFORM WRAPPER SCRIPT OUTPUT==========")
    config = sc_config.load_config(verbose=True)
    wrapper_server_region = config['region']

    s3 = boto3.client('s3', region_name=wrapper_server_region)
    response_poster = ResponsePoster(s3, args, wrapper_server_region)

    try:
        validate_request_arg(args.request)
        run(cleanups, args, args.request, config, s3, response_poster)
    except Exception as e:
        msg = 'Encountered error during fulfillment script execution - ' + get_exception_msg(e)
        response_poster.post_response_with_expiration_check('FAILED', reason=msg)

        print(msg)
        print('Script error output is accessible to administrators in the fulfillment account at '
              'the following location:\n    s3://{}/{}'.format(args.output_bucket, args.error_key))
        raise e
    finally:
        clean(cleanups)