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.56k stars 3.87k forks source link

(aws-kinesisfirehose-alpha): RedshiftDestination support #30866

Open simonmarty opened 2 months ago

simonmarty commented 2 months ago

Describe the feature

RedshiftDestinationConfigurationProperty (and others) takes a secretsManagerConfiguration object that contains the ARN of the secret.

It would be a better user experience if we could pass a Secret construct to it instead.

Use Case

See above. I'm from AWS Secrets Manager and have had customers reach out to me about the UX of this CDK construct.

Proposed Solution

Write L2 constructs for these resources.

Other Information

No response

Acknowledgements

CDK version used

2.147.1

Environment details (OS name and version, etc.)

environment-independent.

khushail commented 2 months ago

Hi @simonmarty , thanks for reaching out. Though Amazon Kinesis Data Firehose Alpha is experimental, am not really sure about making Secret a a construct to be passed here. But we are open to feedback from the community. Please help in prioritizing it by upvotes.

pahud commented 2 months ago

Hi

For all kinesis firehose destinations, they should be implemented in the destination library. At this moment, only S3bucket destination is implemented and we definitely need to implement the Redshift destination as well. By the time we implement that, we could use ISecret interface to represent the secret so we can get the secret arn from that interface.

Creating a new destination module is very straightforward, simply create a new destination class that implements firehose.IDestination with a bind method that returns all the configurations. Check here for more details.

I just changed this issue title for Redshift Destination support and we welcome the pull requests from the community.