3

私は現在、自分の Rails アプリに TravisCI を適切に使用しようとしていますが、直面している問題に少し行き詰まっています。

私の .travis.yml で

私はこれを持っています:

language: ruby
before_install:
  - gem install bundler
rvm:
  - 2.0.0
env:
  - DB=sqlite
  - DB=mysql
  - DB=postgresql
script:
  - rake db:migrate
  - rake db:test:prepare

そして、私の Gemfile では、Ruby のバージョンを正確に指定しています。ruby "2.0.0"

この .travis.yml を使用すると、テストが失敗して次のように言われます。

$ gem --バージョン

2.0.3

$ bundle install --deployment

Ruby のバージョンは 1.9.3 ですが、Gemfile は 2.0.0 を指定しています

しかし、私.travis.ymlがこのように変更すると:

language: ruby
before_install:
  - gem install bundler
rvm:
  - 1.9.3
  - 2.0.0
env:
  - DB=sqlite
  - DB=mysql
  - DB=postgresql
script:
  - rake db:migrate
  - rake db:test:prepare

Travis CI はテストを 2 回 (1.9.3 バージョンで 1 回、2.0.0 バージョンで 1 回) 実行し、1.9.3 バージョンで失敗し、2.0.0 バージョンで成功します。

2.0.0 の ruby​​ バージョンでテストに合格するには、何が間違っているのでしょうか?

心から奪う

4

2 に答える 2

0

.travis.ymlが含まれていても、同じエラーメッセージで同様の問題がありました。私にとってうまくいった解決策は、生成さGemfile.lockれたものもリポジトリに含めることでした。

于 2016-07-05T18:46:52.160 に答える