我正在尝试设置Travis和CodeClimate集成,但在设置测试覆盖率配置后,我的构建开始失败。
我的.travis.yml
文件包含类似
language: ruby
rvm:
- 2.5.0
branches:
only:
- master
services:
- postgresql
env:
- RAILS_ENV=test
global:
- DB=postgresql
- CC_TEST_REPORTER_ID=<my_cc_id>
bundler_args: --without production
script:
- bundle exec rake db:schema:load
- bundle exec rake db:test:prepare
- bundle exec rake spec
before_script:
- cp config/database.travis.yml config/database.yml
- psql -c 'create database my_db_test;' -U postgres
- curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./test_reporter
- chmod +x ./test_reporter
- ./test_reporter before-build RAILS_ENV=test
after_script:
- ./test_reporter after-build --exit-code $TRAVIS_TEST_RESULT
在测试覆盖率集成之前,输出显示这些行,就在bundle install
$ psql -c 'create database my_db_test;' -U postgres
$ cp config/database.travis.yml config/database.yml
但之后,输出会在bundle install
$ bundle exec rake
/home/travis/.rvm/rubies/ruby-2.5.0/bin/ruby -I/home/travis/build/username/repo/vendor/bundle/ruby/2.5.0/gems/rspec-core-3.7.1/lib:/home/travis/build/username/repo/vendor/bundle/ruby/2.5.0/gems/rspec-support-3.7.1/lib /home/travis/build/username/repo/vendor/bundle/ruby/2.5.0/gems/rspec-core-3.7.1/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb
bundle exec rake
在我的命令之前运行,以覆盖database.yml
并打破构建。
有人可以帮我理解这个命令是什么,为什么要打电话给他?
答案 0 :(得分:0)
我已经解决了这个问题,失败是由我的var配置引起的。配置它们的正确方法是:
env:
global:
- RAILS_ENV=test
- DB=postgresql
- CC_TEST_REPORTER_ID=<my_cc_id>