forked from near/nearcore
-
Notifications
You must be signed in to change notification settings - Fork 0
55 lines (45 loc) · 1.93 KB
/
master_fuzzer_binaries.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
name: Build fuzz targets from master
on:
push:
branches:
- master
jobs:
build_fuzzers:
name: Build Fuzzers
runs-on: "ubuntu-20.04-32core"
permissions:
contents: "read"
id-token: "write"
steps:
- run: sudo fallocate -l 128G /swap-file
- run: sudo chmod 600 /swap-file
- run: sudo mkswap /swap-file
- run: sudo swapon /swap-file
- id: "auth"
uses: "google-github-actions/auth@v1"
with:
workload_identity_provider: "projects/968400232856/locations/global/workloadIdentityPools/project-identity-pool/providers/github-provider"
service_account: "[email protected]"
- name: Installing nightly rust
run: |
rustup install nightly
rustup default nightly
- uses: baptiste0928/cargo-install@21a18ba3bf4a184d1804e8b759930d3471b1c941
with:
crate: cargo-bolero
# TODO: remove the below once https://github.com/camshaft/bolero/pull/195 is released on crates.io
# and https://github.com/camshaft/bolero/pull/196 has a proper fix
git: https://github.com/Ekleog-NEAR/bolero
rev: 56da8e6d1d018519a30b36d85d3a53fe35a42eaf
- run: rustup target add --toolchain nightly wasm32-unknown-unknown
- name: "Set up GCP SDK"
uses: "google-github-actions/setup-gcloud@v1"
with:
version: ">= 416.0.0"
- uses: actions/checkout@master
- name: "Compile fuzzers and upload to GCS"
run: |
NAME="nearcore-${{ github.ref_name }}-$(env TZ=Etc/UTC date +"%Y%m%d%H%M%S")"
# Our Clusterfuzz setup currently (2024-02) runs on Cascade Lake CPUs
RUSTFLAGS="--cfg fuzz -C target-cpu=cascadelake" cargo +nightly bolero build-clusterfuzz --all-features --profile fuzz
gsutil cp -Z target/fuzz/clusterfuzz.tar "gs://fuzzer_targets/${{ github.ref_name }}/$NAME.tar.gz"