in code/metadata/pipeline.py [0:0]
def lambda_handler(event, context):
for record in event['Records']:
print(event)
assert record['eventSourceARN'] == SQS_QUEUE_ARN, "Unexpected Lambda event source ARN. Expected {}, got {}".format(SQS_QUEUE_ARN, record['eventSourceARN'])
payload = json.loads(record["body"])
message = json.loads(payload['Message'])
receipt = record['receiptHandle']
print(message)
try:
documentPayload = {
"documentId": message['documentId'],
"bucketName": message['bucketName'],
"objectName": message['objectName'],
"status": message['status'],
"stage": message['stage'],
"timestamp": message['timestamp'],
}
except Exception as e:
print("Missing " + str(e))
raise ValueError("Missing parameters in payload to pipeline metadata lambda")
if 'initDoc' in message and message.get('initDoc') == "True":
startDocumentTracking(documentPayload, receipt)
else:
messageNote = message.get('message')
updateDocumentStatus(documentPayload, receipt, messageNote)