aws / aws-cdk

The AWS Cloud Development Kit is a framework for defining cloud infrastructure in code
https://aws.amazon.com/cdk
Apache License 2.0
11.66k stars 3.92k forks source link

events: Making inputTransformers available in CfnRule for event bus as a target #30587

Open polianaysato opened 4 months ago

polianaysato commented 4 months ago

Describe the feature

Making inputTransformers available in CfnRule for event bus as a target.

Alternatively, making possible to set detailType in EventBridge Pipes with JSONPath (response coming from lambda enrichment step)

Use Case

I have a use case where we integrate MSK cluster with EventBridge Pipes with an Event Bus as a target and enrichment step.

I need to set detail-type dynamically based on the event path. We've tried to achieve that by adding an event rule in the target (event bus) that listens to the kafka event. Then we've tried to set detail-type with the JSONPath.

Currently CfnRule doesn't support set of input, inputPath and inputTransformers for when the target is an event bus (regardless it's in the same or different account).

The docs only mention that it's not possible to use those properties for when event bus is in a different account.

But the feature is not supported for both use cases.

This limitation for setting detail-type dynamically either in EventBridge Pipes or CfnRule (with target = event bus), caused us needing to do a lot of customisation. We had to use a lambda as a target (as opposed to event bus) plus adding a EventBridge client with SDK, besides additional unit tests.

Would there be a way for adding this feature in future releases?

I appreciate your support and help.

Thanks

Proposed Solution

Making inputTransformers available in CfnRule for event bus as a target.

Alternatively, making possible to set detailType with JSONPath (response coming from lambda enrichment step) in EventBridge Pipes.

Other Information

No response

Acknowledgements

CDK version used

2.22.6

Environment details (OS name and version, etc.)

2.22.6

pahud commented 4 months ago

CfnRule is CDK L1 construct auto generated based on CFN spec specifically AWS::Events::Rule. Please submit a feature request to https://github.com/aws-cloudformation/cloudformation-coverage-roadmap/issues to help the CFN team prioritize by sharing your use cases. CDK L1 constructs would update as soon as the upstream CFN spec adds relevant props or support.

polianaysato commented 4 months ago

Hi @pahud many thanks for your reply. I've just opened another request with the right team