Replies: 2 comments 5 replies
-
|
As far as I know the goal for the next release, as per compatibility with RHTPA 1.3.1, is only to have an endpoint to download the licenses for a particular SBOM. So having something like
Currently the UI does use |
Beta Was this translation helpful? Give feedback.
-
|
Done in #1331 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
With the current work on the license exporter feature, there will be a new table being added:
sbom_package_license. This will contain a reference of an SBOM package/component to a license.We currently have two similar tables:
purl_license_assertionandcpe_license_assertion. Both capture the same information. However, instead of referencing the SBOM package/component, they reference PURLs and CPEs. But still, only make a statement in the context of an SBOM.As we currently already have PURL and CPE aliases for SBOM packages/components, that doesn't seem to make much sense. For PURLs, there's actually the special case, that we only make a statement for a PURL without its qualifiers. Which might actually not be correct.
Proposal
We need to add the
sbom_package_licensetable in any case. Otherwise we could not store license information for SBOM packages/components which neither have a PURL nor a CPE.We drop the
purl_license_assertionandcpe_license_assertiontables, as they are redundant and most likely bugged.Implications
Simply dropping those tables would require us to also drop the endpoints making use of those tables. @bxf12315 anaylized this can came to the following conclusion:
The question is, do we need those endpoints at the moment? Maybe a question to @carlosthe19916 @JimFuller-RedHat @jcrossley3
Plan A
If the answer to that is "no", then I would say we simply remove them. And add whatever we need in the future.
Plan B
If the answer to that is "yes", then I would say we drop those tables, and re-implement the logic using a table join between the
sbom_package,purl/cpe(refs) andsbom_package_licensetables.This would have the impact that we need additional joins when doing a query, but we'd have less data stored.
I that case, I'd also say that we split the task into:
purl_license_assertandcpe_license_assertiontable, implementing the joinBeta Was this translation helpful? Give feedback.
All reactions