首页 文章

仅限特定分支上的GitLab CI管道

提问于
浏览
9

我正在尝试实施GitLab CI Pipelines来构建和部署Angular应用程序 . 在我们的项目中,我们有两个一般分支: master (仅限 生产环境 )和 develop . 对于开发,我们从 develop 分支创建 feature/some-feature 分支 . 开发完成后,我们创建从 feature/some-featuredevelop 的合并请求 . 当合并请求被批准并合并到 develop 分支时,我想运行管道以构建应用程序并在某些环境中部署构建 .

我在.gitlab-ci.yml中使用以下设置:

image: node:7.5-configured

stages:
    - build
    - deploy

build_job:
    stage: build
    only:
        - develop
    script:
        - /bin/bash <some script here>

...

问题是每次推入任何 feature/some-feature 分支时都会执行Pipeline . 我的设置有什么问题?当直接执行 develop 分支时,如何强制执行管道 only

Solution 这是我的错误 - 我在 develop 分支和 feature/some-feature 分支中有两个不同的.gitlab-ci.yml文件 .

2 回答

  • 3

    这是我的错误 - 我在 develop 分支和 feature/some-feature 分支中有两个不同的.gitlab-ci.yml文件,这就是为所有分支执行Pipeline的原因 .

  • 4

    我建议移动

    only:
        - develop
    

    脚本后标记:tag

相关问题