richonn/SBOMForge

Automatically generates a signed SBOM using Syft and Cosign, and attaches it to your GitHub releases.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
github-tokenGitHub token to upload the SBOM as a release asset.yes
formatSBOM format(s). One or more of: spdx-json, cyclonedx-json, syft-json. Comma-separated for multiple (e.g. "spdx-json,cyclonedx-json").nospdx-json
artifact-nameOutput filename prefix.nosbom
signSign the SBOM with Cosign keylessnotrue
attach-to-releaseAttach the SBOM to the GitHub Release.notrue
upload-to-summaryShow a summary in the GitHub Actions Job Summary.notrue
scan-pathDirectory or directories to scan. Comma-separated for monorepos (e.g. "services/api,services/worker"). If image is set, this is ignored.no.
imageDocker image to scan (e.g. alpine:3.21,ghcr.io/org/app:latest). If set, scan-path is ignored.no""
fail-on-errorFail the job if SBOM generation fails.notrue
dry-runGenerate the SBOM without signing or uploading. Useful for testing.nofalse
attestGenerate a signed SLSA provenance attestation for each SBOM. Requires id-token:write permission.nofalse
oci-imageOCI image reference to attach the SBOM to (e.g. ghcr.io/org/app@sha256:...). Requires prior login with docker/login-action. If set, the SBOM is attached to the image in the registry.no""
namedescription
sbom-pathLocal path(s) of the generated SBOM file(s). Comma-separated when multiple formats are used.
sbom-urlDownload URL(s) of the SBOM(s) on the GitHub Release. Comma-separated when multiple formats are used.
signature-bundlePath(s) to the Cosign signature bundle(s). Comma-separated when multiple formats are used.