aws / aws/aws-cdk

(aws-s3-notifications): Straightforward implementation of NotificationConfiguration

Open
#20,385 12 comments 6 reactions 0 assignees View on GitHub
@aws-cdk/aws-s3-notifications feature-request p2
Dominant language
TypeScript
Stars
12.9k
Forks
4.6k
Avg merge
2d 3h
Merged PRs (30d)
83

Description

### Describe the feature

Hi,
regarding to these issues:
* https://github.com/aws/aws-cdk/issues/9552
* https://github.com/aws/aws-cdk/issues/16173

My proposition is to add an alternative way to implement `AWS::S3::Bucket NotificationConfiguration` that doesn't need to create four resources with no control on it.

### Use Case

I really don't understand the choice of aws to create by default an internal lambda with role and policy to avoid a really specific case of circular dependency.
Something very simple in cloudformation like the code below create a lots of noise in the cloudformation and a lost of control on resources deployed. Right know i'm stuck with the CfnBucket because on this downside
```
...
"NotificationConfiguration": {
"TopicConfigurations": [{
"Event": "s3:ObjectCreated:*",
"Topic": { "Ref": "SNSTopic" }
}]
}
```

### Proposed Solution

Add a cdk features like `"@aws-cdk/aws-s3:straightForwardCfnNotification:true"` that doesn't require to create unecessary resources when adding a event Notification to the bucket.

### Other Information

The internal implementation as severe impact on cloudformation deployment for us.
The cloudformation size increase with 4 aditionnal resources (with python code on lambda side) and a lots of us as strict constraint on role deployment and it's not the first time i see aws create role without giving control on it (specifically the naming).

### Acknowledgements

- [ ] I may be able to implement this feature request
- [ ] This feature might incur a breaking change

### CDK version used

2.24.1

### Environment details (OS name and version, etc.)

linux

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the linked issues and the current CfnBucket NotificationConfiguration behavior described here. Compare that behavior with the proposed feature flag and the existing S3 notification implementation; done means providing the requested alternative without the additional resources, while preserving the stated CloudFormation notification configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, typescript
Domain
cloud
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.