blob: a1b7ee17714adfb6ab150617d6753b46df65fa9a [file] [log] [blame]
import boto3
import json
import urllib.parse # pylint: disable=E0611
print('Loading function')
dynamodb_client = boto3.client('dynamodb')
table_name = 'minified-archives.webkit.org'
s3 = boto3.client('s3')
def lambda_handler(event, context):
print("Received event: " + json.dumps(event, indent=2))
key = urllib.parse.unquote_plus(event['Records'][0]['s3']['object']['key'], encoding='utf-8') # pylint: disable=E1101
# ex: mac-sierra-x86_64-debug/218331.zip
split_key = key.split('/')
identifier = split_key[0] # mac-sierra-x86_64-debug
filename = split_key[1] # 218331.zip
revision = filename.split('.')[0] # 218331
print ("identifier: " + identifier)
print ("revision: " + revision)
try:
item = {'identifier': {'S': identifier}, 'revision': {'N': revision}}
response = dynamodb_client.delete_item(TableName=table_name, Key=item)
return response
except Exception as e:
print(e)
print('Error deleting item: {}\nfrom database: {}.'.format(item, table_name))
raise e