2017-03-23 97 views
6

我建立一個Python包,其中大部分是C++代碼(認爲numpy的)支持兩種語言在travis.ci文件

我特拉維斯文件是當前

language: cpp 
compiler: 
    - gcc 
    - clang 
os: 
    - linux 
    - osx 
dist: trusty 

script: "make pcst_fast_test && ./pcst_fast_test" 

notifications: 
... 

但我也寫了一些python在一個名爲test_pcst_fast.py的文件中測試。有沒有辦法從travis中調用這些方法?

它似乎對whether travis supports multiple languages in one file不明確,但似乎大多數人都會這樣做,儘管只在language標籤下列出了一種語言。

回答

2

Travis目前還不支持多種語言。

看類別after_successafter_scriptin the Travis build lifecycle docs

此外,您還可以添加更多的生成腳本,它們將獨立運行,只列出他們是這樣的:

script: 
    - "make pcst_fast_test && ./pcst_fast_test" 
    - "./test_pcst_fast.py" 

如果沒有蟒蛇裝(不關於c的構建),你可以安裝它,看看這個.travis.yml,它將自定義python解釋器作爲依賴項安裝。

0

您不能添加多種語言,這解釋了您所看到的行爲,並且只能在節點語言項目中識別node_js設置。

你可以做的是利用TravisCI中的納入nvm。

例如,您可以包括

  • NVM安裝0.10

  • NVM使用0.10

在before_install部分,下載最新版本v0.10.x節點。

然而,

在一個特拉維斯Java構建的環境,你可以用NVM管理Node.js的運行時間:

.travis.yml

language: java 

jdk: 
    - oraclejdk8 

env: 
    - NODE_VERSION="0.12" 

before_install: 
    - nvm install $NODE_VERSION 

如果您的節點版本是最近的,你可能還得更新nvm。

要更新NVM,在您的.travis.yml這樣寫:

before_install: 
    - wget https://raw.githubusercontent.com/creationix/nvm/v0.31.0/nvm.sh -O ~/.nvm/nvm.sh 
    - source ~/.nvm/nvm.sh 
    - nvm install 5 # for Node v5 
    - node --version 

上面的例子展示瞭如何首先更新到NVM v0.31,以然後獲取節點V5。