Added put_object() for pushing data into a file key in S3

This commit is contained in:
Rick Ross 2023-12-05 12:59:38 -08:00
parent a21bd5f043
commit 8274917ee6
1 changed files with 31 additions and 0 deletions

View File

@ -139,6 +139,37 @@ class S3Storage:
return this_object['Body'] return this_object['Body']
def put_object( self, bucket=None, key=None, data=None ):
"""
put_object
"""
if bucket == None:
raise AFS3Error("S3Storage.put_object(): missing required bucket name")
if key == None:
raise AFS3Error("S3Storage.put_object(): missing required key")
if data == None:
raise AFS3Error("S3Storage.put_object(): missing required data")
response = self.client.put_object(Bucket=bucket, Key=key, Body=data)
# response looks like this:
# response = {'ResponseMetadata':
# {'RequestId': 'tx00000ed21e851e5b2e313-00656c222c-32c0e88-default', 'HostId': '', 'HTTPStatusCode': 200,
# 'HTTPHeaders': {'date': 'Sun, 03 Dec 2023 06:37:32 GMT',
# 'content-length': '0',
# 'connection': 'keep-alive',
# 'etag': '"5d6ef8943a9f853a82247c9e87152c1f"',
# 'accept-ranges': 'bytes',
# 'x-amz-request-id': 'tx00000ed21e851e5b2e313-00656c222c-32c0e88-default'},
# 'RetryAttempts': 0},
# 'ETag': '"5d6ef8943a9f853a82247c9e87152c1f"'}
return response
def delete_all_objects( self, bucket=None ): def delete_all_objects( self, bucket=None ):
""" """
delete_all_objects delete_all_objects