2015-07-05 18 views
5

üzerinde bir proje içinde node.js ve Yakut testler, JavaScript (node.js) ve Ruby ile yazılmış bir (Ruby on) içinde çoğu. Her bir bileşen için tüm testleri çalıştıran bir yapıyı tetikleyen bir .travis.yml dosyasına sahip olmak isterim. this Travis CI Google Group thread'a göre, şimdilik bunun için resmi bir destek yok.Ben birden fazla bileşen içeren bir repo var nasıl Travis CI

Benim dizin yapısı aşağıdaki gibidir:

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

Ben Ruby (2.2.2) ve node.js (0.12.2) belirli sürümlerini çalıştırmak isterler. Zaten her alt dizinde bir make hedef, bu yüzden make test çalışır uygun test kümesine sahip.

cevap

15

O Travis CI üzerinde izole testi odasısahibi her VM, Node.js and Ruby pre-installed ile gelir çıkıyor. Varsayılan olarak Ruby'nin 1.9.3 ve node.js 0.12.2 (ancak Travis takım olarak değişebileceğini çevrelerini günceller), yalnızca .travis.yml dosyada bir dili (örneğin language: Ruby) belirtmek böylece olsa bile, yine de çalıştırabilirsiniz olsun Travis CI VM'de hem Ruby hem de Node.js programları.

Ben node.js dil kurulumu ile gitmek ve uygun Yakut sürümünü yüklemek için karar (ama aynı etkiye sahip tersini yapmış olabilir).

language: node_js 
node_js: 
    - 0.12.2 
addons: 
    postgresql: "9.4" 
before_install: 
    - rvm install 2.2.2 
install: 
    # run whatever you have to do here. I have a Makefile that lets you install 
    # all Node.js-related or Ruby-related dependencies as one step. 
    - make npm 
    - make bundler 
before_script: 
    # My Rails app lives in a subdirectory. I want to make sure that 
    # my database is ready before I start running RSpec tests 
    - psql -c 'create database test_db;' -U postgres 
    # I use separate database.yml config for Travis CI 
    - cp webapp/config/database.travis.yml webapp/config/database.yml 
script: 
    # `test` target executes `bundle exec rspec spec` and `npm run test` 
    # in all appropriate subdirectories 
    - make test 
: Burada

benim .travis.yml yapılandırma dosyasıdır
İlgili konular