IF / ELSE语句在.yml文件中

时间:2014-03-14 07:03:12

标签: travis-ci

有没有办法在IF文件中使用ELSE / .yml

我想定义env变量if 拉取请求。

像这样的想法:

env:
  matrix:
    if ($TRAVIS_PULL_REQUEST) {
      - BROWSER='chrome_linux'    BUILD='default'
      - BROWSER='chrome_linux'    BUILD='nocompat'
      - BROWSER='firefox_linux'    BUILD='default'
      - BROWSER='firefox_linux'   BUILD='nocompat'
   }
   else {
     - BROWSER='phantomjs'    BUILD='default'
   }

这可能吗?

1 个答案:

答案 0 :(得分:5)

我不认为这种特殊情况会起作用。 TRAVIS_PULL_REQUEST是在构建工作者上定义的,而构建矩阵必须在将作业交给工作人员之前构建。

我建议编写一个包含TRAVIS_PULL_REQUEST的包装脚本并正确设置环境变量,或者在before_install中执行类似的操作:

[ "${TRAVIS_PULL_REQUEST}" != "false" ] && BROWSER='chrome_linux' BUILD='default' || true