2020-01-13 23:25:12 +00:00
|
|
|
# action.yml
|
2020-02-06 21:39:43 +00:00
|
|
|
name: 'run-fuzzers'
|
|
|
|
description: 'Runs fuzz target binaries for a specified length of time.'
|
2020-01-13 23:25:12 +00:00
|
|
|
inputs:
|
2020-02-19 23:32:30 +00:00
|
|
|
oss-fuzz-project-name:
|
|
|
|
description: 'The OSS-Fuzz project name.'
|
|
|
|
required: true
|
2021-02-19 19:54:15 +00:00
|
|
|
language:
|
|
|
|
description: 'Programming language project is written in.'
|
|
|
|
required: false
|
|
|
|
default: 'c++'
|
2020-01-29 19:03:43 +00:00
|
|
|
fuzz-seconds:
|
|
|
|
description: 'The total time allotted for fuzzing in seconds.'
|
|
|
|
required: true
|
2020-02-06 21:39:43 +00:00
|
|
|
default: 600
|
2020-02-03 23:35:04 +00:00
|
|
|
dry-run:
|
|
|
|
description: 'If set, run the action without actually reporting a failure.'
|
|
|
|
default: false
|
2020-06-12 01:27:01 +00:00
|
|
|
sanitizer:
|
|
|
|
description: 'The sanitizer to run the fuzzers with.'
|
|
|
|
default: 'address'
|
2021-10-20 04:02:17 +00:00
|
|
|
mode:
|
2021-02-01 18:49:33 +00:00
|
|
|
description: |
|
2021-10-20 04:02:17 +00:00
|
|
|
The mode to run the fuzzers with ("code-change", "batch", "coverage", or "prune").
|
|
|
|
"code-change" is for fuzzing a pull request or commit.
|
2021-02-01 18:49:33 +00:00
|
|
|
"batch" is for non-interactive fuzzing of an entire project.
|
2021-10-20 04:02:17 +00:00
|
|
|
"coverage" is for coverage generation.
|
|
|
|
"prune" is for corpus pruning.
|
2021-02-01 18:49:33 +00:00
|
|
|
required: false
|
2021-10-20 04:02:17 +00:00
|
|
|
default: 'code-change'
|
2021-05-26 16:45:22 +00:00
|
|
|
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
|
2021-07-29 15:41:36 +00:00
|
|
|
report-unreproducible-crashes:
|
2022-01-12 18:10:03 +00:00
|
|
|
description: 'If True, then unreproducible crashes will be reported.'
|
2021-07-29 15:41:36 +00:00
|
|
|
required: false
|
2022-01-12 18:10:03 +00:00
|
|
|
default: False
|
|
|
|
minimize-crashes:
|
|
|
|
description: 'If True, reportable crashes will be minimized.'
|
|
|
|
required: false
|
|
|
|
default: False
|
2022-09-22 15:21:35 +00:00
|
|
|
parallel-fuzzing:
|
|
|
|
description: "Whether to use all available cores for fuzzing."
|
|
|
|
required: false
|
|
|
|
default: false
|
2020-01-13 23:25:12 +00:00
|
|
|
runs:
|
|
|
|
using: 'docker'
|
2020-11-24 14:32:23 +00:00
|
|
|
image: '../../../run_fuzzers.Dockerfile'
|
2020-01-13 23:25:12 +00:00
|
|
|
env:
|
2020-02-19 23:32:30 +00:00
|
|
|
OSS_FUZZ_PROJECT_NAME: ${{ inputs.oss-fuzz-project-name }}
|
2021-02-19 19:54:15 +00:00
|
|
|
LANGUAGE: ${{ inputs.language }}
|
2020-01-29 19:03:43 +00:00
|
|
|
FUZZ_SECONDS: ${{ inputs.fuzz-seconds }}
|
2020-02-03 23:35:04 +00:00
|
|
|
DRY_RUN: ${{ inputs.dry-run}}
|
2020-06-12 01:27:01 +00:00
|
|
|
SANITIZER: ${{ inputs.sanitizer }}
|
2021-10-28 19:00:44 +00:00
|
|
|
MODE: ${{ inputs.mode }}
|
2021-05-26 16:45:22 +00:00
|
|
|
GITHUB_TOKEN: ${{ inputs.github-token }}
|
2021-03-12 15:27:07 +00:00
|
|
|
LOW_DISK_SPACE: 'True'
|
2021-07-29 15:41:36 +00:00
|
|
|
REPORT_UNREPRODUCIBLE_CRASHES: ${{ inputs.report-unreproducible-crashes }}
|
2022-01-12 18:10:03 +00:00
|
|
|
MINIMIZE_CRASHES: ${{ inputs.minimize-crashes }}
|
2021-10-26 02:18:17 +00:00
|
|
|
CIFUZZ_DEBUG: 'True'
|
2021-11-01 12:29:38 +00:00
|
|
|
CFL_PLATFORM: 'github'
|
2022-09-22 15:21:35 +00:00
|
|
|
PARALLEL_FUZZING: ${{ inputs.parallel-fuzzing }}
|