Skip to content

Add vendored-lib CycloneDX SBOM generator and CI workflow - #10

Open
ajlennon wants to merge 4 commits into
kettlecompanionfrom
feat/ci-sbom-cyclonedx
Open

Add vendored-lib CycloneDX SBOM generator and CI workflow#10
ajlennon wants to merge 4 commits into
kettlecompanionfrom
feat/ci-sbom-cyclonedx

Conversation

@ajlennon

Copy link
Copy Markdown
Member

Summary

  • Add tools/sbom/generate_lib_cyclonedx.py to emit CycloneDX 1.5 from lib/** manifests (116 components on current tree).
  • Add version-coverage gate + sbom.yml CI (manifest CDX artifact + Syft filesystem scan).
  • Snapshot sbom/kettlecompanion-libs.cdx.json for CRA evidence handoff.

Note: This is manifest/repo-scan provenance, not yet build-attested. A later change should merge PlatformIO package locks after pio run -e tasmota-kettle.

Test plan

  • CI SBOM workflow green on this PR
  • Download kettlecompanion-libs-cdx artifact and confirm JPEGDEC @1.2.7 with vcs_url
  • Local: python3 tools/sbom/generate_lib_cyclonedx.py --root . --out /tmp/out.cdx.json && python3 tools/sbom/check_min_elements.py /tmp/out.cdx.json

Emit a manifest-derived inventory for CRA audits (not build-attested yet) and gate version coverage in CI.

Assisted-by: Cursor <cursoragent@cursor.com>
Assisted-by: Cursor <cursoragent@cursor.com>
Record firmware SHA-256, PIO package versions, and LDF link flags after successful pio run; extend CI to build then emit the attested SBOM.

Assisted-by: Cursor <cursoragent@cursor.com>
Assisted-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant