Ручное утверждение в конвейере развертывания GitLab CI - PullRequest
0 голосов
/ 11 октября 2019

у нас есть GitLab CI конвейер сборки / тестирования / развертывания, и нам нужно вставить ручное утверждение между развертыванием до Test и повышением до Prod . Я не могу понять, как это сделать.

В идеале нам нужна кнопка, подобная GoCD или AWS CodePipeline . Однако для нашего текущего проекта мы используем GitLab EE (версия 12.3.5-ee), размещенный на наших серверах, не используя gitlab.com, но я думаю, что .gitlab-ci.yml должно быть таким же.

Это часть моего нынешнего .gitlab-ci.yml:

stages:
  # lint, build, test, ...
  - deploy_test
  - approval
  - deploy_prod


deploy_test:
  stage: deploy_test
  only:
    refs:
      - prod

  script:
    ...

wait_for_approval:
  stage: approval
  # how do I do this???

deploy_prod:
  stage: deploy_prod
  only:
    refs:
      - prod

  script:
    ...

Есть идеи?

1 Ответ

1 голос
/ 11 октября 2019

Используйте when: manual на вашей сцене.

Чтобы убедиться, что ручное действие блокирует (и не требует дополнительных действий), добавьте также allow_failure: false (по умолчанию установлено true)

Дополнительная информация в документации

Примечание. Если вы создали этап только для утверждения, я мог бы посоветовать вам удалить его и поставить when: manual на этапе deploy_prod.

...