如何解决即使 AWS CloudFormation 中的条件为假,获取命令也不能为空
我已经为此工作了几个小时,但似乎无法确定我做错了什么。感谢任何人可以提供帮助。
问题:
我有一个 ECS CFT 模板,我应该在其中更新容器定义中的运行状况检查命令。如果健康检查命令的参数可用,那么我应该包含它或不传递 aws 值。这是我的模板中的参考。但是,运行此程序后,我得到了
提供的请求无效:创建任务定义:您必须为容器指定运行状况检查命令。
我希望参数是可选的。所以我在更新堆栈时没有传递参数。
参数:
"ContainerHealthCheckCommand": {
"Description": "Health check command of the container"
"Type": "CommaDelimitedList","Default": ""
}
条件:
"hasContainerHealthCheckCommand": {
"Fn::Not": [{ "Fn::Equals": [{"Fn::Select": ["0",{"Ref": "ContainerHealthCheckCommand"},""]}]}
}
在我的资源容器定义内
"HealthCheck": {"Fn::If": [
"hasContainerHealthCheckCommand",{
"Command": {"Ref":"ContainerHealthCheckCommand"}
},{"Ref": "AWS::Novalue"}
]
解决方法
这是一个无关的错误。之后上面的代码运行良好。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。