7 changed files with 67 additions and 7 deletions
@ -0,0 +1,7 @@ |
|||||||
|
FROM gcr.io/oss-fuzz-base/base-builder:v1 |
||||||
|
COPY . $SRC/PX4-Autopilot |
||||||
|
RUN apt-get install -y libjpeg8-dev zlib1g-dev |
||||||
|
RUN pip3 install --upgrade pip |
||||||
|
RUN python3 -m pip install -r $SRC/PX4-Autopilot/Tools/setup/requirements.txt |
||||||
|
WORKDIR $SRC/PX4-Autopilot |
||||||
|
COPY ./.clusterfuzzlite/build.sh $SRC/ |
@ -0,0 +1,4 @@ |
|||||||
|
#!/usr/bin/env bash -eu |
||||||
|
|
||||||
|
PX4_FUZZ=1 make px4_sitl |
||||||
|
cp build/px4_sitl_default/bin/px4 $OUT/px4 |
@ -0,0 +1,43 @@ |
|||||||
|
name: ClusterFuzzLite PR fuzzing |
||||||
|
on: |
||||||
|
pull_request: |
||||||
|
paths: |
||||||
|
- '**' |
||||||
|
permissions: read-all |
||||||
|
jobs: |
||||||
|
PR: |
||||||
|
runs-on: ubuntu-latest |
||||||
|
strategy: |
||||||
|
fail-fast: false |
||||||
|
matrix: |
||||||
|
sanitizer: |
||||||
|
- address |
||||||
|
- undefined |
||||||
|
- memory |
||||||
|
steps: |
||||||
|
- name: Build Fuzzers (${{ matrix.sanitizer }}) |
||||||
|
id: build |
||||||
|
uses: google/clusterfuzzlite/actions/build_fuzzers@v1 |
||||||
|
with: |
||||||
|
sanitizer: ${{ matrix.sanitizer }} |
||||||
|
# Optional but recommended: used to only run fuzzers that are affected |
||||||
|
# by the PR. |
||||||
|
# See later section on "Git repo for storage". |
||||||
|
# storage-repo: https://${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/OWNER/STORAGE-REPO-NAME.git |
||||||
|
# storage-repo-branch: main # Optional. Defaults to "main" |
||||||
|
# storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages". |
||||||
|
- name: Run Fuzzers (${{ matrix.sanitizer }}) |
||||||
|
id: run |
||||||
|
uses: google/clusterfuzzlite/actions/run_fuzzers@v1 |
||||||
|
with: |
||||||
|
github-token: ${{ secrets.GITHUB_TOKEN }} |
||||||
|
fuzz-seconds: 600 |
||||||
|
mode: 'code-change' |
||||||
|
sanitizer: ${{ matrix.sanitizer }} |
||||||
|
# Optional but recommended: used to download the corpus produced by |
||||||
|
# batch fuzzing. |
||||||
|
# See later section on "Git repo for storage". |
||||||
|
# storage-repo: https://${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/OWNER/STORAGE-REPO-NAME.git |
||||||
|
# storage-repo-branch: main # Optional. Defaults to "main" |
||||||
|
# storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages". |
||||||
|
|
Loading…
Reference in new issue