Skip to content

Commit bbc29c0

Browse files
committed
chore: Fix Travis builds using appraisal gem
This commit fixes the Travis builds by using different gemfiles for different versions of Ruby and some gem dependencies (notably rack 1.x and 2.x). These gemfiles are managed by the `appraisal` gem. It also switches our build matrix from testing with `jruby-head` to testing with `jruby-9.0.5.0`, since `jruby-head` has some issues with `bundler` not being installed. In addition to these changes, I have also enabled Travis's caching feature for Bundler. Hopefully this should speed up our test runs once the caches are primed.
1 parent 59eeeb1 commit bbc29c0

File tree

6 files changed

+86
-23
lines changed

6 files changed

+86
-23
lines changed

.travis.yml

Lines changed: 41 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,49 @@
11
env:
22
global:
33
- JRUBY_OPTS="$JRUBY_OPTS --debug"
4+
5+
sudo: false
46
language: ruby
5-
script: bundle exec rspec
6-
before_install: gem update bundler
7+
cache: bundler
8+
9+
before_install:
10+
- gem update bundler
11+
12+
before_script:
13+
- bundle update
14+
15+
script:
16+
- bundle exec rspec
17+
18+
rvm:
19+
- 1.9.3
20+
- jruby-19mode
21+
- 2.0.0
22+
- 2.1.10
23+
- 2.2.2
24+
- 2.3.1
25+
- jruby-9.0.5.0
26+
- ruby-head
27+
28+
gemfile:
29+
- gemfiles/rack_1.gemfile
30+
- gemfiles/rack_2.gemfile
31+
732
matrix:
8-
include:
9-
- rvm: 1.9.3
10-
gemfile: Gemfile
11-
- rvm: 2.0.0
12-
gemfile: Gemfile
13-
- rvm: 2.1
14-
gemfile: Gemfile
15-
- rvm: 2.2
16-
gemfile: Gemfile
17-
- rvm: 2.3.0
18-
gemfile: Gemfile
19-
- rvm: jruby-19mode
20-
gemfile: Gemfile
21-
- rvm: jruby-head
22-
gemfile: Gemfile
23-
- rvm: rbx-2
24-
gemfile: Gemfile
25-
- rvm: ruby-head
26-
gemfile: Gemfile
2733
allow_failures:
28-
- rvm: jruby-head
2934
- rvm: ruby-head
35+
3036
fast_finish: true
31-
sudo: false
37+
38+
exclude:
39+
- rvm: 1.9.3
40+
gemfile: gemfiles/rack_2.gemfile
41+
42+
- rvm: jruby-19mode
43+
gemfile: gemfiles/rack_2.gemfile
44+
45+
- rvm: 2.0.0
46+
gemfile: gemfiles/rack_2.gemfile
47+
48+
- rvm: 2.1.10
49+
gemfile: gemfiles/rack_2.gemfile

Appraisals

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
appraise 'rack-1' do
2+
gem 'rack', '~> 1.x'
3+
end
4+
5+
appraise 'rack-2' do
6+
gem 'rack', '~> 2.x'
7+
end

Gemfile

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,14 @@ source 'https://rubygems.org'
22

33
group :test do
44
gem 'coveralls', '~> 0.8', '>= 0.8.13', require: false
5+
6+
# Lock coveralls dependencies to lower versions to work with older rubies
7+
gem 'json', '~> 1.8'
8+
gem 'tins', '~> 1.6.0'
9+
510
gem 'mime-types', '< 3'
611
end
712

13+
gem 'appraisal'
14+
815
gemspec

gemfiles/rack_1.gemfile

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# This file was generated by Appraisal
2+
3+
source "https://rubygems.org"
4+
5+
gem "appraisal"
6+
gem "rack", "~> 1.x"
7+
8+
group :test do
9+
gem "coveralls", "~> 0.8", ">= 0.8.13", :require => false
10+
gem "json", "~> 1.8"
11+
gem "tins", "~> 1.6.0"
12+
gem "mime-types", "< 3"
13+
end
14+
15+
gemspec :path => "../"

gemfiles/rack_2.gemfile

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# This file was generated by Appraisal
2+
3+
source "https://rubygems.org"
4+
5+
gem "appraisal"
6+
gem "rack", "~> 2.x"
7+
8+
group :test do
9+
gem "coveralls", "~> 0.8", ">= 0.8.13", :require => false
10+
gem "json", "~> 1.8"
11+
gem "tins", "~> 1.6.0"
12+
gem "mime-types", "< 3"
13+
end
14+
15+
gemspec :path => "../"

omniauth-saml.gemspec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ Gem::Specification.new do |gem|
1414
gem.add_runtime_dependency 'omniauth', '~> 1.3'
1515
gem.add_runtime_dependency 'ruby-saml', '~> 1.3'
1616

17+
gem.add_development_dependency 'rake', '>= 10', '< 12'
1718
gem.add_development_dependency 'rspec', '~>3.4'
1819
gem.add_development_dependency 'simplecov', '~> 0.11'
1920
gem.add_development_dependency 'rack-test', '~> 0.6', '>= 0.6.3'

0 commit comments

Comments
 (0)