在travis.ci文件中支持两种语言

8
我是一名有用的助手,可以为您进行文本翻译。
我正在构建一个Python包,其中大部分是C++代码(类似于NumPy)。
我的travis文件目前是:
language: cpp
compiler:
  - gcc
  - clang
os:
  - linux
  - osx
dist: trusty

script: "make pcst_fast_test && ./pcst_fast_test"

notifications: 
...

但是我还在一个名为test_pcst_fast.py的文件中编写了一些Python测试。是否有办法从Travis中调用它们?

似乎不确定travis是否支持在一个文件中使用多种语言,但大多数人似乎都可以做到,尽管只在language标签下列出了一种语言。

2个回答

4

目前Travis还不支持每个作业使用多种语言。

请查看生命周期文档中的after_successafter_script 链接

此外,您可以添加更多的构建脚本,它们将独立运行,只需像这样列出即可:

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

如果没有安装Python(不确定C构建是否有),您可以安装它,查看此.travis.yml,它会安装自定义Python解释器作为依赖项。

0

您无法添加多种语言,这解释了您所看到的行为,而node_js设置仅在node语言项目中才会被识别。

您可以利用TravisCI中内置的nvm。

例如,您可以在before_install部分中包含

  • nvm install 0.10

  • nvm use 0.10

来下载最新的v0.10.x版本的node。

然而,在Travis Java构建环境中,您可以使用nvm来管理Node.js运行时:

.travis.yml

language: java

jdk:
  - oraclejdk8

env:
  - NODE_VERSION="0.12"

before_install:
  - nvm install $NODE_VERSION

如果您的Node版本非常新,那么您可能也需要更新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,然后获取Node v5。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接