Skip to content

Commit 95657ff

Browse files
committed
Add minimal README about the ClusterFuzzLite
Signed-off-by: Jakub Sztandera <[email protected]>
1 parent 65d3cea commit 95657ff

File tree

4 files changed

+21
-8
lines changed

4 files changed

+21
-8
lines changed

.github/workflows/README.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
### Fuzzing setup
2+
3+
ref-fvm uses [ClusterFuzzLite](https://google.github.io/clusterfuzzlite/) for contious fuzzing.
4+
This consists of four workflows:
5+
- `cflite_pr.yml` - responsible for running fuzzing for PRs, it will only fuzz targets when diff affects files covered by given fuzzing target
6+
- `cflite_build.yml` - responsible for building fuzzing targets on master branch and storing them for recall. These recalled targets are used to detect if crasher is a new thing caused by changes or a newely discovered input which will also cause crash on master.
7+
- `cflite_batch.yml` - periodically (every 6h for 1h) runs fuzzing to develop the corpus which will be used for other on-demand fuzzing and as seed corpus for OSS-Fuzz.
8+
- `cflite_cron.yml` - every day generates coverage reports, as well as, prunes and mimizes the corpus.
9+
10+
11+
Corpus and coverage data is stored within https://github.com/filecoin-project/ref-fvm-fuzz-corpora
12+
13+

.github/workflows/cflite_batch.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: ClusterFuzzLite batch fuzzing
22
on:
33
schedule:
4-
- cron: '0 0/12 * * *' # Every 12th hour. Change this to whatever is suitable.
4+
- cron: '0 0/6 * * *' # Every 6th hour. Change this to whatever is suitable.
55
permissions: read-all
66
jobs:
77
BatchFuzzing:
@@ -10,7 +10,7 @@ jobs:
1010
fail-fast: false
1111
matrix:
1212
sanitizer:
13-
- address
13+
- address
1414
steps:
1515
- name: Build Fuzzers (${{ matrix.sanitizer }})
1616
id: build
@@ -28,6 +28,6 @@ jobs:
2828
# Optional but recommended: For storing certain artifacts from fuzzing.
2929
# See later section on "Git repo for storage".
3030
storage-repo: https://${{ secrets.FILHELPER_PAT }}@github.com/filecoin-project/ref-fvm-fuzz-corpora.git
31-
storage-repo-branch: lite
31+
storage-repo-branch: master
3232
storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages".
3333

.github/workflows/cflite_cron.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: ClusterFuzzLite cron tasks
22
on:
33
schedule:
4-
- cron: '0 0 * * *' # Once a day at midnight.
4+
- cron: '30 1 * * *' # Once a day at 1:30 to run past batch job
55
permissions: read-all
66
jobs:
77
Pruning:
@@ -18,7 +18,7 @@ jobs:
1818
fuzz-seconds: 600
1919
mode: 'prune'
2020
storage-repo: https://${{ secrets.FILHELPER_PAT }}@github.com/filecoin-project/ref-fvm-fuzz-corpora.git
21-
storage-repo-branch: lite
21+
storage-repo-branch: master
2222
storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages".
2323
Coverage:
2424
runs-on: ubuntu-latest
@@ -37,6 +37,6 @@ jobs:
3737
mode: 'coverage'
3838
sanitizer: 'coverage'
3939
storage-repo: https://${{ secrets.FILHELPER_PAT }}@github.com/filecoin-project/ref-fvm-fuzz-corpora.git
40-
storage-repo-branch: lite
40+
storage-repo-branch: master
4141
storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages".
4242

.github/workflows/cflite_pr.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
# by the PR.
3030
# See later section on "Git repo for storage".
3131
storage-repo: https://${{ secrets.FILHELPER_PAT }}@github.com/filecoin-project/ref-fvm-fuzz-corpora.git
32-
storage-repo-branch: lite
32+
storage-repo-branch: master
3333
storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages".
3434
- name: Run Fuzzers (${{ matrix.sanitizer }})
3535
id: run
@@ -43,6 +43,6 @@ jobs:
4343
# batch fuzzing.
4444
# See later section on "Git repo for storage".
4545
storage-repo: https://${{ secrets.FILHELPER_PAT }}@github.com/filecoin-project/ref-fvm-fuzz-corpora.git
46-
storage-repo-branch: lite
46+
storage-repo-branch: master
4747
storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages".
4848

0 commit comments

Comments
 (0)