Skip to content

Commit 039a755

Browse files
committed
Use matrix to run all test combinations
1 parent 10f080e commit 039a755

File tree

1 file changed

+15
-119
lines changed

1 file changed

+15
-119
lines changed

.github/workflows/ci.yml

Lines changed: 15 additions & 119 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,20 @@ permissions:
66
contents: read
77

88
jobs:
9-
rails-8_1:
10-
name: Rails 8.1
9+
test:
10+
name: Rails ${{matrix.rails}} and Ruby ${{matrix.ruby}}
1111
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
include:
15+
- rails: 8.1
16+
ruby: 3.2
17+
- rails: 8.0
18+
ruby: 3.2
19+
- rails: 7.2
20+
ruby: 3.1
21+
- rails: 7.0
22+
ruby: 2.7
1223
steps:
1324
- uses: actions/checkout@v4
1425

@@ -21,125 +32,10 @@ jobs:
2132
- name: Setup Ruby ${{matrix.ruby}}
2233
uses: ruby/setup-ruby@v1
2334
with:
24-
ruby-version: 3.2
35+
ruby-version: ${{matrix.ruby}}
2536
bundler-cache: true
2637

2738
- name: rake test
2839
run: bundle install && bundle exec rake
2940
env:
30-
BUNDLE_GEMFILE: gemfiles/rails-8.1.gemfile
31-
32-
rails-8_0:
33-
name: Rails 8.0
34-
runs-on: ubuntu-latest
35-
steps:
36-
- uses: actions/checkout@v4
37-
38-
- name: Start Redis
39-
uses: supercharge/[email protected]
40-
41-
- name: Start MongoDB
42-
uses: supercharge/[email protected]
43-
44-
- name: Setup Ruby ${{matrix.ruby}}
45-
uses: ruby/setup-ruby@v1
46-
with:
47-
ruby-version: 3.2
48-
bundler-cache: true
49-
50-
- name: rake test
51-
run: bundle install && bundle exec rake
52-
env:
53-
BUNDLE_GEMFILE: gemfiles/rails-8.0.gemfile
54-
55-
rails-7_1:
56-
name: Rails 7.1
57-
runs-on: ubuntu-latest
58-
steps:
59-
- uses: actions/checkout@v4
60-
61-
- name: Start Redis
62-
uses: supercharge/[email protected]
63-
64-
- name: Start MongoDB
65-
uses: supercharge/[email protected]
66-
67-
- name: Setup Ruby ${{matrix.ruby}}
68-
uses: ruby/setup-ruby@v1
69-
with:
70-
ruby-version: 3.1
71-
bundler-cache: true
72-
73-
- name: rake test
74-
run: bundle install && bundle exec rake
75-
env:
76-
BUNDLE_GEMFILE: gemfiles/rails-7.1.gemfile
77-
78-
rails-7_0:
79-
name: Rails 7.0
80-
runs-on: ubuntu-latest
81-
steps:
82-
- uses: actions/checkout@v4
83-
84-
- name: Start Redis
85-
uses: supercharge/[email protected]
86-
87-
- name: Start MongoDB
88-
uses: supercharge/[email protected]
89-
90-
- name: Setup Ruby ${{matrix.ruby}}
91-
uses: ruby/setup-ruby@v1
92-
with:
93-
ruby-version: 2.7
94-
bundler-cache: true
95-
96-
- name: rake test
97-
run: bundle install && bundle exec rake
98-
env:
99-
BUNDLE_GEMFILE: gemfiles/rails-7.0.gemfile
100-
101-
rails-6_1:
102-
name: Rails 6.1
103-
runs-on: ubuntu-latest
104-
steps:
105-
- uses: actions/checkout@v4
106-
107-
- name: Start Redis
108-
uses: supercharge/[email protected]
109-
110-
- name: Start MongoDB
111-
uses: supercharge/[email protected]
112-
113-
- name: Setup Ruby ${{matrix.ruby}}
114-
uses: ruby/setup-ruby@v1
115-
with:
116-
ruby-version: 2.5
117-
bundler-cache: true
118-
119-
- name: rake test
120-
run: bundle install && bundle exec rake
121-
env:
122-
BUNDLE_GEMFILE: gemfiles/rails-6.1.gemfile
123-
124-
rails-6_0:
125-
name: Rails 6.0
126-
runs-on: ubuntu-latest
127-
steps:
128-
- uses: actions/checkout@v4
129-
130-
- name: Start Redis
131-
uses: supercharge/[email protected]
132-
133-
- name: Start MongoDB
134-
uses: supercharge/[email protected]
135-
136-
- name: Setup Ruby ${{matrix.ruby}}
137-
uses: ruby/setup-ruby@v1
138-
with:
139-
ruby-version: 2.5
140-
bundler-cache: true
141-
142-
- name: rake test
143-
run: bundle install && bundle exec rake
144-
env:
145-
BUNDLE_GEMFILE: gemfiles/rails-6.0.gemfile
41+
BUNDLE_GEMFILE: gemfiles/rails-${{matrix.rails}}.gemfile

0 commit comments

Comments
 (0)