Travis CI:构建矩阵项目中的分支过滤器

问题描述:

我们想知道是否有任何方法将过滤器添加到Travis矩阵项目中。在我们的特殊情况下,我们希望只在特定分支上运行某些工作。Travis CI:构建矩阵项目中的分支过滤器

下面的例子将是配置此方案的理想方式,但它似乎不工作:

matrix: 
    include: 
    - env: BUILD_TYPE=release 
     branches: 
     only: 
      - master 
    - env: BUILD_TYPE=ci 
     branches: 
     only: 
      - develop 

作为一种变通方法,我们可以从构建脚本立即退出选中相应的ENV变种(TRAVIS_BRANCH),但与启动奴隶机器并且克隆回购需要相当长的时间是非常不理想的。

+0

实现这一目标是每个分支'.travis.yml'的选项? –

+0

不确定你的意思。你能详细说明一下吗? – tamasf

+0

每个分支都可以拥有自己的'.travis.yml',它看起来像适合您的需求。 –

现在,您可以用测试版功能Conditional Build Stages

jobs: 
    include: 
    - stage: release 
     if: branch = master 
     env: BUILD_TYPE=release 
    - stage: ci 
     if: branch = develop 
     env: BUILD_TYPE=ci