Skip to content

Commit a9fce37

Browse files
Merge pull request #85 from LaurentGoderre/jq-template-functions
Added shared module for jq template with SBOM generator
2 parents a226be9 + 08c9261 commit a9fce37

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

scripts/template-helper-functions.jq

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#input package
2+
# {
3+
# name: "packageName",
4+
# version: "packageVersion",
5+
# params: {
6+
# "foo": "bar"
7+
# }
8+
# licenses: ["packageLicense" ... ]
9+
# }
10+
#output: object
11+
def sbom:
12+
{
13+
spdxVersion: "SPDX-2.3",
14+
SPDXID: "SPDXRef-DOCUMENT",
15+
name: (.name + "-sbom"),
16+
packages: [
17+
{
18+
name: .name,
19+
versionInfo: .version,
20+
SPDXID: ("SPDXRef-Package--" + .name),
21+
externalRefs: [
22+
{
23+
referenceCategory: "PACKAGE-MANAGER",
24+
referenceType: "purl",
25+
referenceLocator: ("pkg:generic/" + .name + "@" + .version + "?" + (.params | [to_entries[] | .key + "=" + .value] | join("\u0026")))
26+
}
27+
],
28+
licenseDeclared: (if .licenses | length > 0 then
29+
(.licenses | join(" AND "))
30+
else
31+
"NOASSERTION"
32+
end)
33+
}
34+
]
35+
}
36+
;

0 commit comments

Comments
 (0)