Skip to content

Fc ci changes

Fc ci changes #25

Workflow file for this run

name: Publish to ClusterFuzz
on:
workflow_call:
workflow_dispatch:
pull_request:
jobs:
clusterfuzz-publish:
environment:
name: clusterfuzz
url: 'https://isol-clusterfuzz.appspot.com/'
strategy:
matrix:
machine:
- linux_clang_haswell
- linux_clang_icelake
include:
- machine: linux_clang_haswell
artifact_dir: build/linux/clang/haswell
qualifier: modern
- machine: linux_clang_icelake
artifact_dir: build/linux/clang/icelake
qualifier: highend
runs-on:
ubuntu-latest
env:
MACHINE: ${{ matrix.machine }}
EXTRAS: fuzz asan ubsan
steps:
- uses: actions/checkout@v4
# - uses: ./.github/actions/hugepages
- uses: ./.github/actions/deps
- run: sudo apt update && sudo apt install -y zip patchelf
- uses: asymmetric-research/clusterfuzz-fuzzbot-builder@main
name: Build fuzz tests
with:
command: make -j -Otarget fuzz-test
- name: List Artifacts
run: |
ls ${{ matrix.artifact_dir }}/fuzz-test
- uses: asymmetric-research/firedancer-clusterfuzz-action@main
name: Upload fuzz targets to ClusterFuzz
with:
bucket-name: firedancer-builds.isol-clusterfuzz.appspot.com
artifact-dir: ${{ matrix.artifact_dir }}/fuzz-test
object-prefix: main/libfuzzer/${{ matrix.qualifier }}/firedancer
project-id: isol-clusterfuzz
qualifier: ${{ matrix.qualifier }}
service-account-credentials: ${{ secrets.FUZZ_SERVICE_ACCT_JSON_BUNDLE }}
- name: Find the tmpdir containing our binaries and rewritten libs
id: find-fuzzdir
run: |
FD_DIR=$(find /tmp/ | grep fdfuzz | head -n 1)
echo "fd-dir=$FD_DIR" >> "$GITHUB_OUTPUT"
- uses: actions/upload-artifact@v4
name: Upload harness binaries to GHA Artifacts
with:
name: ${{ github.run_id }}-${{ matrix.machine }}
path: ./build/
retention-days: 1
- uses: actions/upload-artifact@v4
name: Upload .so dependency libraries to GHA Artifacts
with:
name: ${{ github.run_id }}-${{ matrix.machine }}-lib
path: ${{ steps.find-fuzzdir.outputs.fd-dir }}/lib/*.so*
retention-days: 1
fuzzcorp-publish:
needs: clusterfuzz-publish
runs-on:
ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/fc
with:
SKID: ${{ secrets.AWS_SKID }}
AKID: ${{ secrets.AWS_AKID }}
previous_action_outputs: |
${{ github.run_id }}-linux_clang_haswell
${{ github.run_id }}-linux_clang_icelake
${{ github.run_id }}-linux_clang_haswell-lib
${{ github.run_id }}-linux_clang_icelake-lib