Skip to content

Commit 588937b

Browse files
committed
Simplify the GitHub actions config using matrix
1 parent 44c6168 commit 588937b

19 files changed

+48
-1573
lines changed

.github/workflows/ci.yml

Lines changed: 19 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,36 +6,33 @@ jobs:
66
fail-fast: false
77
matrix:
88
ruby-version:
9+
- "3.1"
910
- "3.2"
1011
- "3.3"
11-
gemfile:
12-
- Gemfile
13-
- gemfiles/rails_7_0_propshaft.gemfile
14-
- gemfiles/rails_7_1_propshaft.gemfile
15-
- gemfiles/rails_7_2_propshaft.gemfile
16-
- gemfiles/rails_8_0_propshaft.gemfile
17-
- gemfiles/rails_main_propshaft.gemfile
18-
- gemfiles/rails_6_1_sprockets.gemfile
19-
- gemfiles/rails_7_0_sprockets.gemfile
20-
- gemfiles/rails_7_1_sprockets.gemfile
21-
- gemfiles/rails_7_2_sprockets.gemfile
22-
- gemfiles/rails_8_0_sprockets.gemfile
23-
- gemfiles/rails_main_sprockets.gemfile
24-
include:
12+
- "3.4"
13+
rails-version:
14+
- "6.1"
15+
- "7.0"
16+
- "7.1"
17+
- "7.2"
18+
- "8.0"
19+
- "main"
20+
assets-pipeline:
21+
- sprockets
22+
- propshaft
23+
exclude:
24+
- rails-version: "6.1"
25+
assets-pipeline: "propshaft"
2526
- ruby-version: "3.1"
26-
gemfile: gemfiles/rails_7_0_propshaft.gemfile
27+
rails-version: "8.0"
2728
- ruby-version: "3.1"
28-
gemfile: gemfiles/rails_7_1_propshaft.gemfile
29-
- ruby-version: "3.1"
30-
gemfile: gemfiles/rails_7_0_sprockets.gemfile
31-
- ruby-version: "3.1"
32-
gemfile: gemfiles/rails_7_1_sprockets.gemfile
29+
rails-version: "main"
3330

34-
name: ${{ format('Tests (Ruby {0}, {1})', matrix.ruby-version, matrix.gemfile) }}
31+
name: ${{ format('Tests (Ruby {0}, Rails {1}, {2})', matrix.ruby-version, matrix.rails-version, matrix.assets-pipeline) }}
3532
runs-on: ubuntu-latest
3633

3734
env:
38-
BUNDLE_GEMFILE: ${{ matrix.gemfile }}
35+
BUNDLE_GEMFILE: gemfiles/rails_${{ matrix.rails-version }}_${{ matrix.assets-pipeline }}.gemfile
3936

4037
steps:
4138
- uses: actions/checkout@v4

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,4 @@
2222
*.gem
2323

2424
# Ignore Gemfile.lock files for Rails main branch.
25-
/gemfiles/rails_main*.gemfile.lock
25+
/gemfiles/*.lock

Appraisals

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,49 @@
1-
appraise "rails_6_1_sprockets" do
1+
appraise "rails_6.1_sprockets" do
22
gem "rails", "~> 6.1.0"
3+
remove_gem "propshaft"
4+
gem "logger"
35
end
46

5-
appraise "rails_7_0_sprockets" do
6-
gem "rails", "~> 7.0.0"
7+
appraise "rails_7.0_sprockets" do
8+
gem "rails", github: "rails/rails", branch: "7-0-stable"
79
remove_gem "propshaft"
810
gem "sprockets-rails"
911
end
1012

11-
appraise "rails_7_0_propshaft" do
12-
gem "rails", "~> 7.0.0"
13+
appraise "rails_7.0_propshaft" do
14+
gem "rails", github: "rails/rails", branch: "7-0-stable"
1315
gem "propshaft"
1416
end
1517

16-
appraise "rails_7_1_sprockets" do
18+
appraise "rails_7.1_sprockets" do
1719
gem "rails", "~> 7.1.0"
1820
remove_gem "propshaft"
1921
gem "sprockets-rails"
2022
end
2123

22-
appraise "rails_7_1_propshaft" do
24+
appraise "rails_7.1_propshaft" do
2325
gem "rails", "~> 7.1.0"
2426
gem "propshaft"
2527
end
2628

27-
appraise "rails_8_0_sprockets" do
29+
appraise "rails_7.2_sprockets" do
30+
gem "rails", "~> 7.2.0"
31+
remove_gem "propshaft"
32+
gem "sprockets-rails"
33+
end
34+
35+
appraise "rails_7.2_propshaft" do
36+
gem "rails", "~> 7.2.0"
37+
gem "propshaft"
38+
end
39+
40+
appraise "rails_8.0_sprockets" do
2841
gem "rails", "~> 8.0.0"
2942
remove_gem "propshaft"
3043
gem "sprockets-rails"
3144
end
3245

33-
appraise "rails_8_0_propshaft" do
46+
appraise "rails_8.0_propshaft" do
3447
gem "rails", "~> 8.0.0"
3548
gem "propshaft"
3649
end

gemfiles/rails_6_1_sprockets.gemfile renamed to gemfiles/rails_6.1_sprockets.gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
source "https://rubygems.org"
44

55
gem "rails", "~> 6.1.0"
6-
gem "propshaft"
76
gem "sqlite3"
7+
gem "logger"
88

99
group :development do
1010
gem "appraisal"

gemfiles/rails_7_0_propshaft.gemfile renamed to gemfiles/rails_7.0_propshaft.gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
source "https://rubygems.org"
44

5-
gem "rails", "~> 7.0.0"
5+
gem "rails", branch: "7-0-stable", git: "https://github.com/rails/rails.git"
66
gem "propshaft"
77
gem "sqlite3"
88

gemfiles/rails_7_0_sprockets.gemfile renamed to gemfiles/rails_7.0_sprockets.gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
source "https://rubygems.org"
44

5-
gem "rails", "~> 7.0.0"
5+
gem "rails", branch: "7-0-stable", git: "https://github.com/rails/rails.git"
66
gem "sqlite3"
77
gem "sprockets-rails"
88

gemfiles/rails_7_2_propshaft.gemfile renamed to gemfiles/rails_7.2_propshaft.gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
source "https://rubygems.org"
44

55
gem "rails", "~> 7.2.0"
6-
gem "sqlite3", "~> 1.4"
76
gem "propshaft"
7+
gem "sqlite3"
88

99
group :development do
1010
gem "appraisal"

gemfiles/rails_7_2_sprockets.gemfile renamed to gemfiles/rails_7.2_sprockets.gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
source "https://rubygems.org"
44

55
gem "rails", "~> 7.2.0"
6-
gem "sqlite3", "~> 1.4"
6+
gem "sqlite3"
77
gem "sprockets-rails"
88

99
group :development do

0 commit comments

Comments
 (0)