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

AWS CloudFormation 条件

如何解决AWS CloudFormation 条件

我的 CloudFormation 模板中有两个条件,用于根据环境选择要部署的资源。但是,稍后在模板中引用资源时,CloudFormation 会引发“未解决的资源依赖项”错误。知道出了什么问题吗?

为了便于阅读,缩短了模板。它在没有条件的情况下工作正常。

Parameters:
  EnvironmentName:
    Type: String

Conditions:
  IsProduction: !Equals [!Ref EnvironmentName,production]
  IsNotProduction: !Not [!Equals [!Ref EnvironmentName,production]]

Resources:
  Lambda:
    Type: AWS::Serverless::Function
    Condition: IsNotProduction

  Lambda:
    Type: AWS::Serverless::Function
    Condition: IsProduction

  LogGroup:
    Type: AWS::Logs::LogGroup
    Properties:
      LogGroupName: !Sub /aws/lambda/${Lambda}

解决方法

因此,由于模板被缩短了,因此很难判断导致此错误的原因。

不过,有一个问题是,您的两个 Lambda 都被称为 "Lambda"。那是行不通的,您需要在资源部分以不同的方式调用它们。

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