如果操作失败,是否可以在 CloudFormation 中重新运行操作?

问题描述

我创建了一个 CloudFormation 管道。 某些任务需要在失败时重新运行。 是否可以在 CodePipeline 级别或 CodeBuild 级别设置它? 以下是我用于设置的示例。

    - Name: Build
      Actions:
      ## Creating CodeBuild to execute terraform Repo in TFE
        - Name: CodeBuildterraform
          ActionTypeId:
            Category: Build
            Owner: AWS
            Version: "1"
            Provider: CodeBuild
          InputArtifacts:
            - Name: SourceArtifactterraform
          OutputArtifacts:
            - Name: BuildOutputArtifactterraform
          Runorder: 1
          Configuration:
            ProjectName: !Join
                           - "_"
                           - - !Ref "AWS::StackName"
                             - !Ref "AWS::Region"
                             - "ProjectTerrafom"

解决方法

遗憾的是,CodePipeline (CD) 不会自动重试失败的操作。您必须按照 AWS 文档中的说明为每个管道手动执行此操作: