Условие одобрения CircleCI для плана Terraform - PullRequest
1 голос
/ 18 марта 2019

Я пытаюсь создать в CircleCI задание, которое будет выполняться автоматически или нет в зависимости от результата команды.

  • Если с terraform plan есть нулевой код выхода, то изменений нет, и я бы хотел, чтобы задание завершилось и автоматически перейти к следующему шагу.
  • Если есть какие-либо изменения, команда вернет ненулевой код выхода, и я хочу, чтобы CircleCI запросил подтверждение, прежде чем перейти к следующему шагу.

Есть ли способ сделать это?

У меня есть следующее, которое, кажется, правильно ветвится в зависимости от результата плана (и кодов выхода), но я не уверен, как остановить вещи, или если это вообще возможно в CircleCI.

SomeJob: 
  steps:
    - run:
        name: Plan Terraform
        command: |
          cd ./bin
          planresult=$(terraform plan)
          if [[ $? != 0 ]]; then
            exit 2
          else
            exit 0
          fi
    - when:
        condition: on_fail
        steps:
          - run:
            # SOME APPROVAL STEP HERE
    - run:
         # This is the step that needs to be automated 
         # or not depending on the last one

Заранее спасибо.

...