0

我一直在使用以下.travis.yml文件为我的项目配置 Travis CI。

language: c
compiler:
  - clang
  - gcc
env:
  - memcheck=yes optimize=yes
  - memcheck=yes optimize=no
  - memcheck=no optimize=yes
  - memcheck=no optimize=no
install: sudo make install
script: make test

我现在正在尝试将 Travis 与 Coverity 集成,如此所述。但是,我创建的 YAML 文件格式不正确。

language: c
compiler:
  - clang
  - gcc
env:
  global:
    - secure: someLongTokenHere
  - memcheck=yes optimize=yes
  - memcheck=yes optimize=no
  - memcheck=no optimize=yes
  - memcheck=no optimize=no
addons:
  coverity_scan:
    project:
      name: standage/AEGeAn
      description: Build submitted via Travis CI
    notification_email: daniel.standage@gmail.com
    build_command_prepend: make clean
    build_command: make test
    branch_pattern: covscan
install: sudo make install
script: make test

问题出在env方块上。如何env::global::secure按照 Coverity 的要求定义变量,但仍然像以前一样定义我的构建矩阵,全部在有效的 YAML中?

4

1 回答 1

0

更多的谷歌搜索终于发现了一些有用的东西:查看这条推文和其中的链接。

事实证明,env::matrix如果您需要env::global用于 Coverity Scan 配置,您可以使用它来定义构建矩阵。这是有效的 YAML(至少由 Travis 的解析器确定)并解决了上述配置问题。

language: c
compiler:
  - clang
  - gcc
env:
  global:
    - secure: someLongTokenHere
  matrix:
    - memcheck=yes optimize=yes
    - memcheck=yes optimize=no
    - memcheck=no optimize=yes
    - memcheck=no optimize=no
addons:
  coverity_scan:
    project:
      name: standage/AEGeAn
      description: Build submitted via Travis CI
    notification_email: daniel.standage@gmail.com
    build_command_prepend: make clean
    build_command: make test
    branch_pattern: covscan
install: sudo make install
script: make test
于 2015-03-07T01:46:52.663 回答