Fc ci changes #25
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 |