根据分支发送到生产或审查环境
Sending to production or review environments depending on branch
我们正在使用 Gitlab-CI 但是我们在同时拥有审查和生产环境方面遇到了一些麻烦。
我们的 .gitlab-ci.yml
有几个阶段,但在这里我将重点介绍部署阶段:
deploy:
stage: deploy
script:
- some commands
environment:
name: review/$CI_BUILD_REF_NAME
url: http://$CI_BUILD_REF_SLUG.$DEPLOY_SERVER
on_stop: stop_deploy
only:
- /^feature-[cw]\/.*$/
deploy:
stage: deploy
script:
- some other commands
environment:
name: production
only:
- prod
stop_deploy:
stage: deploy
variables:
GIT_STRATEGY: none
script:
- some clean commands
when: manual
environment:
name: review/$CI_BUILD_REF_NAME
action: stop
only:
- /^feature-[cw]\/.*$/
问题是第一份工作不是 运行 在名称以 feature-c/
开头的分支上。但是,当删除第二份工作时,第一份工作在这些分支上是 运行。
部署到生产的作业在推送到 prod
时正确 运行。
那么为什么在定义第二个作业时第一个作业不是运行?冲突从何而来?
谢谢!
答案很简单;他们不能有相同的名字 :) 命名一个 deploy-review 和另一个 deploy-prod 及其修复。
我们正在使用 Gitlab-CI 但是我们在同时拥有审查和生产环境方面遇到了一些麻烦。
我们的 .gitlab-ci.yml
有几个阶段,但在这里我将重点介绍部署阶段:
deploy:
stage: deploy
script:
- some commands
environment:
name: review/$CI_BUILD_REF_NAME
url: http://$CI_BUILD_REF_SLUG.$DEPLOY_SERVER
on_stop: stop_deploy
only:
- /^feature-[cw]\/.*$/
deploy:
stage: deploy
script:
- some other commands
environment:
name: production
only:
- prod
stop_deploy:
stage: deploy
variables:
GIT_STRATEGY: none
script:
- some clean commands
when: manual
environment:
name: review/$CI_BUILD_REF_NAME
action: stop
only:
- /^feature-[cw]\/.*$/
问题是第一份工作不是 运行 在名称以 feature-c/
开头的分支上。但是,当删除第二份工作时,第一份工作在这些分支上是 运行。
部署到生产的作业在推送到 prod
时正确 运行。
那么为什么在定义第二个作业时第一个作业不是运行?冲突从何而来?
谢谢!
答案很简单;他们不能有相同的名字 :) 命名一个 deploy-review 和另一个 deploy-prod 及其修复。