@@ -171,6 +171,7 @@ jobs:
171171 platform : [x86_64-linux, x86_64-linux-gnu]
172172 ruby : ["3.3", "3.2", "3.1", "3.0", "2.7", "2.6", "2.5", "2.4"]
173173 include :
174+ # declare rubygems for each ruby version
174175 - { ruby: "2.7", rubygems: "3.4.22" }
175176 - { ruby: "2.6", rubygems: "3.4.22" }
176177 - { ruby: "2.5", rubygems: "3.3.26" }
@@ -200,6 +201,9 @@ jobs:
200201 fail-fast : false
201202 matrix :
202203 platform :
204+ - aarch64-linux
205+ - aarch64-linux-gnu
206+ - aarch64-linux-musl
203207 - arm-linux
204208 - arm-linux-gnu
205209 - arm-linux-musl
@@ -217,10 +221,14 @@ jobs:
217221 - { ruby: "2.5", rubygems: "3.3.26" }
218222 - { ruby: "2.4", rubygems: "3.3.26" }
219223 # declare docker image for each platform
224+ - { platform: aarch64-linux-musl, docker_tag: "-alpine" }
220225 - { platform: arm-linux-musl, docker_tag: "-alpine" }
221226 - { platform: x86-linux-musl, docker_tag: "-alpine" }
222227 - { platform: x86_64-linux-musl, docker_tag: "-alpine" }
223228 # declare docker platform for each platform
229+ - { platform: aarch64-linux, docker_platform: "--platform=linux/arm64" }
230+ - { platform: aarch64-linux-gnu, docker_platform: "--platform=linux/arm64" }
231+ - { platform: aarch64-linux-musl, docker_platform: "--platform=linux/arm64" }
224232 - { platform: arm-linux, docker_platform: "--platform=linux/arm/v7" }
225233 - { platform: arm-linux-gnu, docker_platform: "--platform=linux/arm/v7" }
226234 - { platform: arm-linux-musl, docker_platform: "--platform=linux/arm/v7" }
@@ -247,85 +255,14 @@ jobs:
247255 ruby -rrcd_test -S rake test
248256 "
249257
250- test_aarch64-linux-gnu :
251- name : aarch64-linux-gnu
258+ test_the_rest :
259+ name : " ${{ matrix.platform }} ${{ matrix.ruby }} "
252260 needs : build_native_gem
253261 strategy :
254262 fail-fast : false
255263 matrix :
264+ os : [macos]
256265 ruby : ["3.3", "3.2", "3.1", "3.0", "2.7", "2.6", "2.5", "2.4"]
257- platform : [aarch64-linux]
258- include :
259- # ruby 3.0 and earlier ship rubygems < 3.2.33, so can't recognize the -gnu suffix
260- - ruby : " 3.3"
261- platform : aarch64-linux-gnu
262- - ruby : " 3.2"
263- platform : aarch64-linux-gnu
264- - ruby : " 3.1"
265- platform : aarch64-linux-gnu
266- runs-on : ubuntu-latest
267- steps :
268- - uses : actions/checkout@v3
269- - name : Download gem-${{ matrix.platform }}
270- uses : actions/download-artifact@v3
271- with :
272- name : gem-${{ matrix.platform }}
273- - name : Run tests
274- run : |
275- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
276- docker run --rm -v $PWD:/work -w /work \
277- --platform=linux/arm64 ruby:${{ matrix.ruby }} \
278- sh -c "
279- gem install --local *.gem --verbose &&
280- cd test/rcd_test/ &&
281- bundle install &&
282- ruby -rrcd_test -S rake test
283- "
284-
285- test_aarch64-linux-musl :
286- name : aarch64-linux-musl
287- needs : build_native_gem
288- strategy :
289- fail-fast : false
290- matrix :
291- ruby : ["3.3", "3.2", "3.1", "3.0", "2.7"] # ruby:2.6-alpine and earlier ship with rubygems that doesn't recognize the -musl suffix
292- platform : [aarch64-linux-musl]
293- runs-on : ubuntu-latest
294- steps :
295- - uses : actions/checkout@v3
296- - name : Download gem-${{ matrix.platform }}
297- uses : actions/download-artifact@v3
298- with :
299- name : gem-${{ matrix.platform }}
300- - name : Run tests
301- run : |
302- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
303- docker run --rm -v $PWD:/work -w /work \
304- --platform=linux/arm64 ruby:${{ matrix.ruby }}-alpine \
305- sh -c "
306- gem install --local *.gem --verbose &&
307- cd test/rcd_test/ &&
308- bundle install &&
309- ruby -rrcd_test -S rake test
310- "
311-
312- test_native_gem :
313- name : test native
314- needs : build_native_gem
315- strategy :
316- fail-fast : false
317- matrix :
318- os :
319- - macos
320- ruby :
321- - " 3.3"
322- - " 3.2"
323- - " 3.1"
324- - " 3.0"
325- - " 2.7"
326- - " 2.6"
327- - " 2.5"
328- - " 2.4"
329266 include :
330267 - os : macos
331268 platform : x86_64-darwin
@@ -370,16 +307,15 @@ jobs:
370307 uses : actions/download-artifact@v3
371308 with :
372309 name : gem-${{ matrix.platform }}
373- - name : Install gem-${{ matrix.platform }}
374- run : gem install --local *.gem --verbose
375- - name : Run tests
310+ - name : Test gem-${{ matrix.platform }}
376311 run : |
312+ gem install --local *.gem --verbose
377313 cd test/rcd_test/
378314 bundle install
379315 ruby -rrcd_test -S rake test
380316
381- test_static_native_gem :
382- name : test static
317+ test_windows_static :
318+ name : " static ${{ matrix.platform }} ${{ matrix.ruby }} "
383319 needs : build_native_gem
384320 strategy :
385321 fail-fast : false
@@ -423,16 +359,15 @@ jobs:
423359 uses : actions/download-artifact@v3
424360 with :
425361 name : gem-${{ matrix.platform }}-static
426- - name : Install gem-${{ matrix.platform }}-static
427- run : gem install --local *.gem --verbose
428- - name : Run tests
362+ - name : Test gem-${{ matrix.platform }}-static
429363 run : |
364+ gem install --local *.gem --verbose
430365 cd test/rcd_test/
431366 bundle install
432367 ruby -rrcd_test -S rake test
433368
434- test_native_gem_multiarch :
435- name : ${{ matrix.platform }} on ${{ matrix.from_image }}
369+ test_ad_hoc :
370+ name : " ${{ matrix.platform }} on ${{ matrix.from_image }}"
436371 needs : build_native_gem
437372 strategy :
438373 fail-fast : false
0 commit comments