diff --git a/notifications_utils/s3.py b/notifications_utils/s3.py index e7b91dcab..c39d3e3ea 100644 --- a/notifications_utils/s3.py +++ b/notifications_utils/s3.py @@ -1,4 +1,3 @@ -import os import urllib import botocore @@ -6,6 +5,8 @@ from boto3 import Session from botocore.config import Config from flask import current_app +from app.config import _s3_credentials_from_env + AWS_CLIENT_CONFIG = Config( # This config is required to enable S3 to connect to FIPS-enabled # endpoints. See https://aws.amazon.com/compliance/fips/ for more @@ -16,18 +17,16 @@ AWS_CLIENT_CONFIG = Config( max_pool_connections=50, use_fips_endpoint=True, ) - - -default_access_key_id = os.environ.get("CSV_AWS_ACCESS_KEY_ID") -default_secret_access_key = os.environ.get("CSV_AWS_SECRET_ACCESS_KEY") -default_region = os.environ.get("CSV_AWS_REGION") +default_regions = "us-gov-west-1" def get_s3_resource(): + + credentials = _s3_credentials_from_env("CSV") session = Session( - aws_access_key_id=os.environ.get("CSV_AWS_ACCESS_KEY_ID"), - aws_secret_access_key=os.environ.get("CSV_AWS_SECRET_ACCESS_KEY"), - region_name=os.environ.get("CSV_AWS_REGION"), + aws_access_key_id=credentials["access_key_id"], + aws_secret_access_key=credentials["secret_access_key"], + region_name=credentials["region"], ) noti_s3_resource = session.resource("s3", config=AWS_CLIENT_CONFIG) return noti_s3_resource @@ -41,8 +40,6 @@ def s3upload( content_type="binary/octet-stream", tags=None, metadata=None, - access_key=default_access_key_id, - secret_key=default_secret_access_key, ): _s3 = get_s3_resource() @@ -83,9 +80,6 @@ class S3ObjectNotFound(botocore.exceptions.ClientError): def s3download( bucket_name, filename, - region=default_region, - access_key=default_access_key_id, - secret_key=default_secret_access_key, ): try: s3 = get_s3_resource()