Skip to content

Commit 6de9a5d

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

17 files changed

+33
-1569
lines changed

.github/workflows/ci.yml

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,36 +6,25 @@ 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:
25-
- ruby-version: "3.1"
26-
gemfile: gemfiles/rails_7_0_propshaft.gemfile
27-
- 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
12+
- "3.4"
13+
rails-version:
14+
- "7.0"
15+
- "7.1"
16+
- "7.2"
17+
- "8.0"
18+
- "main"
19+
assets-pipeline:
20+
- sprockets
21+
- propshaft
3322

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

3726
env:
38-
BUNDLE_GEMFILE: ${{ matrix.gemfile }}
27+
BUNDLE_GEMFILE: gemfiles/rails_${{ matrix.rails-version }}_${{ matrix.assets-pipeline }}.gemfile
3928

4029
steps:
4130
- 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: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,47 @@
1-
appraise "rails_6_1_sprockets" do
1+
appraise "rails_6.1_sprockets" do
22
gem "rails", "~> 6.1.0"
33
end
44

5-
appraise "rails_7_0_sprockets" do
5+
appraise "rails_7.0_sprockets" do
66
gem "rails", "~> 7.0.0"
77
remove_gem "propshaft"
88
gem "sprockets-rails"
99
end
1010

11-
appraise "rails_7_0_propshaft" do
11+
appraise "rails_7.0_propshaft" do
1212
gem "rails", "~> 7.0.0"
1313
gem "propshaft"
1414
end
1515

16-
appraise "rails_7_1_sprockets" do
16+
appraise "rails_7.1_sprockets" do
1717
gem "rails", "~> 7.1.0"
1818
remove_gem "propshaft"
1919
gem "sprockets-rails"
2020
end
2121

22-
appraise "rails_7_1_propshaft" do
22+
appraise "rails_7.1_propshaft" do
2323
gem "rails", "~> 7.1.0"
2424
gem "propshaft"
2525
end
2626

27+
appraise "rails_7.2_sprockets" do
28+
gem "rails", "~> 7.2.0"
29+
remove_gem "propshaft"
30+
gem "sprockets-rails"
31+
end
32+
33+
appraise "rails_7.2_propshaft" do
34+
gem "rails", "~> 7.2.0"
35+
gem "propshaft"
36+
end
37+
2738
appraise "rails_8_0_sprockets" do
2839
gem "rails", "~> 8.0.0"
2940
remove_gem "propshaft"
3041
gem "sprockets-rails"
3142
end
3243

33-
appraise "rails_8_0_propshaft" do
44+
appraise "rails_8.0_propshaft" do
3445
gem "rails", "~> 8.0.0"
3546
gem "propshaft"
3647
end

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)