合并请求合并时,GitLab运行管道作业 [英] Gitlab run a pipeline job when a merge request is merged

查看:0
本文介绍了合并请求合并时,GitLab运行管道作业的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个GitLab管道,其中有两个阶段,一个是构建阶段,另一个是部署阶段。生成阶段在提交时运行。我想要一种在合并请求合并到MASTER时运行部署作业的方法。我试了好几种方法,但都没成功。有人能帮忙吗?

stages:
  - build
  - deploy

dotnet:
script: "echo This builds!"
stage: build


production:
script: "echo This deploys!"
stage: deploy

only:
  refs:
    - master

推荐答案

尝试使用gitLab-ci.yml;规则功能检查合并请求事件。

您当前的GitLab-ci.yml将在每次提交、合并请求、计划和手动触发的管道中运行您的作业。

https://docs.gitlab.com/ee/ci/yaml/#workflowrules

dotnet:
  script: "echo This builds!"
  stage: build
  rules:
    - if: '$CI_BUILD_REF_NAME != "master" && $CI_PIPELINE_SOURCE == "push" || $CI_PIPELINE_SOURCE == "merge_request_event"'

production:
  script: "echo This deploys!"
  stage: deploy
  rules:
    - if: '$CI_PIPELINE_SOURCE == "push" && $CI_BUILD_REF_NAME == "master"'

这篇关于合并请求合并时,GitLab运行管道作业的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆