ComputePlatform的部署组中的Ec2TagFilters:Lambda

Voi*_*son 2 amazon-web-services aws-cloudformation aws-code-deploy

我正在尝试通过Cloud Formation堆栈创建工作。堆栈包括AWS::CodeDeploy::Applicationusing CodePlatform: Lambda。它也有一个AWS::CodeDeploy::DeploymentGroup

如果我在存在部署组的情况下运行创建堆栈,那么一切似乎都可以正常工作。然后,我可以进入Web UI,并手动添加部署组。

但是,如果我在模板中描述部署组并运行create-stack,则部署组的创建将失败,并且堆栈将回滚。错误消息如下:

对于Lambda部署组,无法指定ec2TagFilters(服务:AmazonCodeDeploy;状态代码:400;错误代码:InvalidEC2TagException;请求ID:c4347652-c755-11e8-b8f1-6f54b77ae7fe)

...但是我的模板对部署组的描述不包括 Ec2TagFilters

小智 5

碰到同一件事。没有引用参数,仍然出错。添加了一个Null Ec2TagFilters参数,没有运气。奇怪的是,我然后添加了一个“部署样式”参数,再试一次,成功了。这是我结束的CFN:

TestSSHConnectivityCodeDeployGroup:
    Type: AWS::CodeDeploy::DeploymentGroup
    Condition: InPrimaryRegion
    Properties:
        ApplicationName: !Ref TestSSHConnectivityCodeDeployApplication
        DeploymentGroupName: Lambda-TestSSHConnectivity
        DeploymentConfigName: CodeDeployDefault.LambdaAllAtOnce
        DeploymentStyle:
            DeploymentOption: WITH_TRAFFIC_CONTROL
            DeploymentType: BLUE_GREEN
        ServiceRoleArn: !Sub arn:aws:iam::${AWS::AccountId}:role/AWS-CodeDeploy-Service
Run Code Online (Sandbox Code Playgroud)

  • 为了向其他人澄清,您必须为 Lamba 部署样式使用 WITH_TRAFFIC_CONTROL 和 BLUE_GREEN。您不能使用 IN_PLACE 或 WITHOUT_TRAFFIC_CONTROL (3认同)