Skip to content

Commit 323bc28

Browse files
committed
Add documentation about the benchmark_purls pipeline #1804
Signed-off-by: tdruez <[email protected]>
1 parent 4a02b63 commit 323bc28

File tree

1 file changed

+34
-1
lines changed

1 file changed

+34
-1
lines changed

docs/built-in-pipelines.rst

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,45 @@ Analyse Docker Windows Image
4848

4949
.. _pipeline_benchmark_purls:
5050

51-
Benchmark Purls (addon)
51+
Benchmark PURLs (addon)
5252
-----------------------
53+
54+
To check an **SBOM against a list of expected Package URLs (PURLs)**:
55+
56+
1. **Create a new project** and provide two inputs:
57+
58+
* The SBOM file you want to check.
59+
* A list of expected PURLs in a ``*-purls.txt`` file with one PURL per line.
60+
61+
.. tip:: You may also flag any filename using the ``purls`` input tag.
62+
63+
2. **Run the pipelines**:
64+
65+
* Select and run the ``load_sbom`` pipeline to load the SBOM.
66+
* Run the ``benchmark_purls`` pipeline to validate against the expected PURLs.
67+
68+
3. **Download the results** from the "output" section of the project.
69+
70+
The output file contains only the differences between the discovered PURLs and
71+
the expected PURLs:
72+
73+
* Lines starting with ``-`` are missing from the project.
74+
* Lines starting with ``+`` are unexpected in the project.
75+
76+
.. note::
77+
The ``load_sbom`` pipeline is provided as an example to benchmark external
78+
tools using SBOMs as inputs. You can also run ``benchmark_purls`` directly
79+
after any ScanCode.io pipeline to validate the discovered PURLs.
80+
81+
.. tip::
82+
You can provide multiple expected PURLs files.
83+
84+
5385
.. autoclass:: scanpipe.pipelines.benchmark_purls.BenchmarkPurls()
5486
:members:
5587
:member-order: bysource
5688

89+
5790
.. _pipeline_collect_strings_gettext:
5891

5992
Collect string with Xgettext (addon)

0 commit comments

Comments
 (0)