Several new fuzzers were added since this workflow was created (in particular due to the plugin split).
57 lines
1.5 KiB
YAML
57 lines
1.5 KiB
YAML
name: CIFuzz
|
|
on: [push, pull_request]
|
|
permissions: {}
|
|
jobs:
|
|
pre-check:
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
should_skip: ${{ steps.skip-check.outputs.should_skip }}
|
|
steps:
|
|
- id: skip-check
|
|
uses: fkirc/skip-duplicate-actions@master
|
|
with:
|
|
concurrent_skipping: 'same_content_newer'
|
|
|
|
fuzzing:
|
|
needs: pre-check
|
|
if: ${{ needs.pre-check.outputs.should_skip != 'true' }}
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
sanitizer: [address, undefined]
|
|
permissions:
|
|
security-events: write
|
|
steps:
|
|
- name: Build Fuzzers
|
|
id: build
|
|
uses: google/oss-fuzz/infra/cifuzz/actions/build_fuzzers@master
|
|
with:
|
|
oss-fuzz-project-name: 'strongswan'
|
|
language: c
|
|
sanitizer: ${{ matrix.sanitizer }}
|
|
|
|
- name: Run Fuzzers
|
|
uses: google/oss-fuzz/infra/cifuzz/actions/run_fuzzers@master
|
|
with:
|
|
oss-fuzz-project-name: 'strongswan'
|
|
report-timeouts: true
|
|
fuzz-seconds: 900
|
|
output-sarif: true
|
|
language: c
|
|
sanitizer: ${{ matrix.sanitizer }}
|
|
|
|
- name: Upload Crash
|
|
uses: actions/upload-artifact@v6
|
|
if: failure() && steps.build.outcome == 'success'
|
|
with:
|
|
name: ${{ matrix.sanitizer }}-artifacts
|
|
path: ./out/artifacts
|
|
|
|
- name: Upload Sarif
|
|
if: always() && steps.build.outcome == 'success'
|
|
uses: github/codeql-action/upload-sarif@v4
|
|
with:
|
|
sarif_file: cifuzz-sarif/results.sarif
|
|
checkout_path: cifuzz-sarif
|