name: Fuzzing on: pull_request: schedule: - cron: "*/5 * * * *" env: BASE_URL: https://api.github.com/repos/${{ github.repository }} CAUSE: ${{ github.event_name }} TOKEN: ${{ github.token }} jobs: ufuzz: strategy: fail-fast: false matrix: os: [ ubuntu-latest, windows-latest ] name: ${{ matrix.os }} runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 - name: Perform fuzzing shell: bash run: | git clone --branch v1.5.4 --depth 1 https://github.com/jasongin/nvs.git ~/.nvs while ! timeout 60 bash -c '. ~/.nvs/nvs.sh add 8 && nvs use 8'; do cd ~/.nvs while !(git clean -xdf); do echo "'git clean' failed - retrying..."; done cd - done . ~/.nvs/nvs.sh --version nvs use 8 node --version npm config set audit false npm config set optional false npm config set save false npm config set strict-ssl false npm config set update-notifier false npm --version while !(npm install); do echo "'npm install' failed - retrying..."; done PERIOD=1800000 if [[ $CAUSE == "schedule" ]]; then PERIOD=`node test/ufuzz/actions $BASE_URL $TOKEN` fi if (( $PERIOD == 0 )); then echo "too many jobs in queue - skipping..." else node test/ufuzz/job $PERIOD fi