Ingest dependency graph and show dependency path
Why are we doing this work
As discussed in this thread, dependency_files will be removed from the security reports and there is a need of an equivalent feature from cyclonedx reports (i.e., dependency-graph).
Relevant links
Implementation plan
-
database Create a new jsonbcolumn insbom_occurrencesin order to storeancestorsin the following format:[{name: 'name', version: '0.0.0'}]. -
backend Update ancestors to be based on the persisted information. -
backend Update occurrence_map and/or occurrence_map_collection in order to process (based on dependsOn) occurrences into a hash containing for fast lookup of shortest paths. See this comment for more details. -
backend Update ingestion to ingest ancestors.
open question: Should we also store this information on sbom_sources ?
Report examples:
| Dependency scanning | CycloneDx |
|---|---|
| gl-dependency-scanning-report.json | gl-sbom-trivy-report.cdx.json |
Example of the existing feature:
Verification steps
- FF has been enabled to this project.
- Go the project level dependency list page.
- Check that there are ancestors being displayed (including popup dialog).
Edited by Zamir Martins
