1 個回答
- 最新
- 最多得票
- 最多評論
0
Yes, it is possible to configure a CDK pipeline with multiple stages to send notifications to different Slack channels for each stage.
Here is an example of how you can do it in CDK:
const pipeline = new pipelines.CdkPipeline(this, 'Pipeline', { pipelineName: 'MyAppPipeline', stages: [ { stageName: 'Source', actions: [/* source actions */], notifications: [ new pipelines.SlackApproval(this, 'SourceSlackApproval', { notificationTopic: new sns.Topic(this, 'SourceTopic'), slackChannel: 'source-updates' }) ] }, { stageName: 'Build', actions: [/* build actions */], notifications: [ new pipelines.SlackApproval(this, 'BuildSlackApproval', { notificationTopic: new sns.Topic(this, 'BuildTopic'), slackChannel: 'build-notifications' }) ] } ] }); // Create SNS topic subscriptions pipeline.stages[0].notifications[0].notificationTopic.subscribeUrl('https://hooks.slack.com/...'); pipeline.stages[1].notifications[0].notificationTopic.subscribeUrl('https://hooks.slack.com/...');
The key points:
-
Each stage can define its own notifications array with a SlackApproval
-
The SlackApproval is configured with a different SNS topic and slackChannel per stage
-
The SNS topics are then subscribed to separate Slack webhook URLs
This allows full customization of notifications for each stage in a CDK pipeline. The same approach could also be used for sending emails, PagerDuty alerts etc. per stage.
已回答 4 個月前
相關內容
- 已提問 10 個月前
- AWS 官方已更新 2 年前
- AWS 官方已更新 2 年前
Thanks for taking the time to answer. I'm new to CDK, but your sample looks to be CDK v1 related. I'm using v2. Maybe I'm not looking in the docs correctly, but where does
SlackApproval
come from? I don't see it anywhere in v1 or v2 docs.