-
Notifications
You must be signed in to change notification settings - Fork 42
Description
Overview
Enhance the Python SDK release workflow to include supply chain security features: provenance and Software Bill of Materials (SBOM) generation.
Background
During review of PR #264, it was identified that the release workflow should include:
- Provenance: Cryptographic proof of how the package was built using GitHub's OIDC tokens
- SBOM: Software Bill of Materials listing all dependencies for security scanning and compliance
Implementation Requirements
Provenance
- Add
--provenanceflag touv publishcommand - This will automatically generate and upload cryptographic signatures to PyPI
- Enables users to verify packages weren't tampered with and came from the official repo
SBOM Generation
- Generate requirements file:
uv export --format=requirements-txt > requirements.txt - Create SBOM using tools like
cyclonedx-pyorpip-audit - Upload SBOM as workflow artifact and/or attach to GitHub release
Benefits
- Enhanced Security: Users can verify package authenticity
- Vulnerability Tracking: SBOMs enable automated security scanning
- Compliance: Meet enterprise requirements for software supply chain transparency
- Industry Best Practice: Aligns with modern software security standards
Acceptance Criteria
-
uv publish --provenanceflag added to release workflow - SBOM generation integrated into workflow
- SBOM uploaded as workflow artifact
- Documentation updated to explain provenance/SBOM benefits
- Verify provenance appears correctly on PyPI
References
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels