2016-03-04 61 views
0

那麼如何配置這個travis ci文件,以便rails5 gemfile只測試/使用ruby 2.2.2? Activesupport 5需要ruby 2.2.2。如何配置travis,以便特定的gemfile只使用特定版本的ruby?

language: ruby 
env: 
    - CI=true 
before_script: 
    - "bundle exec rake db:prepare" 
rvm: 
    - 2.0.0 
    - 2.1.6 
    - 2.2.2 
gemfile: 
    - gemfiles/rails32.gemfile 
    - gemfiles/rails4.gemfile 
    - gemfiles/rails41.gemfile 
    - gemfiles/rails42.gemfile 
    - gemfiles/rails5beta.gemfile 
notifications: 
    recipients: 
    - [email protected] 
    - [email protected] 
+0

我不是恩非常確定它是否會工作,但bundler支持'ruby'關鍵字,所以你可以在你的gemfiles頂部做一些類似於ruby 2.2.2的東西。 –

回答

0

找到了答案 - 顯然,特拉維斯包括基質的選擇,讓您不與特定的Gemfile運行某些Ruby版本(或運行它們)

matrix: 
    exclude: 
    - rvm: 2.0.0 
     gemfile: Gemfile 
     env: DB=mongodb 
    - rvm: 2.0.0 
     gemfile: Gemfile 
     env: DB=redis 
    - rvm: 2.0.0 
     gemfile: Gemfile 
     env: DB=mysql 
2

您可以定義一個構建matrix像這樣:

language: ruby 
env: 
    - CI=true 
before_script: 
    - "bundle exec rake db:prepare" 
matrix: 
    include: 
    - rvm: 2.0.0 
     gemfile: 
     - gemfiles/rails32.gemfile 
     - gemfiles/rails4.gemfile 
     - gemfiles/rails41.gemfile 
     - gemfiles/rails42.gemfile 
    - rvm: 2.1.6 
     gemfile: 
     - gemfiles/rails32.gemfile 
     - gemfiles/rails4.gemfile 
     - gemfiles/rails41.gemfile 
     - gemfiles/rails42.gemfile 
    - rvm: 2.2.2 
     gemfile: 
     - gemfiles/rails32.gemfile 
     - gemfiles/rails4.gemfile 
     - gemfiles/rails41.gemfile 
     - gemfiles/rails42.gemfile 
     - gemfiles/rails5beta.gemfile 
notifications: 
    recipients: 
    - [email protected] 
    - [email protected] 

見文檔在:Travis CI - Customizing the Build - Build Matrix

相關問題