如何在cloudformation的`!If`条件中使用多行?

Joey Yi Zhao

!If在cloudformation模板中使用条件。下面的代码具有项目中ShouldAddWebHook添加或删除的条件当我运行deploy命令时,出现此错误。为什么抱怨状况?TriggersAWS::CodeBuild::Project!If

while scanning a simple key
  in "<unicode string>", line 93, column 7:
          !If
          ^ (line: 93)
could not find expected ':'
  in "<unicode string>", line 94, column 9:
            - ShouldAddWebHook
            ^ (line: 94)

以下是cloudformation模板:


Conditions:
    ShouldAddWebHook: !Equals [ !Ref ShouldAddWebHook, "true" ]

Resources:
  CodeBuildProjectDeployment:
    Type: AWS::CodeBuild::Project
    Properties:
      Name: test
      Artifacts:
        Type: NO_ARTIFACTS
      Environment:
        Type: LINUX_CONTAINER
        ComputeType: BUILD_GENERAL1_SMALL
        Image: aws/codebuild/amazonlinux2-x86_64-standard:2.0
      Source:
        Type: BITBUCKET
        Location: !Ref BitbucketCloneUrl
        GitCloneDepth: 26
        BuildSpec: buildspec.yml
      TimeoutInMinutes: 10
      BadgeEnabled: true
      !If
        - ShouldAddWebHook
        - Triggers:
            Webhook: true
            FilterGroups:
              - - Pattern: PUSH
                  Type: EVENT
        - !Ref "AWS::NoValue"
马辛

!If不能像这样“挂”。它应与某些属性关联。您可以尝试以下操作:

Resources:
  CodeBuildProjectDeployment:
    Type: AWS::CodeBuild::Project
    Properties:
      Name: test
      Artifacts:
        Type: NO_ARTIFACTS
      Environment:
        Type: LINUX_CONTAINER
        ComputeType: BUILD_GENERAL1_SMALL
        Image: aws/codebuild/amazonlinux2-x86_64-standard:2.0
      Source:
        Type: BITBUCKET
        Location: !Ref BitbucketCloneUrl
        GitCloneDepth: 26
        BuildSpec: buildspec.yml
      TimeoutInMinutes: 10
      BadgeEnabled: true
      Triggers:
        !If
          - ShouldAddWebHook
          - Webhook: true
            FilterGroups:
              - - Pattern: PUSH
                  Type: EVENT
          - !Ref "AWS::NoValue"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在SQL Server中使用条件更新多行

如何在Dockerfile中使用多行EOF

如何在Cloudformation模板条件中使用AWS SSM参数存储值?

如何在多行中使用grep并使用-A选项

如何在 cdk deploy 中使用 cloudformation wait 命令?

CloudFormation:如何在映射中使用AWS :: AccountId?

如何在CloudFormation中使用Glue / Athena / Quicksight

如何在Lambda函数中使用CloudFormation资源?

如何在Cloudformation中使用List和Map参数

如何在CloudFormation中使用CodeBuild的输出工件?

如何在CloudFormation中使用ECS服务守护程序调度?

如何在 CodePipeline 中使用 CloudFormation 部署多个 codeBuild 项目

如何在 cloudformation 屬性中使用條件?

如何在多行公式中使用Purrr波浪函数

如何在SQL中使用主键变量更新多行

切换时如何在Kotlins中使用多行?

如何在Java中使用printdialog导出多行文本?

如何在TSConfig addToList中使用多行代替线性列表?

如何在Selenium WebDriver的属性文件中使用多行属性?

如何在doctest中的QuickCheck中使用多行输入?

如何在YAML中的“脚本:”中使用多行命令?

如何在 Unix 中使用 grep 获取整个多行语句

如何在 PHP 中使用 URL 更改多行数字

如何在多行中使用 lightGalley.js?

如何在Laravel中使用单个值更新多行?

如何在bash脚本中使用awk处理多行记录?

如何在PostgreSQL中使用函数插入多行

如何在explode()函数中使用条件?

如何在POM中使用条件属性