@@ -642,17 +642,46 @@ jobs:
642642 "$BUILD_DIR/cross-python/bin/python3" -m test test_sysconfig test_site test_embed
643643
644644 cifuzz :
645+ name : CIFuzz
645646 needs : build-context
646- if : needs.build-context.outputs.run-ci-fuzz == 'true'
647- uses : ./.github/workflows/reusable-cifuzz.yml
648- with :
649- oss-fuzz-project-name : cpython3
650- cifuzz-stdlib :
651- needs : build-context
652- if : needs.build-context.outputs.run-ci-fuzz-stdlib == 'true'
647+ if : >-
648+ contains(
649+ [
650+ needs.build-context.outputs.run-ci-fuzz,
651+ needs.build-context.outputs.run-ci-fuzz-stdlib
652+ ],
653+ 'true'
654+ )
655+ permissions :
656+ security-events : write
657+ strategy :
658+ fail-fast : false
659+ matrix :
660+ sanitizer :
661+ - address
662+ - undefined
663+ - memory
664+ oss-fuzz-project-name :
665+ - cpython3
666+ - python3-libraries
667+ exclude :
668+ - oss-fuzz-project-name : >-
669+ ${{
670+ needs.build-context.outputs.run-ci-fuzz == 'true'
671+ && ''
672+ || 'cpython3'
673+ }}
674+ - oss-fuzz-project-name : >-
675+ ${{
676+ needs.build-context.outputs.run-ci-fuzz-stdlib == 'true'
677+ && ''
678+ || 'python3-libraries'
679+ }}
653680 uses : ./.github/workflows/reusable-cifuzz.yml
654681 with :
655- oss-fuzz-project-name : python3-libraries
682+ oss-fuzz-project-name : ${{ matrix.oss-fuzz-project-name }}
683+ sanitizer : ${{ matrix.sanitizer }}
684+ timeout-minutes : 60
656685
657686 all-required-green : # This job does nothing and is only used for the branch protection
658687 name : All required checks pass
@@ -677,7 +706,6 @@ jobs:
677706 - build-san
678707 - cross-build-linux
679708 - cifuzz
680- - cifuzz-stdlib
681709 if : always()
682710
683711 steps :
@@ -709,7 +737,7 @@ jobs:
709737 }}
710738 ${{ !fromJSON(needs.build-context.outputs.run-windows-tests) && 'build-windows,' || '' }}
711739 ${{ !fromJSON(needs.build-context.outputs.run-ci-fuzz) && 'cifuzz,' || '' }}
712- ${{ !fromJSON(needs.build-context.outputs.run-ci-fuzz-stdlib) && 'cifuzz-stdlib ,' || '' }}
740+ ${{ !fromJSON(needs.build-context.outputs.run-ci-fuzz-stdlib) && 'cifuzz,' || '' }}
713741 ${{ !fromJSON(needs.build-context.outputs.run-macos) && 'build-macos,' || '' }}
714742 ${{
715743 !fromJSON(needs.build-context.outputs.run-ubuntu)
0 commit comments