Могу ли я включить / отключить некоторые этапы aws_codepipeline в Terraform - PullRequest
0 голосов
/ 31 мая 2018

У меня есть CodePipeline в terraform следующим образом:

resource "aws_codepipeline" "main" {
      stage {
          name = "Source"
          ....
      }
      stage {
          name = "Test"
          ....
      }
      stage { 
          name = "Approval"
          ....
      }
      stage {
          name = "Deployment"
          ....
      }
}

можно ли настроить, нужен ли мне один из вышеперечисленных этапов, например, если переменная enable_approval_stage = 1, этап утверждения создан, если enable_approval_stage = 0, этап утверждения не создан?так же, как мы устанавливаем count = 0 в ресурсе {}?

1 Ответ

0 голосов
/ 10 июня 2018

Моя идея состояла в том, чтобы создать два разных конвейера, один с этапом утверждения, а другой без него.И сделайте так:

Если manual_approve имеет значение true (значение равно 1):

resource "aws_codepipeline" "pipeline-manualapprove" {
     count    = "${var.manual_approve}"

И если manual_approve имеет значение false (значение равно 0):

resource "aws_codepipeline" "pipeline-automatic" {
     count    = "${1-var.manual_approve}"
...