minify-html/.github/workflows/fuzz.yml

47 lines
1.3 KiB
YAML

name: Fuzz
on:
workflow_dispatch:
jobs:
fuzz:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v1
- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
default: true
- name: Run prebuild steps
shell: bash
run: bash ./prebuild.sh
- name: Build fuzz target
working-directory: ./fuzz
run: |
cargo install afl
cargo afl build
- name: Run fuzz
working-directory: ./fuzz
run: |
echo core | sudo tee /proc/sys/kernel/core_pattern
# Hide verbose stdout (not stderr) logging.
timeout 5h cargo afl fuzz -i in -o out target/debug/minify-html-fuzz-target > /dev/null || true
find ./out/crashes -type f | wc -l
- name: Set up Backblaze B2 CLI
uses: wilsonzlin/setup-b2@v3
- name: Upload log and output files
working-directory: ./fuzz
run: |
if [ -d ./out/crashes ]; then
b2 authorize-account ${{ secrets.CICD_CLI_B2_KEY_ID }} ${{ secrets.CICD_CLI_B2_APPLICATION_KEY }}
b2 sync --allowEmptySource ./out/crashes/ b2://${{ secrets.CICD_CLI_B2_BUCKET_NAME }}/minify-html/fuzz/$(git rev-parse --short HEAD)/crashes/
fi