-
Notifications
You must be signed in to change notification settings - Fork 443
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Expected Behaviour
LifecycleExpiration:Delete
events for SQS queue should be parsed properly
Current Behaviour
Error because for all :Delete
events size
and eTag
are not in event and code here is requires it:
https://github.com/aws-powertools/powertools-lambda-python/blob/develop/aws_lambda_powertools/utilities/parser/models/s3.py#L108
I added code from link to code snippet
Code snippet
@root_validator(allow_reuse=True, skip_on_failure=True)
def validate_s3_object(cls, values):
event_name = values.get("eventName")
s3_object = values.get("s3").object
if "ObjectRemoved" not in event_name:
if s3_object.size is None or s3_object.eTag is None:
raise ValueError("S3Object.size and S3Object.eTag are required for non-ObjectRemoved events")
return values
Possible Solution
Change condition from:
if "ObjectRemoved" not in event_name:
to
if ":Delete" not in event_name:
Steps to Reproduce
Try to parse LifecycleExpiration:Delete
.
Powertools for AWS Lambda (Python) version
latest
AWS Lambda function runtime
3.8
Packaging format used
Lambda Layers
Debugging logs
No response
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Type
Projects
Status
Shipped