GitLab CI 部署管道中的手动批准

Kee*_*ing 7 gitlab gitlab-ci

我们有一个GitLab CI构建/测试/部署管道,需要在部署到Test和升级到Prod之间插入手动批准。我不知道该怎么做。

理想情况下,我们希望有一个像GoCDAWS 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:
    ...
Run Code Online (Sandbox Code Playgroud)

任何想法?

Nic*_*ter 11

在你的舞台上使用when: manual

为了确保手动操作被阻止(并且没有可选),还添加(默认allow_failure: false设置为)true

文档中的更多信息

注意:如果您创建阶段只是为了批准,我可以建议您将其删除并将其放入阶段when: manualdeploy_prod