是否可以设置Travis来运行多种语言的testing?
我有一个rails项目,并通过Karma为我的JavaScripttesting( Jasmine )运行testing
.travis.yml文件
language: ruby rvm: - 2.0.0 script: - RAILS_ENV=test bundle exec rake --trace db:migrate test - karma start --single-run --browsers PhantomJS test/karma/config/unit.js
特拉维斯没有说它找不到业力。 有没有办法将node_js定义为另一种语言,并在构build虚拟机上安装业务?
在Travisconfiguration文件上还不可能有几种语言。
另一方面,所有的环境都运行node.js。 以下脚本可以做到这一点:
language: ruby rvm: - 2.0.0 before_script: - npm install karma script: - RAILS_ENV=test bundle exec rake --trace db:migrate test - karma start --single-run --browsers PhantomJS test/karma/config/unit.js
在Google群组的旧线程中find帮助
K-Yo的回答让我朝着正确的方向前进,但还远远没有取得成功。 这是我需要的:
首先在我的.travis.yml中:
language: ruby rvm: - 2.1.1 before_script: - psql -c 'create database spokenvote_test;' -U postgres - cp config/database.travis.yml config/database.yml - rake db:test_prep - npm install karma - npm install karma-jasmine - npm install karma-coverage - npm install karma-phantomjs-launcher - npm install karma-coffee-preprocessor script: - bundle exec rspec spec # basic for ruby - node_modules/karma/bin/karma start config/karma.conf.js --single-run --browsers PhantomJS
然后我也把这个代码放在我的package.json中,虽然我不确定是否需要:
"devDependencies": { "karma": "~0.12", "karma-jasmine": "~0.2", "karma-coverage": "~0.2.6", "karma-phantomjs-launcher": "~0.1.4", "karma-coffee-preprocessor": "~0.2.1" },
最后,我了解到Travis是区分大小写的,所以:
'bower_components/jquery/dist/jquery.min.js',
在我的karma.conf.js需要是:
'bower_components/jQuery/dist/jquery.min.js',
当.travis.yml
的language
键被设置为node
,Travis将在构build开始时运行nvm install 0.12
。 同样,对于Ruby项目,Travis将在构build开始时运行rvm use 2.2.2 --install --binary --fuzzy
。
我已经成功地在Bash构build中运行这两个命令