对于单个键,由于参数存储保留了历史记录,因此我在历史记录中具有多个值。
示例cloudformation脚本:
Parameters: {
"P1": {
"Description": "parameter",
"Type": "AWS::SSM::Parameter::Value<String>",
"Default": "KEY_NAME:VERSION"
}
}
我可以执行上述操作,即键名:版本
我想使用标签而不是版本来访问参数。
如何使用此方法或其他方法完成此操作?
答案 0 :(得分:0)
在这种情况下,您can't使用标签:
CloudFormation 不支持在动态引用中使用参数标签或公共参数。
答案 1 :(得分:0)
我认为,如果您使用宏,则可以解决。使用宏,您可以调用一个lambda来从参数存储中获取所需的确切值,然后在模板中执行转换并捕获所需的值。
例如,在这里,我将一些存储在参数存储区中的环境变量写入ECS任务定义中。我的宏是MacroEnvVars
Fn::Transform:
Name: MacroEnvVars
Parameters:
Prefix: MSX
Environment: !Ref Environment
EnvVarsLocation: !Ref EnvVarsLocation
然后我的宏返回已更新和修改的模板,并使用参数存储中的env var执行部署
请在此处检查in aws documentation