如何在Travis CI上的一个项目中运行Node.js和Ruby测试

时间:2015-07-05 21:26:34

标签: ruby node.js rspec mocha travis-ci

我有一个包含多个组件的repo,其中大部分是JavaScript(Node.js),另一个是Ruby(Ruby on Rails)。我想要一个.travis.yml文件触发一个构建,该构建运行每个组件的所有测试。根据{{​​3}},现在暂时没有官方支持。

我的目录结构如下所示:

. ├── buildserver ├── core ├── extensions ├── webapp ├── Vagrantfile ├── package.json ├── .travis.yml └── Makefile

我希望能够运行特定版本的Ruby(2.2.2)和Node.js(0.12.2)。我已经有make目标,因此make test会在每个子目录中运行相应的测试套件。

1 个答案:

答案 0 :(得分:16)

事实证明,在Travis CI上运行隔离测试套件的每个VM都附带Node.js and Ruby pre-installed。默认情况下,您获得Ruby 1.9.3和Node.js 0.12.2(但随着Travis团队更新其环境可能会发生变化),因此即使您只能在{{1}中指定一种语言(例如language: Ruby)您仍然可以在Travis CI VM上运行Ruby和Node.js程序。

我决定使用Node.js语言设置并安装适当的Ruby版本(但我可以做相反的效果)。

这是我的.travis.yml配置文件:

.travis.yml