更新或修改Clouformation模板无效

时间:2017-12-26 09:34:55

标签: python amazon-cloudformation boto3

我正在使用boto3来更新Cloudformation堆栈。但是,我对模板所做的任何更改都不会因某些原因而保存。没有抛出错误,我看到(在Cloudformation事件日志中)已发生更新,但模板没有更改。

我正在尝试进行的更改是更改Metadata init部分中的某些脚本。

这是模板的缩写版本

"Metadata": {
  "Build": {
    "Ref": "Build"
  },
  "AWS::CloudFormation::Init": {
    "configSets": {
      "init": [
        "init"
      ]
    },
    "init": {
      "files": {
        "/var/myapp/deploy.sh": {
          "content": {
            "Fn::Join": [
              "",
              [
                "#!/bin/bash -ex\n",
                "# I do some things here...",
                "# I want to add some changes here..."
              ]
            ]
          },
          "context": {
              "param1": {
                "Ref": "param1"
              },
              "param2": {
                "Ref": "param2"
              },
          },
          "mode": "...",
          "owner": "...",
          "group": "..."
        }
      }
    }
  }
}

这是更新脚本<​​/ p>

stack_name = 'MyStack'
updated_template_body = '...'
stack_params = [...]
client = boto3.client('cloudformation')
response = client.update_stack(
    StackName=stack_name,
    TemplateBody=updated_template_body,
    Parameters=stack_params
  )

响应始终为200 ok响应,并且不会引发任何错误,但不会对模板进行任何更改。

根据this link,模板可以通过CLI更新,所以我不确定是什么问题。

调用cfn-init似乎没有帮助,因为模板永远不会改变......

谢谢,

0 个答案:

没有答案