merge MR 时 Gitlab CI 运行作业

标签 git continuous-integration gitlab gitlab-ci

我一直在查看 gitlab CI 文档,但在 merge 分支时找不到有关如何运行作业的任何信息。
假设我有一个 MR,其源分支是 feature-1我正在将它 merge 到 master .
merge 分支后,我希望运行一项作业。这是我尝试过的:

after_merge:
  stage: after_merge
  image: my_image
  only:
    - master
    - merge_requests
  script:
    - ls
    # more of the script
这个作业在我创建 MR 时运行,但是当我 merge 这个 MR 时,master 没有发生任何事情,所以我不确定它为什么运行。
我需要的是在我 merge 代码后运行这个工作,我一直在审查这个 https://docs.gitlab.com/ee/ci/yaml/#onlyexcept-basic而这个 https://docs.gitlab.com/ee/ci/merge_request_pipelines/index.html但想不通。

最佳答案

当触发以下两个触发器之一时,您的管道将运行:

  • 您打开 merge 请求(MR 的源分支和目标分支的 独立 )。
  • 您直接 push 或 merge 到 master分支。
  • 关于 merge MR 时 Gitlab CI 运行作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56564690/

    相关文章:

    Azure DevOp - 设置屏幕分辨率交互模式

    jenkins - 在作业之间共享配置

    gitlab - 如何在运行 WHM 的 CentOS 6 上安装 GitLab?

    git - 如何禁用 git merge 提示消息

    git - 如何关闭一个 Git 分支?

    Git:git@gitlab.com:当我按下 "synchronize changes"按钮时权限被拒绝(公钥)

    gitlab - 如何在gitlab中创建项目访问 token ?

    Git 日志不显示任何内容

    java - Jenkins 在构建后操作后运行构建后步骤

    docker - 当用户 linux docker 镜像没有问题,但 windows docker 镜像失败时