用于 C++ 的 Travis 始终忽略用于自定义测试的脚本

Travis for C++ always ignore script for customize testing

我一直在试验这个,花费了超过 25 次提交,在 .travis.yml 中只有很小的变化,但 travis 总是这样做:

  1. ./configure:如果我把 language: cpp 放在第一行。 travis 将忽略 .travis.yml 中写入的所有内容,并直接 ./configure && make && make test

    language: cpp
    
    addons:
      apt:
        sources:
        - ubuntu-sdk-team
    
    addons:
      apt:
        packages:
        - ubuntu-sdk
    
    before_script: ls
    
    script: qmake demo/QtGoodiesDemo/QtGoodiesDemo.pro && make
    
    sudo: false
    
  2. rake:如果我重新排序 language: cpp 的位置或删除它。至此,travis安装依赖成功(执行apt插件)

    addons:
      apt:
        sources:
        - ubuntu-sdk-team
    
    addons:
      apt:
        packages:
        - ubuntu-sdk
    
    before_script: ls
    
    script: qmake demo/QtGoodiesDemo/QtGoodiesDemo.pro && make
    
    language: cpp
    sudo: false
    

我已经阅读了文档并使用它告诉我的只是将我带到第 (1) 点问题。

我已经搜索过了,但没有人遇到这个问题,我想知道人们是怎么做到的。

(This is the link)

尝试 1

使用嵌套的 apt 源仍然让我遇到问题 (1) 并忽略自定义脚本 (https://travis-ci.org/imakin/QtGoodies/builds/85143452)。请注意,在问题 2 中,当调用 rake 时,它​​成功地安装了 ubuntu-sdk for Qt dependencies

language: cpp
sudo: false

addons:
  apt:
    sources:
      - ubuntu-sdk-team
    packages:
      - ubuntu-sdk

before_script: ls

script: qmake demo/QtGoodiesDemo/QtGoodiesDemo.pro && make

尝试 2

然后我尝试播放它并添加了配置文件。也拥有所有 rwxrwxrwx 权限。并推动它。但是travis还是再次执行到问题(1)。没有安装 Qt,甚至无法 运行 配置告诉它没有执行它的权限。尽管 before_script 也被忽略了,但我无法在测试过程中对其进行任何更改。这一次发生在 https://travis-ci.org/imakin/QtGoodies/builds/85146543

我认为您的 .travis.yml 文件无效并且无法正确解析,因此您默认使用 Ruby 语言。

你能尝试像这样合并两个 addons.apt 部分吗:

addons:
  apt:
    sources:
      - ubuntu-sdk-team
    packages:
      - ubuntu-sdk

希望对您有所帮助!

更新:事实证明 .travis.yml 文件以隐藏字符开头,阻止 Travis CI 正确解析它。