用于开发人员和功能分支之间合并请求的Gitlab CI作业

时间:2019-04-10 11:49:25

标签: continuous-integration gitlab continuous-deployment

我有Gitlab v11.9.6,我想创建管道,

  1. 为每个合并请求(only: merge_requests)运行构建阶段
  2. 如果合并请求在dev和feature分支之间,请在手动触发后运行job deploy_test
  3. 如果创建的合并请求在dev和master分支之间,请在手动触发后运行job deploy_prod

我特别想解决第2步和第3步,通过使用仅提及的子句可以解决第1步。我也不想使用except子句,因为出于某些其他原因,我已经在使用它。管道应该看起来像下面列出的代码,只需弄清楚only子句的样子即可。

---
stages:
  - build
  - deploy

test_and_build:
  stage: build
  script:
    - ~/do-some-magic.sh
  only:
    - merge_requests
deploy_test:
  stage: deploy
  script:
    - ~/deploy-to-test.sh
  only:
   - ???
  when: manual
deploy_prod:
  stage: deploy
  script:
    - ~/deploy-to-prod.sh
  only:
    - ???
  when: manual

0 个答案:

没有答案