即使在空变化集的情况下也能执行CloudFormation。

问题描述 投票:1回答:1

我们有一个 CloudFormation (我们Git中的yaml),它从S3下载配置文件,并使用 cfn-hup. 当配置文件有变化时,在 s3 我们不能直接创建一个新的变更集并执行它,因为变更集是空的。CloudFormation 的配置文件中看不到变化。S3 当然了 我们如何解决这个问题?

amazon-web-services amazon-cloudformation
1个回答
0
投票

一个工作方法,我只是测试,它的工作原理有两个组成部分。

一个虚拟的模板参数,你可以改变 每次你想改变你的。Init 节。意味着每次在s3中获取新的配置文件,如。

ConfigUpdateRequired:
    Type: String
    Default: some-value
    Description: Change me when a config changes

一个虚拟文件,或者说是env变量,在... Init 引用参数的部分,例如。

files: 
    /tmp/dummyfile: 
      content: !Sub "${ConfigUpdateRequired}"

每次你想更新配置文件时,你都要修改配置文件的 ConfigUpdateRequired 参数。这将修改 /tmp/dummyfile. cfn-hup 然后会检测到变化并进行更新。

显然,所有这些过程都可以通过以下方式自动完成 CodePipline或任何可以在S3的配置文件发生变化时触发堆栈更新的东西,并设置一些新的值。ConfigUpdateRequired.

© www.soinside.com 2019 - 2024. All rights reserved.