Spaces:
Runtime error
Runtime error
File size: 1,015 Bytes
7a4b92f 2027cf1 7a4b92f 2027cf1 7a4b92f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
import logging
import boto3
from botocore.exceptions import ClientError
import os
def upload_file(file_name, bucket, object_name=None):
"""Upload a file to an S3 bucket
:param file_name: File to upload
:param bucket: Bucket to upload to
:param object_name: S3 object name. If not specified then file_name is used
:return: True if file was uploaded, else False
"""
# If S3 object_name was not specified, use file_name
if object_name is None:
object_name = os.path.basename(file_name)
if (not 'AAK_ID' in os.environ) or (not 'ASAK' in os.environ):
print('AWS keys not specified. Cancelling sync')
return False
# Upload the file
s3_client = boto3.client(
's3',
aws_access_key_id=os.environ['AAK_ID'],
aws_secret_access_key=os.environ['ASAK']
)
try:
response = s3_client.upload_file(file_name, bucket, object_name)
except ClientError as e:
logging.error(e)
return False
return True |