Skip to content

Commit c3eb71e

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

19 files changed

+54
-1576
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: 25 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,52 @@
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"
5+
gem "sqlite3", "~> 1.4"
36
end
47

5-
appraise "rails_7_0_sprockets" do
6-
gem "rails", "~> 7.0.0"
8+
appraise "rails_7.0_sprockets" do
9+
gem "rails", github: "rails/rails", branch: "7-0-stable"
710
remove_gem "propshaft"
811
gem "sprockets-rails"
12+
gem "sqlite3", "~> 1.4"
913
end
1014

11-
appraise "rails_7_0_propshaft" do
12-
gem "rails", "~> 7.0.0"
15+
appraise "rails_7.0_propshaft" do
16+
gem "rails", github: "rails/rails", branch: "7-0-stable"
1317
gem "propshaft"
18+
gem "sqlite3", "~> 1.4"
1419
end
1520

16-
appraise "rails_7_1_sprockets" do
21+
appraise "rails_7.1_sprockets" do
1722
gem "rails", "~> 7.1.0"
1823
remove_gem "propshaft"
1924
gem "sprockets-rails"
2025
end
2126

22-
appraise "rails_7_1_propshaft" do
27+
appraise "rails_7.1_propshaft" do
2328
gem "rails", "~> 7.1.0"
2429
gem "propshaft"
2530
end
2631

27-
appraise "rails_8_0_sprockets" do
32+
appraise "rails_7.2_sprockets" do
33+
gem "rails", "~> 7.2.0"
34+
remove_gem "propshaft"
35+
gem "sprockets-rails"
36+
end
37+
38+
appraise "rails_7.2_propshaft" do
39+
gem "rails", "~> 7.2.0"
40+
gem "propshaft"
41+
end
42+
43+
appraise "rails_8.0_sprockets" do
2844
gem "rails", "~> 8.0.0"
2945
remove_gem "propshaft"
3046
gem "sprockets-rails"
3147
end
3248

33-
appraise "rails_8_0_propshaft" do
49+
appraise "rails_8.0_propshaft" do
3450
gem "rails", "~> 8.0.0"
3551
gem "propshaft"
3652
end

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

Lines changed: 2 additions & 2 deletions
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"
7-
gem "sqlite3"
6+
gem "sqlite3", "~> 1.4"
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: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
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"
7-
gem "sqlite3"
7+
gem "sqlite3", "~> 1.4"
88

99
group :development do
1010
gem "appraisal"

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

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

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

99
group :development do

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)