Skip to content

feat: SBOM generation and supply chain security (SLSA Level 2)#375

Merged
raifdmueller merged 2 commits into
mainfrom
356-sbom-generation-signed-releases
May 27, 2026
Merged

feat: SBOM generation and supply chain security (SLSA Level 2)#375
raifdmueller merged 2 commits into
mainfrom
356-sbom-generation-signed-releases

Conversation

@paulefl
Copy link
Copy Markdown
Collaborator

@paulefl paulefl commented May 7, 2026

Summary

Implements Software Bill of Materials (SBOM) generation and supply chain security standards (SLSA Level 2).

Changes:

  • SBOM Generation: .goreleaser.yml configured to generate SPDX + CycloneDX formats in releases
  • SBOM.md: Comprehensive guide for auditing dependencies, using SBOMs in compliance processes
  • SECURITY.md: Vulnerability disclosure, signed releases, incident response policy

Features:

  • ✅ SBOM in two formats (SPDX + CycloneDX) for maximum compatibility
  • ✅ Deterministic builds (pinned go.mod, version ldflags)
  • ✅ Signed commits and releases (v1.0.0+)
  • ✅ Vulnerability response timeline (24h acknowledge, 5d patch)
  • ✅ SLSA Level 2 compliance roadmap

Fixes #356

🤖 Generated with Claude Code

Adds documentation and CI configuration for:
- SBOM generation (SPDX + CycloneDX formats) in release pipeline
- Supply chain security standards (SLSA Level 2 compliance)
- Vulnerability disclosure policy
- Signed commits and releases
- Dependency update policy

Changes:
- .goreleaser.yml: Add sboms section with SPDX + CycloneDX generation
- SBOM.md: Document SBOM usage, formats, dependency policy
- SECURITY.md: Vulnerability disclosure, signed releases, incident response

Fixes #356

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Copy link
Copy Markdown
Collaborator

@raifdmueller raifdmueller left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

Minimal, correct addition of SPDX + CycloneDX SBOM generation to goreleaser. Good supply chain hygiene. Must merge after #389 which also touches .goreleaser.yml.

…ut names

- .goreleaser.yml: use {{ .ArtifactName }} template for SBOM output names to avoid
  filename conflicts when generating SBOMs for multiple platform archives
- SBOM.md: fix CycloneDX format header and examples (.xml → .json), update example
  filenames to match artifact-based template pattern
- SECURITY.md: fix govulncheck command (go govulncheck → govulncheck ./...)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

📊 Test Report (Multi-OS)

Metric 🐧 Linux 🪟 Windows 🍎 macOS
Total Tests 805 805 805
✅ Passed 802 (99.6%) 802 (99.6%) 802 (99.6%)
❌ Failed 0 0 0
⏱️ Duration 7.45s 11.04s 6.89s
📦 Coverage 68.8% 68.7% 68.7%

💡 Full report: Download artifacts from this workflow run.

@paulefl
Copy link
Copy Markdown
Collaborator Author

paulefl commented May 27, 2026

Code & Security Review — abgeschlossen ✅

Security Review: Keine Findings. Reine Config- und Dokumentationsänderungen, keine Runtime-Auswirkung. Der PR verbessert die Supply-Chain-Sicherheit.

Code Review: 3 Issues gefunden und direkt gefixt (Commit be1be27):

# Problem Fix
1 .goreleaser.yml: Statische SBOM-Output-Namen (sbom.spdx.json) — bei Multi-Platform-Builds überschreiben sich die Dateien Template-Variablen: {{ .ArtifactName }}.spdx.json / ...cyclonedx.json
2 SBOM.md: CycloneDX-Format als .xml dokumentiert, tatsächlich aber cyclonedx-json.json Alle .xml-Referenzen auf .json korrigiert, Beispiel-Dateinamen aktualisiert
3 SECURITY.md: go govulncheck ist kein gültiger Befehl Korrigiert auf govulncheck ./...

CI: ✅ Grün — merge-bereit nach CI-Bestätigung.

@raifdmueller raifdmueller merged commit c91c237 into main May 27, 2026
9 of 10 checks passed
@raifdmueller raifdmueller deleted the 356-sbom-generation-signed-releases branch May 27, 2026 13:32
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.

feat: SBOM Generation & Signed Releases für Supply Chain Security

2 participants