From 88073f6a1274abe6c1602a3c175b2e94d9d0456a Mon Sep 17 00:00:00 2001
From: Daan Davidsz <daan@roqua.nl>
Date: Tue, 14 Aug 2018 10:02:41 +0000
Subject: [PATCH] Add Rails 5.1 and Ruby 2.4 tests

---
 .gitlab-ci.yml           | 44 ++++++++++++++++++++++++++++++++--------
 Appraisals               |  4 ++++
 gemfiles/rails41.gemfile |  2 ++
 gemfiles/rails42.gemfile |  2 ++
 gemfiles/rails50.gemfile |  2 ++
 gemfiles/rails51.gemfile | 20 ++++++++++++++++++
 6 files changed, 65 insertions(+), 9 deletions(-)
 create mode 100644 gemfiles/rails51.gemfile

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d0e00bc..7d18e2c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,26 +1,52 @@
-image: "registry.roqua.nl/roqua/roqua-build-images:ruby-2.3-rails-base-test"
-
 variables:
   RAILS_ENV: "test"
 
-cache:
-  paths:
-    - .gems
-
 before_script:
   - export BUNDLE_PATH=$CI_PROJECT_DIR/.gems
   - bundle --jobs 2 --retry 3
   - bundle exec appraisal
   - bundle --jobs 2 --retry 3
 
-rails_41:
+.ruby_23: &ruby_23
+  image: registry.roqua.nl/roqua/roqua-build-images:ruby-2.3-rails-base-test
+  cache:
+    key: ruby_23
+    paths:
+      - .gems
+
+.ruby_24: &ruby_24
+  image: registry.roqua.nl/roqua/roqua-build-images:ruby-2.4-rails-base-test
+  cache:
+    key: ruby_24
+    paths:
+      - .gems
+
+rails_41_ruby_23:
+  <<: *ruby_23
   script:
     - bundle exec appraisal rails41 bundle exec rspec
 
-rails_42:
+rails_42_ruby_23:
+  <<: *ruby_23
   script:
     - bundle exec appraisal rails42 bundle exec rspec
 
-rails_50:
+rails_50_ruby_23:
+  <<: *ruby_23
   script:
     - bundle exec appraisal rails50 bundle exec rspec
+
+rails_50_ruby_24:
+  <<: *ruby_24
+  script:
+    - bundle exec appraisal rails50 bundle exec rspec
+
+rails_51_ruby_23:
+  <<: *ruby_23
+  script:
+    - bundle exec appraisal rails51 bundle exec rspec
+
+rails_51_ruby_24:
+  <<: *ruby_24
+  script:
+    - bundle exec appraisal rails51 bundle exec rspec
diff --git a/Appraisals b/Appraisals
index ea9932f..ccca3a0 100644
--- a/Appraisals
+++ b/Appraisals
@@ -9,3 +9,7 @@ end
 appraise "rails50" do
   gem "activesupport", "5.0"
 end
+
+appraise "rails51" do
+  gem "activesupport", "5.1"
+end
diff --git a/gemfiles/rails41.gemfile b/gemfiles/rails41.gemfile
index ae5cfb9..dfe8d29 100644
--- a/gemfiles/rails41.gemfile
+++ b/gemfiles/rails41.gemfile
@@ -3,11 +3,13 @@
 source "https://rubygems.org"
 
 gem "appraisal"
+gem "roqua_styleguide", :git => "https://gitlab.roqua.nl/roqua/styleguide.git"
 gem "activesupport", "4.1"
 
 group :test do
   gem "actionpack", ">= 4.0"
   gem "active_interaction", "~> 3.0"
+  gem "appsignal"
   gem "combustion", "~> 0.5.2"
   gem "guard-rspec", "~> 4.2.6"
   gem "responders"
diff --git a/gemfiles/rails42.gemfile b/gemfiles/rails42.gemfile
index 0474829..b010e36 100644
--- a/gemfiles/rails42.gemfile
+++ b/gemfiles/rails42.gemfile
@@ -3,11 +3,13 @@
 source "https://rubygems.org"
 
 gem "appraisal"
+gem "roqua_styleguide", :git => "https://gitlab.roqua.nl/roqua/styleguide.git"
 gem "activesupport", "4.2"
 
 group :test do
   gem "actionpack", ">= 4.0"
   gem "active_interaction", "~> 3.0"
+  gem "appsignal"
   gem "combustion", "~> 0.5.2"
   gem "guard-rspec", "~> 4.2.6"
   gem "responders"
diff --git a/gemfiles/rails50.gemfile b/gemfiles/rails50.gemfile
index 60cb8ac..c8d09da 100644
--- a/gemfiles/rails50.gemfile
+++ b/gemfiles/rails50.gemfile
@@ -3,11 +3,13 @@
 source "https://rubygems.org"
 
 gem "appraisal"
+gem "roqua_styleguide", :git => "https://gitlab.roqua.nl/roqua/styleguide.git"
 gem "activesupport", "5.0"
 
 group :test do
   gem "actionpack", ">= 4.0"
   gem "active_interaction", "~> 3.0"
+  gem "appsignal"
   gem "combustion", "~> 0.5.2"
   gem "guard-rspec", "~> 4.2.6"
   gem "responders"
diff --git a/gemfiles/rails51.gemfile b/gemfiles/rails51.gemfile
new file mode 100644
index 0000000..c4e6b8a
--- /dev/null
+++ b/gemfiles/rails51.gemfile
@@ -0,0 +1,20 @@
+# This file was generated by Appraisal
+
+source "https://rubygems.org"
+
+gem "appraisal"
+gem "roqua_styleguide", :git => "https://gitlab.roqua.nl/roqua/styleguide.git"
+gem "activesupport", "5.1"
+
+group :test do
+  gem "actionpack", ">= 4.0"
+  gem "active_interaction", "~> 3.0"
+  gem "appsignal"
+  gem "combustion", "~> 0.5.2"
+  gem "guard-rspec", "~> 4.2.6"
+  gem "responders"
+  gem "rspec-instrumentation-matcher"
+  gem "rspec-rails"
+end
+
+gemspec :path => "../"
-- 
GitLab