summaryrefslogtreecommitdiff
path: root/Documentation/sbom/sbom_generation.plantuml
blob: e8d9f1ebbf5561e9ca55a6ceb5656e00cfb409f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
@startuml

map "src/sbom/compiler-gcc.json" as gcc {
    software-name => GCC
    version => x.y.z
    ... => ...
}
map "src/sbom/intel-me.json" as me {
    software-name => Intel Mangement Engine
    ... => ...
}
map "src/sbom/intel-microcode.json" as ucode {
    software-name => Intel Microcode
    ... => ...
}
map "src/sbom/generic-ec.json" as ec {
    software-name => ecxyz
    ... => ...
}
map "src/sbom/generic-fsp.json" as fsp {
    software-name => Firmware Support Package
    version => x.y.z
    ... => ...
}
map "src/sbom/payload-[...].json" as payload {
    software-name => ...
    version => x.y.z
    ... => ...
}
map "src/sbom/coreboot.json" as coreboot {
    software-name => coreboot
    version => x.y.z
    url => coreboot.rocks
    ... => ...
}
object "sbom.uswid" as uswid {
    merged SBOM data in binary format
}
object goswid {
    # ./goswid
        --compiler gcc.json
        --parent coreboot.json
        --requires fsp.json,payload.json
        intel-me.json
        intel-ec.json
        intel-ucode.json
        --output sbom.uswid
}

left to right direction
gcc --> goswid
me --> goswid
ucode --> goswid
goswid <-- ec
goswid <-- fsp
goswid <-- payload

coreboot -up> goswid
goswid -up> uswid

@enduml