Skip to content

Schedule Weekly

Schedule Weekly #4

name: Schedule Weekly
on:
schedule:
- cron: "0 8 * * 3"
workflow_dispatch:
jobs:
bazel-build-fuzzers-weekly:
runs-on:
labels: bazel-runner-large
container:
image: ghcr.io/dfinity/ic-build@sha256:eb85228ebf7511e2589f86788345eb3d1c8144914a8a2fa771d4347ddacac413
timeout-minutes: 60 # 1 hour
if: ${{ vars.RUN_CI == 'true' }} # needed to avoid running on public dfinity org until published
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Load Service Account Key to file
env:
FUZZING_GCP_SERVICE_KEY: ${{ secrets.FUZZING_GCP_SERVICE_KEY }}
run: |
echo $FUZZING_GCP_SERVICE_KEY | base64 --decode > bin/fuzzing_service_account.json
- name: Build and Push Fuzzers to GCP
shell: bash
run: |
cd bin
gcloud auth activate-service-account --key-file fuzzing_service_account.json
./build-all-fuzzers.sh --zip
cd fuzzer_build
gsutil -m cp libfuzzer_asan_linux_*.zip gs://ic_fuzzer_builds
gsutil -m cp afl_asan_linux_*.zip gs://ic_fuzzer_builds