"""Kickoff state machine by checking s3.""" import base64 import boto3 from botocore.exceptions import ClientError client = boto3.client( 's3', endpoint_url='http://localstacks3:4566', use_ssl=False, aws_access_key_id='abc', aws_secret_access_key='123' ) def handler(event, context): """Entrypoint.""" print(event) print(context) url = event['url'] image_id = base64.b64encode(url.encode('utf-8')).decode('utf-8') bucket_id = 'test' cached = True try: data = client.get_object( Bucket=bucket_id, Key=image_id ) print(data) except ClientError as e: if e.response['Error']['Code'] == 'NoSuchKey': cached = False else: raise e return { 'cached': cached, 'id': image_id, 'bucket_id': bucket_id, 'url': url }