使用 aws cdk 创建 sam canary 部署
Posted
技术标签:
【中文标题】使用 aws cdk 创建 sam canary 部署【英文标题】:Creating a sam canary deployment with aws cdk 【发布时间】:2021-12-29 21:06:52 【问题描述】:我希望使用 aws sam 来利用滚动金丝雀部署(在 [此处][1] 找到示例)。我不想一次对所有客户进行部署,我希望能够在它为流量提供服务之前执行验证,并且我希望在警报响起时自动回滚。如果我自己编写 sam 模板(而不是使用 cdk 合成它),它看起来像这样:
Resources:
MyLambdaFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.handler
Runtime: nodejs12.x
CodeUri: s3://bucket/code.zip
AutoPublishAlias: live
DeploymentPreference:
Type: Canary10Percent10Minutes
Alarms:
- !Ref AliasErrorMetricGreaterThanZeroAlarm
- !Ref LatestVersionErrorMetricGreaterThanZeroAlarm
Hooks:
PreTraffic: !Ref PreTrafficLambdaFunction
PostTraffic: !Ref PostTrafficLambdaFunction
现在我正在尝试使用 aws cdk 执行此操作(现在正在尝试使用 java,因为这是我最熟悉的语言,但我也对其他语言的示例持开放态度),但我找不到合适的执行此操作的选项。谁能给我一个例子来使用cdk生成这个?提前致谢。
【问题讨论】:
【参考方案1】:CfnFunction.DeploymentPreferenceProperty -- 似乎这是你想要的类,如果其他人正在寻找(来自 sam 依赖项)
【讨论】:
以上是关于使用 aws cdk 创建 sam canary 部署的主要内容,如果未能解决你的问题,请参考以下文章