File tree Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Original file line number Diff line number Diff line change 3939 - run : opam exec -- dune build COMMIT
4040 - store_artifacts :
4141 path : ./_build/default/COMMIT
42+ - run : opam exec -- dune build vpnkit.spdx.json
43+ - store_artifacts :
44+ path : ./_build/default/vpnkit.spdx.json
4245 - run : opam exec -- dune build licenses.json
4346 - store_artifacts :
4447 path : ./_build/default/licenses.json
Original file line number Diff line number Diff line change 2626 (deps vpnkit.exe (:gen ./scripts/mac_package.exe))
2727 (action (run %{gen} -out %{target} -in %{deps})))
2828
29+ (rule
30+ (alias sbom)
31+ (target vpnkit.spdx.json)
32+ (deps (:gen ./scripts/sbom.sh))
33+ (action (run %{gen} %{target})))
34+
2935(rule
3036 (alias e2e)
3137 (deps src/hostnet_test/main.exe
Original file line number Diff line number Diff line change 1+ #! /usr/bin/env sh
2+ set -e
3+
4+ # echo $OPAM_SWITCH_PREFIX
5+ echo $1
6+
7+ pkg=(
8+ $( opam list -s --installed --required-by=vpnkit --recursive --columns package --nobuild --color=never)
9+ )
10+
11+ dir=" sbom_temp"
12+ mkdir " $dir "
13+
14+ cp vpnkit.opam " $dir "
15+
16+ for p in ${pkg[@]} ; do
17+ echo $p >> " $1 "
18+ cp -r " $OPAM_SWITCH_PREFIX /.opam-switch/packages/$p " " $dir /$p "
19+ done
20+
21+ touch vpnkit.spdx.json
22+ docker run --rm \
23+ -v ./$dir :/vpnkit \
24+ -v ./vpnkit.spdx.json:/out/vpnkit.spdx.json \
25+ -e BUILDKIT_SCAN_SOURCE=/vpnkit \
26+ -e BUILDKIT_SCAN_DESTINATION=/out \
27+ -e BUILDKIT_SCAN_EXTRA_SCANNERS=opam-cataloger \
28+ docker/scout-sbom-indexer:1.15
29+
30+ # Fix the relationships and file to point to the binary
31+ mv vpnkit.spdx.json vpnkit.spdx
32+ jq -c --arg uid " ${$(uuidgen)// -/ } " '
33+ "SPDXRef-File-\($uid)" as $fileId
34+ | .predicate
35+ | del(.files[])
36+ | .files |= . + [
37+ {
38+ "SPDXID": $fileId,
39+ "fileName": "vpnkit.exe",
40+ "licenseConcluded": "NOASSERTION"
41+ }
42+ ]
43+ | .relationships[] |= (
44+ select(.relationshipType == "OTHER").relatedSpdxElement |= $fileId
45+ )
46+ ' vpnkit.spdx > vpnkit.spdx.json
47+
48+ rm -rf sbom_temp
You can’t perform that action at this time.
0 commit comments