@@ -17,22 +17,13 @@ jobs:
1717 strategy :
1818 fail-fast : false
1919 matrix :
20- os : [ ubuntu-22.04, ubuntu-24.04, ubuntu-22.04-arm, ubuntu-24.04-arm, macos-13, macos-14, macos-15, windows-2022, windows-2025, windows-11-arm ]
20+ os : [ macos-15-intel ]
2121 ruby : [
2222 ' 1.9' , '2.0', '2.1', '2.2', '2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', ruby-head,
2323 jruby-9.4, jruby, jruby-head,
2424 truffleruby, truffleruby-head,
2525 truffleruby+graalvm, truffleruby+graalvm-head
2626 ]
27- include :
28- - { os: windows-2022, ruby: mingw }
29- - { os: windows-2022, ruby: mswin }
30- - { os: windows-2022, ruby: ucrt }
31- - { os: windows-2025, ruby: mingw }
32- - { os: windows-2025, ruby: mswin }
33- - { os: windows-2025, ruby: ucrt }
34- - { os: ubuntu-24.04, ruby: asan }
35- - { os: ubuntu-24.04, ruby: 3.4-asan }
3627 exclude :
3728 # https://github.com/ruby/setup-ruby/issues/496
3829 - { os: ubuntu-22.04, ruby: '2.2' }
@@ -197,229 +188,3 @@ jobs:
197188 - name : Windows JRuby
198189 if : startsWith(matrix.os, 'windows') && startsWith(matrix.ruby, 'jruby')
199190 run : gem install sassc
200-
201- testDotRubyVersion :
202- name : " Test .ruby-version"
203- runs-on : ubuntu-latest
204- steps :
205- - uses : actions/checkout@v5
206- - run : echo "ruby-3.4.0" > .ruby-version
207- - uses : ./
208- - run : ruby -v | grep -F "ruby 3.4.0"
209-
210- testToolVersions :
211- name : " Test .tool-versions"
212- runs-on : ubuntu-latest
213- steps :
214- - uses : actions/checkout@v5
215- - run : echo -e "nodejs 16.0.0\nruby 3.4.0" > .tool-versions
216- - uses : ./
217- - run : ruby -v | grep -F "ruby 3.4.0"
218-
219- testMise :
220- name : " Test mise.toml"
221- runs-on : ubuntu-latest
222- steps :
223- - uses : actions/checkout@v5
224- - run : echo -e "[tools]\nnode = '18'\nruby = '3.4.0'" > mise.toml
225- - uses : ./
226- - run : ruby -v | grep -F "ruby 3.4.0"
227-
228- testNoGemfile :
229- name : " Test with no Gemfile"
230- runs-on : ubuntu-latest
231- steps :
232- - uses : actions/checkout@v5
233- - run : rm Gemfile
234- - uses : ./
235- with :
236- ruby-version : ' 2.6'
237- - run : ruby -v
238-
239- testNoGemfileWithBundlerCache :
240- name : " Test with no Gemfile but with bundler-cache"
241- runs-on : ubuntu-latest
242- steps :
243- - uses : actions/checkout@v5
244- - run : rm Gemfile
245- - uses : ./
246- with :
247- ruby-version : ' 2.6'
248- bundler-cache : true
249- - run : ruby -v
250-
251- testLatestRubygemsVersion :
252- name : " Test rubygems: latest on ${{ matrix.ruby }}"
253- runs-on : ubuntu-latest
254- strategy :
255- fail-fast : false
256- matrix :
257- include :
258- - { ruby: '3.2', expected_rubygems_version: '3.6.1' }
259- - { ruby: '3.0', expected_rubygems_version: '3.5.23' }
260- - { ruby: '2.7', expected_rubygems_version: '3.4.22' }
261- - { ruby: '2.6', expected_rubygems_version: '3.4.22' }
262- - { ruby: '2.5', expected_rubygems_version: '3.3.27' }
263- - { ruby: '2.3', expected_rubygems_version: '3.3.27' }
264- - { ruby: '2.0', expected_rubygems_version: '2.7.11' }
265- steps :
266- - uses : actions/checkout@v5
267- - uses : ./
268- with :
269- ruby-version : ${{ matrix.ruby }}
270- rubygems : latest
271- - run : ruby -e 'puts Gem::VERSION; exit(Gem.rubygems_version >= Gem::Version.new("${{ matrix.expected_rubygems_version }}"))'
272-
273- testFixedRubygemsVersionUpgrades :
274- name : " Test rubygems: version upgrades RubyGems to that version if the default is older"
275- runs-on : ubuntu-latest
276- steps :
277- - uses : actions/checkout@v5
278- - uses : ./
279- with :
280- ruby-version : ' 2.6'
281- rubygems : 3.2.3
282- - run : gem --version | grep -F "3.2.3"
283-
284- testFixedRubygemsVersionNoop :
285- name : " Test rubygems: version noops if the default is newer"
286- runs-on : ubuntu-latest
287- steps :
288- - uses : actions/checkout@v5
289- - uses : ./
290- with :
291- ruby-version : ' 3.1.0'
292- rubygems : 3.2.3
293- - run : gem --version | grep -F "3.3.3"
294-
295- testUseBundlerFromRubyGemsUpdate :
296- name : " Test rubygems: version uses the Bundler installed by the rubygems update"
297- runs-on : ubuntu-latest
298- steps :
299- - uses : actions/checkout@v5
300- - uses : ./
301- with :
302- ruby-version : ' 3.1.0'
303- rubygems : 3.4.0
304- - run : gem --version | grep -F "3.4.0"
305- - run : bundle --version | grep -F "2.4.0"
306-
307- testFixedBundlerVersionForOldRuby :
308- name : " Test bundler: 1.x for old Ruby"
309- runs-on : ubuntu-22.04
310- steps :
311- - uses : actions/checkout@v5
312- - uses : ./
313- with :
314- ruby-version : ' 2.3'
315- bundler : 1.16.6
316- - run : bundle --version | grep -F "1.16.6" # And not 1.17.x from ~> 1
317-
318- testMajorBundlerVersion :
319- name : " Test with a major Bundler version"
320- runs-on : ubuntu-latest
321- steps :
322- - uses : actions/checkout@v5
323- - uses : ./
324- with :
325- ruby-version : ' 2.6'
326- bundler : 2
327- - run : bundle --version | grep -P "Bundler version 2\.\d+\.\d+"
328-
329- testMinorBundlerVersion :
330- name : " Test with a minor Bundler version"
331- runs-on : ubuntu-latest
332- steps :
333- - uses : actions/checkout@v5
334- - uses : ./
335- with :
336- ruby-version : ' 2.6'
337- bundler : 2.2
338- - run : bundle --version | grep -P "Bundler version 2\.2\.\d+"
339-
340- testExactBundlerVersion :
341- name : " Test with an exact Bundler version"
342- runs-on : ubuntu-latest
343- steps :
344- - uses : actions/checkout@v5
345- - uses : ./
346- with :
347- ruby-version : ' 2.6'
348- bundler : 2.2.3
349- - run : bundle --version | grep -F "Bundler version 2.2.3"
350-
351- testBundlerPre :
352- name : " Test with a Bundler pre/rc version"
353- runs-on : ubuntu-latest
354- steps :
355- - uses : actions/checkout@v5
356- - uses : ./
357- with :
358- ruby-version : ' 2.6'
359- bundler : 2.2.0.rc.2
360- - run : bundle --version | grep -F "Bundler version 2.2.0.rc.2"
361-
362- testBundlerDev :
363- name : " Test BUNDLED WITH Bundler dev"
364- runs-on : ubuntu-latest
365- env :
366- BUNDLE_GEMFILE : ${{ github.workspace }}/gemfiles/bundler-dev.gemfile
367- steps :
368- - uses : actions/checkout@v5
369- - uses : ./
370- with :
371- ruby-version : ruby-head
372- bundler-cache : true
373-
374- testDependencyOnBundler1 :
375- name : " Test gemfile depending on Bundler 1"
376- runs-on : ubuntu-latest
377- env :
378- BUNDLE_GEMFILE : ${{ github.workspace }}/gemfiles/bundler1.gemfile
379- steps :
380- - uses : actions/checkout@v5
381- - uses : ./
382- with :
383- ruby-version : ' 2.7'
384- bundler : 1
385- bundler-cache : true
386- - run : bundle --version | grep -F "Bundler version 1."
387-
388- testGemfileMatrix :
389- strategy :
390- fail-fast : false
391- matrix :
392- gemfile : [ rails7, rails8 ]
393- name : " Test with ${{ matrix.gemfile }} gemfile"
394- runs-on : ubuntu-latest
395- env :
396- BUNDLE_GEMFILE : ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
397- steps :
398- - uses : actions/checkout@v5
399- - uses : ./
400- with :
401- ruby-version : ' 3.2'
402- bundler-cache : true
403- - run : bundle exec rails --version
404-
405- testWindowsToolchain :
406- name : " Test windows-toolchain: none"
407- runs-on : windows-latest
408- steps :
409- - uses : actions/checkout@v5
410- - uses : ./
411- with :
412- ruby-version : ' 2.7'
413- windows-toolchain : none
414- bundler : none
415- - name : C:/msys64/mingw64/bin/gcc.exe not installed
416- run : ruby -e "abort if File.exist?('C:/msys64/mingw64/bin/gcc.exe')"
417-
418- lint :
419- runs-on : ubuntu-22.04
420- steps :
421- - uses : actions/checkout@v5
422- - run : yarn install
423- - run : yarn run package
424- - name : Check generated files are up to date
425- run : git diff --exit-code
0 commit comments