| # action.yml |
| name: 'run-fuzzers' |
| description: 'Runs fuzz target binaries for a specified length of time.' |
| inputs: |
| oss-fuzz-project-name: |
| description: 'The OSS-Fuzz project name.' |
| required: true |
| language: |
| description: 'Programming language project is written in.' |
| required: false |
| default: 'c++' |
| fuzz-seconds: |
| description: 'The total time allotted for fuzzing in seconds.' |
| required: true |
| default: 600 |
| dry-run: |
| description: 'If set, run the action without actually reporting a failure.' |
| default: false |
| sanitizer: |
| description: 'The sanitizer to run the fuzzers with.' |
| default: 'address' |
| run-fuzzers-mode: |
| description: | |
| The mode to run the fuzzers with ("ci" or "batch"). |
| "ci" is for fuzzing a pull request or commit. |
| "batch" is for non-interactive fuzzing of an entire project. |
| "batch" is in alpha and should not be used in production. |
| required: false |
| default: 'ci' |
| github-token: |
| description: | |
| Token for GitHub API. WARNING: THIS SHOULD NOT BE USED IN PRODUCTION YET |
| You should use "secrets.GITHUB_TOKEN" in your workflow file, do not |
| hardcode the token. |
| TODO(https://github.com/google/oss-fuzz/pull/5841#discussion_r639393361): |
| Document locking this down. |
| required: false |
| report-unreproducible-crashes: |
| description: 'If True, then unreproducible crashes will be reported by CIFuzz.' |
| required: false |
| default: false |
| runs: |
| using: 'docker' |
| image: '../../../run_fuzzers.Dockerfile' |
| env: |
| OSS_FUZZ_PROJECT_NAME: ${{ inputs.oss-fuzz-project-name }} |
| LANGUAGE: ${{ inputs.language }} |
| FUZZ_SECONDS: ${{ inputs.fuzz-seconds }} |
| DRY_RUN: ${{ inputs.dry-run}} |
| SANITIZER: ${{ inputs.sanitizer }} |
| RUN_FUZZERS_MODE: ${{ inputs.run-fuzzers-mode }} |
| GITHUB_TOKEN: ${{ inputs.github-token }} |
| LOW_DISK_SPACE: 'True' |
| REPORT_UNREPRODUCIBLE_CRASHES: ${{ inputs.report-unreproducible-crashes }} |