Skip to content

Schedule Weekly

Schedule Weekly #45

name: Schedule Weekly
on:
schedule:
- cron: "0 8 * * 3"
workflow_dispatch:
env:
DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
DOCKER_HUB_PASSWORD_RO: ${{ secrets.DOCKER_HUB_PASSWORD_RO }}
jobs:
bazel-build-fuzzers-weekly:
runs-on:
labels: dind-large
container:
image: ghcr.io/dfinity/ic-build@sha256:d883e7f6e5a355d63f6d8a294cfbeb47161bc27055e34730c21c6eeae0617acb
options: >-
-e NODE_NAME
-v /cache:/cache
timeout-minutes: 60 # 1 hour
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Before script
id: before-script
shell: bash
run: |
[ -n "${NODE_NAME:-}" ] && echo "Node: $NODE_NAME"
- 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