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

根据参数值创建 AWS 资源

如何解决根据参数值创建 AWS 资源

我想根据 CloudFormation 中的条件创建 AWS 资源。条件取决于参数值,因此如果参数值为空,则不创建 AWS 资源。如果我为参数提供值,则应仅创建 AWS 资源。参数值来自如下变量。

我可以在条件部分使用 AWS::Novalue 以便在 S3_NAME 为空时不创建 aws 资源吗?或者不知道我应该如何处理这个。

Conditions:
  CreateS3Alerts:
    Fn::Not
      - ${self:custom.config.S3_NAME}
      - AWS::Novalue

S35xxErrors:
    Type: AWS::CloudWatch::Alarm
    Condition: CreateS3Alerts
    Properties:
      AlarmName: "S3 5XX Errors"

解决方法

不能这样做。从 docs 开始,您只能使用

另一个条件、参数值或映射

带条件的常见模式是使用 Equals,它检查您是否有空字符串

Conditions:
  CreateS3Alerts:
    !Not [!Equals [${self:custom.config.S3_NAME},""]]

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