Conda ecosystem support (basic)#4002
Conversation
9d13799 to
1a30969
Compare
|
Thank you, @SimeonStoykovQC! This already looks like a first sensible version that successfully produces found vulnerabilities in
This is probably the same as in every other ecosystem. Neither do they detect it. The plan for the cond ecosystem is to follow what PyPI/Python did with PEP770: Include SBOMs in packages that ship statically linked packages. For the PURLs: This will be addressed in the linked Conda Enhancement Proposal, and I know that @pavelzw is working on revamping this and getting it over the finish line. I guess this PR here should not be blocked by that, though. |
...aloger/conda/test-fixtures/conda-meta-python-c-etc/conda-meta/zlib-1.2.11-h90dfc92_1014.json
Show resolved
Hide resolved
1a30969 to
6cc34ef
Compare
Signed-off-by: Simeon Stoykov <simeon.stoykov@quantco.com>
Signed-off-by: Simeon Stoykov <simeon.stoykov@quantco.com>
Signed-off-by: Simeon Stoykov <simeon.stoykov@quantco.com>
Signed-off-by: Simeon Stoykov <simeon.stoykov@quantco.com>
Signed-off-by: Simeon Stoykov <simeon.stoykov@quantco.com>
Signed-off-by: Simeon Stoykov <simeon.stoykov@quantco.com>
Signed-off-by: Simeon Stoykov <simeon.stoykov@quantco.com>
Signed-off-by: Simeon Stoykov <simeon.stoykov@quantco.com>
6cc34ef to
36b5254
Compare
spiffcs
left a comment
There was a problem hiding this comment.
Kicked off the CI Checks. CODE LGTM - If there are any failures I'll jump in and try to fix them
|
@ SimeonStoykovQC I'm on a livestream at the moment but will take a look at these failures when I have a second. |
|
Thanks, I will take a look again tomorrow (CET timezone) in case any code fixes are needed. |
|
Hey @spiffcs, I think the functionality tests pass, but the new conda package type and cataloger need to be added in a few places. Do you have time to help with this and make the CI green? Happy to do it myself if I have rights for running the CI. |
|
Yes! I've been cruising down the PR track today and will take a look here. It's getting a bit late in the day so maybe tonight or tomorrow, but it's now on my ever expanding txt file of TODOs to tackle this week 😄 |
|
A few things came up today so I've been trying to work through the surprise WIP, but this is still very high on my - fix and get more PRS across the line in syft list. |
|
Hey, no problem, let me know if we can split the work. |
Signed-off-by: Christopher Phillips <32073428+spiffcs@users.noreply.github.com>
Signed-off-by: Christopher Angelo Phillips <32073428+spiffcs@users.noreply.github.com>
|
updated static analysis to generate new schema because of the new metadata type Edit: This one is ready so it wins the schema race. Doing one more quick PR review before merge |
Signed-off-by: Christopher Phillips <32073428+spiffcs@users.noreply.github.com>
Signed-off-by: Christopher Phillips <32073428+spiffcs@users.noreply.github.com>
Description
This PR introduces basic support for sbom generation of packages in conda environments.
Status Quo
Up until now, syft had limited capabilities in conda environments and relied on language-specific catalogers (e.g. python and go). This meant that it wouldn't detect packages such as
zlib, even though the metadata needed is already accessible.Scope
The scope of this PR is to provide a minimum-effort conda support with the metadata that is already available, until the syft/grype and conda ecosystems decide on a more comprehensive approach (see #932 and conda/ceps#63).
The known shortcomings of this implementation are:
Implementation
The implementation partially addresses #932.
Each installed package in a conda environment produces a JSON metadata file inside the
conda-metadirectory. It provides a name and a version, among other things, and we use that to construct a package list.Type of change
Checklist: