微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

CloudFormation创建更改集失败,并显示“通过转换修改的模板参数”

如何解决CloudFormation创建更改集失败,并显示“通过转换修改的模板参数”

我正在尝试为我的堆栈创建一个更改集,但是由于状态原因Template parameters modified by transform,它总是失败。

我有一个CodeBuild项目,该项目将在下面运行,然后在有效时将模板传递给它:

aws cloudformation validate-template --template-body file://<TEMPLATE_FILE>

根据this documentation,我正在使用CodeDeployBlueGreen转换允许ECS进行蓝色/绿色部署。

Transform:
  - 'AWS::CodeDeployBlueGreen'

我的模板不包含任何输入参数,并且删除了对resolve::ssm...的所有引用。

对于导致此问题的原因,我有些茫然,找不到任何指向正确方向的文档。

模板如下:

为安全起见,发布答案后删除了模板。

解决方法

可能不相关,但是CloudFormation Linter中的VSCode指出缺少的必需属性:

Visual Studio Code screenshot

[cfn-lint] E3003: Property GroupDescription missing at Resources/NeptuneSG/Properties

AWS::EC2::SecurityGroup.GroupDescription

,

我希望这可以为某人节省一天的头痛。

这是CloudFormation的一个已知问题,当您使用AWS::CodeDeployBlueGreen转换时,您需要将VPC和子网作为参数提供给堆栈。

Parameters:
  VPC:
    Type: AWS::EC2::VPC::Id
  Subnet1:
    Type: AWS::EC2::Subnet::Id
  Subnet2:
    Type: AWS::EC2::Subnet::Id

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。