从Gitlab问题

时间:2016-09-16 09:45:26

标签: gitlab gitlab-ci

我在gitlab.com和问题跟踪器上使用Gitlab。 每次遇到问题时,我都会在问题内的按钮上创建一个新分支,但这会触发CI中的新构建(管道)。 我不想要这个,因为这个分支来自master并且不需要构建。

我怎样才能实现这一目标?这是gitlab-ci.yml修改还是与存储库相关的配置?

2 个答案:

答案 0 :(得分:0)

您可以通过onlyexcept参数定义构建的特定步骤将在哪些分支中运行:https://docs.gitlab.com/ee/ci/yaml/#only-and-except-complex

例如,在除分支分支之外的所有分支中运行java build:

java-build:
  stage: build
  except:
   - /^issue-.*$/
  script:
    - mvn -U -e install
  image: maven:3.5-jdk-8

仅将构建限制为master和release分支:

java-build:
  stage: build
  only:
    - master
    - /^RELEASE-.*$/
  script:
    - mvn -U -e install
  image: maven:3.5-jdk-8

答案 1 :(得分:0)

基于Commit消息,我们可以避免在GitLab CI / CD管道上为新创建的分支构建

Build Branch(master):
  stage: build
  only:
    refs:
      - master
    variables:
      - $CI_COMMIT_MESSAGE =~ /^\[master\].*$/
  script:
    - echo "master branch"
  #  - sleep 60 | echo "hello master"
  # when: delayed
  # start_in: 3 minutes
  interruptible: true

Build Branch(release):
  stage: build
  only:
    refs:
      - /^build_.*$/
    variables:
      - $CI_COMMIT_MESSAGE =~ /^\[build\].*$/
  script:
    - echo "release branch"
  #  - sleep 60 | echo "hello release"
  # when: delayed
  # start_in: 3 minutes
  interruptible: true

当提交消息以[master]或[build]开头时,分支将触发。