aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAng Bel <anzelikabelotelova@Anzelikas-MacBook-Air.local>2024-08-16 10:01:06 +0100
committerAng Bel <anzelikabelotelova@Anzelikas-MacBook-Air.local>2024-08-16 10:01:06 +0100
commit938ddda10ff2f7d5360ca0a939fa2f16d6beb09d (patch)
treea6c5a27704690027eeffa632e726f6e73a6c9c0d /src
parent610261fec06ab3b6106465960d6935dd9df85df0 (diff)
downloadde-project-bentley-938ddda10ff2f7d5360ca0a939fa2f16d6beb09d.tar.gz
de-project-bentley-938ddda10ff2f7d5360ca0a939fa2f16d6beb09d.zip
extract bucket name retrieval helper function and replace the bucket name placeholders
Diffstat (limited to 'src')
-rw-r--r--src/extract_lambda.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/extract_lambda.py b/src/extract_lambda.py
index 3055f63..f4c0c1d 100644
--- a/src/extract_lambda.py
+++ b/src/extract_lambda.py
@@ -82,9 +82,12 @@ def connect_to_database() -> Connection:
logger.error(f'Interface error: {i}')
raise DBConnectionException("Failed to connect to database")
+def extract_bucket(client=boto3.client('s3')):
+ response = client.list_buckets()
+ extract_bucket_filter = [bucket['Name'] for bucket in response['Buckets'] if 'extract' in bucket['Name']]
+ return extract_bucket_filter[0]
-
-def list_existing_s3_files(bucket_name='extract_bucket', client=boto3.client('s3')):
+def list_existing_s3_files(bucket_name=extract_bucket(), client=boto3.client('s3')):
"""Creates a dictionary and populates it with the
results of listing the contents of the s3 bucket, then
returns the populated dictionary
@@ -93,7 +96,7 @@ def list_existing_s3_files(bucket_name='extract_bucket', client=boto3.client('s3
existing_files = {}
try:
- response = client.list_objects_v2(Bucket='extract_bucket')
+ response = client.list_objects_v2(Bucket=bucket_name)
if 'Contents' in response:
for obj in response['Contents']:
@@ -150,7 +153,7 @@ def process_and_upload_tables(db, existing_files, client=boto3.client('s3')):
## END OF NEW CODE
if existing_files[latest_s3_object_key] != new_csv_content:
try:
- client.upload_file(csv_file_path, 'extract_bucket', s3_key)
+ client.upload_file(csv_file_path, extract_bucket(), s3_key)
logger.info(f"Uploaded {s3_key} to S3.")
except ClientError as e:
logger.error(f'Error uploading to S3: {e}')
git.ajschof.me — hosted by ajschofield — powered by cgit