You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: schema/bom-1.5.proto
+30Lines changed: 30 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -416,6 +416,36 @@ message Metadata {
416
416
optionalLicenseChoicelicenses=7;
417
417
// Specifies optional, custom, properties
418
418
repeatedPropertyproperties=8;
419
+
// The product lifecycle(s) that this BOM represents.
420
+
repeatedLifecycleslifecycles=9;
421
+
}
422
+
423
+
messageLifecycles {
424
+
oneofchoice {
425
+
// A pre-defined phase in the product lifecycle.
426
+
LifecyclePhasephase=1;
427
+
// The name of the lifecycle phase
428
+
stringname=2;
429
+
}
430
+
// The description of the lifecycle phase
431
+
optionalstringdescription=2;
432
+
}
433
+
434
+
enumLifecyclePhase {
435
+
// BOM produced early in the development lifecycle containing inventory of components and services that are proposed or planned to be used. The inventory may need to be procured, retrieved, or resourced prior to use.
436
+
LIFECYCLE_PHASE_DESIGN=0;
437
+
// BOM consisting of information obtained prior to a build process and may contain source files and development artifacts and manifests. The inventory may need to be resolved and retrieved prior to use.
438
+
LIFECYCLE_PHASE_PRE_BUILD=1;
439
+
// BOM consisting of information obtained during a build process where component inventory is available for use. The precise versions of resolved components are usually available at this time as well as the provenance of where the components were retrieved from.
440
+
LIFECYCLE_PHASE_BUILD=2;
441
+
// BOM consisting of information obtained after a build process has completed and the resulting components(s) are available for further analysis. Built components may exist as the result of a CI/CD process, may have been installed or deployed to a system or device, and may need to be retrieved or extracted from the system or device.
442
+
LIFECYCLE_PHASE_POST_BUILD=3;
443
+
// BOM produced that represents inventory that is running and operational. This may include staging or production environments and will generally encompass multiple SBOMs describing the applications and operating system, along with HBOMs describing the hardware that makes up the system. Operations Bill of Materials (OBOM) can provide full-stack inventory of runtime environments, configurations, and additional dependencies.
444
+
LIFECYCLE_PHASE_OPERATIONS=4;
445
+
// BOM consisting of information observed through network discovery providing point-in-time enumeration of embedded, on-premise, and cloud-native services such as server applications, connected devices, microservices, and serverless functions.
446
+
LIFECYCLE_PHASE_DISCOVERY=5;
447
+
// BOM containing inventory that will be, or has been retired from operations.
Copy file name to clipboardExpand all lines: schema/bom-1.5.schema.json
+50Lines changed: 50 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -136,6 +136,56 @@
136
136
"title": "Timestamp",
137
137
"description": "The date and time (timestamp) when the BOM was created."
138
138
},
139
+
"lifecycles": {
140
+
"type": "array",
141
+
"title": "Lifecycles",
142
+
"description": "",
143
+
"additionalItems": false,
144
+
"items": {
145
+
"type": "object",
146
+
"title": "Lifecycle",
147
+
"description": "The product lifecycle(s) that this BOM represents.",
148
+
"additionalProperties": false,
149
+
"oneOf": [
150
+
{
151
+
"required": ["phase"],
152
+
"additionalProperties": false,
153
+
"properties": {
154
+
"phase": {
155
+
"type": "string",
156
+
"title": "Phase",
157
+
"description": "A pre-defined phase in the product lifecycle.\n\n* __design__ = BOM produced early in the development lifecycle containing inventory of components and services that are proposed or planned to be used. The inventory may need to be procured, retrieved, or resourced prior to use.\n* __pre-build__ = BOM consisting of information obtained prior to a build process and may contain source files and development artifacts and manifests. The inventory may need to be resolved and retrieved prior to use.\n* __build__ = BOM consisting of information obtained during a build process where component inventory is available for use. The precise versions of resolved components are usually available at this time as well as the provenance of where the components were retrieved from.\n* __post-build__ = BOM consisting of information obtained after a build process has completed and the resulting components(s) are available for further analysis. Built components may exist as the result of a CI/CD process, may have been installed or deployed to a system or device, and may need to be retrieved or extracted from the system or device.\n* __operations__ = BOM produced that represents inventory that is running and operational. This may include staging or production environments and will generally encompass multiple SBOMs describing the applications and operating system, along with HBOMs describing the hardware that makes up the system. Operations Bill of Materials (OBOM) can provide full-stack inventory of runtime environments, configurations, and additional dependencies.\n* __discovery__ = BOM consisting of information observed through network discovery providing point-in-time enumeration of embedded, on-premise, and cloud-native services such as server applications, connected devices, microservices, and serverless functions.\n* __decommission__ = BOM containing inventory that will be, or has been retired from operations.",
158
+
"enum": [
159
+
"design",
160
+
"pre-build",
161
+
"build",
162
+
"post-build",
163
+
"operations",
164
+
"discovery",
165
+
"decommission"
166
+
]
167
+
}
168
+
}
169
+
},
170
+
{
171
+
"required": ["name"],
172
+
"additionalProperties": false,
173
+
"properties": {
174
+
"name": {
175
+
"type": "string",
176
+
"title": "Name",
177
+
"description": "The name of the lifecycle phase"
178
+
},
179
+
"description": {
180
+
"type": "string",
181
+
"title": "Description",
182
+
"description": "The description of the lifecycle phase"
0 commit comments