Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Paketo RFC 0038: CycloneDX + Syft SBOM #399

Closed
robdimsdale opened this issue Dec 14, 2021 · 5 comments
Closed

Implement Paketo RFC 0038: CycloneDX + Syft SBOM #399

robdimsdale opened this issue Dec 14, 2021 · 5 comments
Assignees

Comments

@robdimsdale
Copy link
Member

robdimsdale commented Dec 14, 2021

To implement Paketo RFC0038, this buildpack (and the implementation buildpacks inside) will need to move from storing SBOM information in layer metadata to storing it in files that the CNB lifecycle can manipulate during the build. The RFC outlines what these files are and what they should contain.

This issue serves as a meta-issue for work required to complete this work for the Go language family. This will require (link Github issues as they are created):

[ ] Add filesystem-based SBOM in CPython

[ ] Add filesystem-based SBOM in Pipenv

[ ] Add filesystem-based SBOM in Pip

[ ] Add filesystem-based SBOM in Miniconda

[ ] Add filesystem-based SBOM in Poetry

[ ] Adding SBOM support for application dependencies in Pipenv Install

[ ] Adding SBOM support for application dependencies in Pip Install

[ ] Adding SBOM support for application dependencies in Conda Env Update

[ ] Adding SBOM support for application dependencies in Poetry Install

We should also evaluate if there any use-cases for generating an SBOM in the Python Start and Poetry Run buildpacks separate from SBOM generation for dependencies in the Pip Install/Pipenv Install/Conda Env Update/Poetry Install buildpacks.

Switching from label-based BOM to filesystem based SBOM will be a breaking change for consumers of this buildpack (and the buildpacks within them) so it might be prudent to consider also doing any additional breaking changes (e.g. dropping support for buildpack.yml) at the same time. Adding support for a filesystem SBOM will now be in addition to the existing label-based SBOM and will not be a breaking change.

@robdimsdale
Copy link
Member Author

Update: we will wait for first-class support in pack (and hence occam) before implementing this. We will support both the metadata/label format and the filesystem format via packit/v2.

Marking this as blocked until occam testing framework is available.

@robdimsdale
Copy link
Member Author

This is unblocked - the testing framework in occam is available for use.

@robdimsdale robdimsdale removed the status/blocked This issue has been triaged and resolving it is blocked on some other issue label Apr 19, 2022
@robdimsdale robdimsdale self-assigned this Apr 21, 2022
@robdimsdale robdimsdale added the status/blocked This issue has been triaged and resolving it is blocked on some other issue label Apr 21, 2022
@robdimsdale
Copy link
Member Author

This is blocked on the upstream issues/PRs. Once they are all merged and the buildpacks are released we can unblock this issue and bump them in this buildpack.

@robdimsdale robdimsdale removed the status/blocked This issue has been triaged and resolving it is blocked on some other issue label Apr 27, 2022
@robdimsdale
Copy link
Member Author

All sub-buildpacks have been release with SBOM support; we are waiting on automation to pick them up and bump them in this buildpack's buildpack.toml. Once that happens this issue will be complete.

@thitch97 thitch97 closed this as completed May 4, 2022
@thitch97
Copy link
Contributor

thitch97 commented May 4, 2022

The implementation buildpacks have been updated in buildpack.toml and v0.14.0 of the buildpack has been released with SBOM support

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

No branches or pull requests

2 participants