66 # https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#schedule
77 # GitHub Actions schedules can sometimes delay by up to 15 minutes due to platform load
88 FULL_CI_SCHEDULE : ' 25 8 * * 1,4'
9- # Run sanitized builds (MacOS/Linux) on Friday at 3:25am EST (08:25 UTC)
10- SANITIZER_CI_SCHEDULE : ' 25 8 * * 5'
119
1210on :
1311 push :
3533 required : false
3634 type : boolean
3735 default : false
38- sanitizer :
39- description : " Run sanitized build"
40- required : false
41- type : boolean
42- default : false
4336 schedule :
44- - cron : ' 25 8 * * 1,4,5 '
37+ - cron : ' 25 8 * * 1,4'
4538
4639concurrency :
4740 group : ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
7770 outputs :
7871 COMMIT_MESSAGE : ${{ steps.getcommitpush.outputs.COMMIT_MSG || steps.getcommitpr.outputs.COMMIT_MSG }}
7972 FULL_RUN : ${{ steps.setuppush.outputs.FULL_RUN || steps.setuppr.outputs.FULL_RUN || steps.setupmanual.outputs.FULL_RUN || steps.setupschedule.outputs.FULL_RUN }}
80- SANITIZER : ${{ steps.setupmanual.outputs.SANITIZER || steps.setupschedule.outputs.SANITIZER }}
8173 steps :
8274 - name : Checkout
8375 uses : actions/checkout@v5
@@ -122,27 +114,21 @@ jobs:
122114 run : |
123115 echo "Commit Message: $COMMIT_MSG"
124116 echo "Full Run: $FULL_RUN"
125- echo "Sanitizer: $SANITIZER"
126117 echo "COMMIT_MSG=$COMMIT_MSG" >> $GITHUB_OUTPUT
127118 echo "FULL_RUN=$FULL_RUN" >> $GITHUB_OUTPUT
128- echo "SANITIZER=$SANITIZER" >> $GITHUB_OUTPUT
129119 env :
130120 FULL_RUN : ${{ github.event.inputs.ci-full }}
131- SANITIZER : ${{ github.event.inputs.sanitizer }}
132121 if : ${{ github.event_name == 'workflow_dispatch' }}
133122
134123 - name : Display and Setup Build Args (Schedule)
135124 id : setupschedule
136125 run : |
137126 echo "Commit Message: $COMMIT_MSG"
138127 echo "Full Run: $FULL_RUN"
139- echo "Sanitizer: $SANITIZER"
140128 echo "COMMIT_MSG=$COMMIT_MSG" >> $GITHUB_OUTPUT
141129 echo "FULL_RUN=$FULL_RUN" >> $GITHUB_OUTPUT
142- echo "SANITIZER=$SANITIZER" >> $GITHUB_OUTPUT
143130 env :
144131 FULL_RUN : ${{ github.event.schedule == env.FULL_CI_SCHEDULE }}
145- SANITIZER : ${{ github.event.schedule == env.SANITIZER_CI_SCHEDULE }}
146132 if : ${{ github.event_name == 'schedule' }}
147133
148134 # #######################################################
@@ -223,8 +209,6 @@ jobs:
223209 - " cp312"
224210 is-full-run :
225211 - ${{ needs.initialize.outputs.FULL_RUN == 'true' }}
226- is-sanitizer :
227- - ${{ needs.initialize.outputs.SANITIZER == 'true' }}
228212 exclude :
229213 # ###########################
230214 # Things to always exclude #
@@ -277,14 +261,6 @@ jobs:
277261 os : windows-2022
278262 python-version : " 3.11"
279263
280- # msvc: no sanitizer support yet
281- - is-sanitizer : true
282- os : windows-2022
283-
284- # clang: sanitized build fails on csp_autogen
285- - is-sanitizer : true
286- os : macos-14
287-
288264 # avoid unnecessary use of mac resources
289265 - is-full-run : false
290266 os : macos-14
@@ -323,13 +299,7 @@ jobs:
323299 run : make dist-py-cibw
324300 env :
325301 CIBW_BUILD : " ${{ matrix.cibuildwheel }}-manylinux*"
326- CIBW_ENVIRONMENT_LINUX : >-
327- ACLOCAL_PATH="/usr/share/aclocal"
328- CSP_MANYLINUX="ON"
329- ${{ needs.initialize.outputs.SANITIZER == 'true' && 'CSP_ENABLE_ASAN="ON" CSP_ENABLE_UBSAN="ON"' || '' }}
330- CCACHE_DIR="/host/home/runner/work/csp/csp/.ccache"
331- VCPKG_DEFAULT_BINARY_CACHE="/host${{ env.VCPKG_DEFAULT_BINARY_CACHE }}"
332- VCPKG_DOWNLOADS="/host${{ env.VCPKG_DOWNLOADS }}"
302+ CIBW_ENVIRONMENT_LINUX : ACLOCAL_PATH="/usr/share/aclocal" CSP_MANYLINUX="ON" CCACHE_DIR="/host/home/runner/work/csp/csp/.ccache" VCPKG_DEFAULT_BINARY_CACHE="/host${{ env.VCPKG_DEFAULT_BINARY_CACHE }}" VCPKG_DOWNLOADS="/host${{ env.VCPKG_DOWNLOADS }}"
333303 CIBW_BUILD_VERBOSITY : 3
334304 if : ${{ runner.os == 'Linux' }}
335305
@@ -339,11 +309,7 @@ jobs:
339309 run : make dist-py-cibw
340310 env :
341311 CIBW_BUILD : " ${{ matrix.cibuildwheel }}-macos*"
342- CIBW_ENVIRONMENT_MACOS : >-
343- ${{ needs.initialize.outputs.SANITIZER == 'true' && 'CSP_ENABLE_ASAN="ON" CSP_ENABLE_UBSAN="ON"' || '' }}
344- CCACHE_DIR="/Users/runner/work/csp/csp/.ccache"
345- VCPKG_DEFAULT_BINARY_CACHE="${{ env.VCPKG_DEFAULT_BINARY_CACHE }}"
346- VCPKG_DOWNLOADS="${{ env.VCPKG_DOWNLOADS }}"
312+ CIBW_ENVIRONMENT_MACOS : CCACHE_DIR="/Users/runner/work/csp/csp/.ccache" VCPKG_DEFAULT_BINARY_CACHE="${{ env.VCPKG_DEFAULT_BINARY_CACHE }}" VCPKG_DOWNLOADS="${{ env.VCPKG_DOWNLOADS }}"
347313 CIBW_ARCHS_MACOS : arm64
348314 CIBW_BUILD_VERBOSITY : 3
349315 if : ${{ matrix.os == 'macos-14' }}
@@ -462,8 +428,6 @@ jobs:
462428 - 3.12
463429 is-full-run :
464430 - ${{ needs.initialize.outputs.FULL_RUN == 'true' }}
465- is-sanitizer :
466- - ${{ needs.initialize.outputs.SANITIZER == 'true' }}
467431 exclude :
468432 # #############################################
469433 # Things to exclude if not a full matrix run #
@@ -485,10 +449,6 @@ jobs:
485449 os : windows-2022
486450 python-version : " 3.11"
487451
488- # No sanitizer support for msvc yet (no UBSAN)
489- - is-sanitizer : true
490- os : windows-2022
491-
492452 # avoid unnecessary use of mac resources
493453 - is-full-run : false
494454 os : macos-14
@@ -567,11 +527,6 @@ jobs:
567527 # Common
568528 - name : Python Test Steps
569529 run : make test
570- if : ${{ needs.initialize.outputs.SANITIZER == 'false' }}
571-
572- - name : Python Test Steps (Sanitizer)
573- run : make test-sanitizer
574- if : ${{ needs.initialize.outputs.SANITIZER == 'true' }}
575530
576531 # ###############################################################
577532 # ..............................................................#
0 commit comments