File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : rubyspec C-API extensions
2+
3+ inputs :
4+ builddir :
5+ required : false
6+ default : ' .'
7+
8+ outputs :
9+ key :
10+ value : >-
11+ ${{
12+ !steps.restore.outputs.cache-hit &&
13+ github.ref == 'refs/heads/master' &&
14+ steps.config.outputs.key
15+ }}
16+
17+ runs :
18+ using : composite
19+
20+ steps :
21+ - id : config
22+ shell : bash
23+ run : |
24+ eval $(grep -e '^arch *=' -e '^ruby_version *=' -e '^DLEXT *=' Makefile |
25+ sed 's/ *= */=/')
26+ key=capiexts-${arch}-${ruby_version}
27+ echo key=$key >> $GITHUB_OUTPUT
28+ echo DLEXT=$DLEXT >> $GITHUB_OUTPUT
29+ working-directory : ${{ inputs.builddir }}
30+
31+ - name : CAPI extensions cache
32+ uses : actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
33+ id : cache
34+ with :
35+ path : ${{ inputs.builddir }}/spec/ruby/optional/capi/ext/
36+ key : ${{ steps.config.outputs.key }}
37+
38+ - name : Force rubyspec CAPI extension binaries up to date
39+ shell : bash
40+ run : |
41+ touch ${{ inputs.builddir }}/spec/ruby/optional/capi/ext/*.$DLEXT
42+ env :
43+ DLEXT : ${{ steps.config.outputs.DLEXT }}
44+ if : ${{ steps.cache.outputs.cache-hit }}
Original file line number Diff line number Diff line change 4545 os : macos-14
4646 - test_task : check
4747 os : macos-15
48+ capi_check : true
4849 - test_task : check
4950 os : macos-13
5051 fail-fast : false
@@ -159,6 +160,19 @@ jobs:
159160 if : ${{ matrix.test_task == 'check' && matrix.skipped_tests }}
160161 continue-on-error : ${{ matrix.continue-on-skipped_tests || false }}
161162
163+ - name : CAPI extensions
164+ uses : ./.github/actions/capiext
165+ with :
166+ builddir : build
167+ if : ${{ matrix.capi_check }}
168+
169+ - name : Check with previous CAPI extensions
170+ run : |
171+ make -s test-spec
172+ env :
173+ RUBY_TESTOPTS : ' -v --tty=no'
174+ if : ${{ matrix.capi_check }}
175+
162176 - uses : ./.github/actions/slack
163177 with :
164178 label : ${{ matrix.os }} / ${{ matrix.test_task }}
Original file line number Diff line number Diff line change 3939 - test_task : test-bundled-gems
4040 - test_task : check
4141 os : ubuntu-24.04
42+ capi_check : true
4243 # ubuntu-24.04-arm jobs don't start on ruby/ruby as of 2025-09-04
4344 # - test_task: check
4445 # os: ubuntu-24.04-arm
@@ -152,6 +153,19 @@ jobs:
152153 DESTDIR=${RUNNER_TEMP-${TMPDIR-/tmp}}/installed
153154 $SETARCH make test-pc "DESTDIR=$DESTDIR"
154155
156+ - name : CAPI extensions
157+ uses : ./.github/actions/capiext
158+ with :
159+ builddir : build
160+ if : ${{ matrix.capi_check }}
161+
162+ - name : Check with previous CAPI extensions
163+ run : |
164+ $SETARCH make -s test-spec
165+ env :
166+ RUBY_TESTOPTS : ' -v --tty=no'
167+ if : ${{ matrix.capi_check }}
168+
155169 - uses : ./.github/actions/slack
156170 with :
157171 label : ${{ matrix.test_task }} ${{ matrix.configure }}${{ matrix.arch }}
You can’t perform that action at this time.
0 commit comments