Fuzzer script needs better error message/issue creation message #12
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: test-fuzzer-ci-still-works | |
on: | |
workflow_dispatch: | |
pull_request: | |
push: | |
branches: | |
- '**' | |
- '!main' | |
jobs: | |
build-duckdb: | |
name: Build DuckDB | |
runs-on: ubuntu-latest | |
timeout-minutes: 120 | |
outputs: | |
duckdb-hash: ${{ steps.find-hash.outputs.hash }} | |
env: | |
BUILD_ICU: 1 | |
BUILD_JSON: 1 | |
BUILD_TPCH: 1 | |
BUILD_TPCDS: 1 | |
BUILD_PARQUET: 1 | |
BUILD_JEMALLOC: 1 | |
CRASH_ON_ASSERT: 1 | |
GEN: ninja | |
steps: | |
- name: Dependencies | |
shell: bash | |
run: sudo apt-get update -y -qq && sudo apt-get install -y -qq ninja-build ccache | |
- uses: actions/checkout@v3 | |
with: | |
repository: duckdb/duckdb | |
fetch-depth: 0 | |
- name: Setup Ccache | |
uses: hendrikmuhs/ccache-action@main | |
- id: find-hash | |
run: echo "::set-output name=hash::$(git rev-parse HEAD)" | |
- name: create build sqlsmith extension file | |
shell: bash | |
run: | | |
echo "duckdb_extension_load(sqlsmith | |
GIT_URL https://github.com/duckdb/duckdb_sqlsmith | |
GIT_TAG main | |
)" > sqlsmith.cmake | |
- name: Build | |
shell: bash | |
run: | | |
EXTENSION_CONFIGS="sqlsmith.cmake" make debug | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: duckdb | |
path: build/debug/duckdb | |
fuzzer: | |
name: Fuzzer | |
needs: | |
- build-duckdb | |
runs-on: ubuntu-latest | |
timeout-minutes: 60 | |
strategy: | |
fail-fast: false | |
matrix: | |
fuzzer: [duckfuzz, sqlsmith, duckfuzz_functions] | |
data: [alltypes, tpch, emptyalltypes] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
path: duckdb_sqlsmith | |
fetch-depth: 0 | |
- name: Download a single artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: duckdb | |
- name: Fuzz | |
shell: bash | |
run: | | |
chmod +x duckdb | |
runtime="1 minute" | |
endtime=$(date -ud "$runtime" +%s) | |
cd duckdb_sqlsmith | |
while [[ $(date -u +%s) -le $endtime ]] | |
do | |
echo "Time Now: `date +%H:%M:%S`" | |
python3 scripts/run_fuzzer.py --no_checks --${{ matrix.fuzzer }} --${{ matrix.data }} --shell=../duckdb --dry --max_queries=10 | |
done | |