• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# action.yml
2name: 'build-fuzzers'
3description: "Builds an OSS-Fuzz project's fuzzers."
4inputs:
5  language:
6    description: 'Programming language project is written in.'
7    required: false
8    default: 'c++'
9  dry-run:
10    description: 'If set, run the action without actually reporting a failure.'
11    default: false
12  allowed-broken-targets-percentage:
13    description: 'The percentage of broken targets allowed in bad_build_check.'
14    required: false
15  sanitizer:
16    description: 'The sanitizer to build the fuzzers with.'
17    default: 'address'
18  project-src-path:
19    description: "The path to the project's source code checkout."
20    required: false
21  bad-build-check:
22    description: "Whether or not OSS-Fuzz's check for bad builds should be done."
23    required: false
24    default: true
25  storage-repo:
26    description: |
27      The git repo to use for storing certain artifacts from fuzzing.
28    required: false
29  storage-repo-branch:
30    description: |
31      The branch of the git repo to use for storing certain artifacts from
32      fuzzing.
33    required: false
34  storage-repo-branch-coverage:
35    description: |
36      The branch of the git repo to use for storing coverage reports.
37    required: false
38  upload-build:
39    description: |
40      If set, will upload the build.
41    default: false
42  github-token:
43    description: |
44      Token for GitHub API. WARNING: THIS SHOULD NOT BE USED IN PRODUCTION YET
45      You should use "secrets.GITHUB_TOKEN" in your workflow file, do not
46      hardcode the token.
47      TODO(https://github.com/google/oss-fuzz/pull/5841#discussion_r639393361):
48      Document locking this down.
49    required: false
50runs:
51  using: 'docker'
52  image: '../../../build_fuzzers.Dockerfile'
53  env:
54    OSS_FUZZ_PROJECT_NAME: ${{ inputs.oss-fuzz-project-name }}
55    LANGUAGE: ${{ inputs.language }}
56    DRY_RUN: ${{ inputs.dry-run}}
57    ALLOWED_BROKEN_TARGETS_PERCENTAGE: ${{ inputs.allowed-broken-targets-percentage}}
58    SANITIZER: ${{ inputs.sanitizer }}
59    PROJECT_SRC_PATH: ${{ inputs.project-src-path }}
60    GITHUB_TOKEN: ${{ inputs.github-token }}
61    LOW_DISK_SPACE: 'True'
62    BAD_BUILD_CHECK: ${{ inputs.bad-build-check }}
63    UPLOAD_BUILD: ${{ inputs.upload-build }}
64