@@ -30,7 +30,7 @@ Included with `mode=min` and `mode=max`.
30
30
The ` buildType ` field is set to ` https://mobyproject.org/buildkit@v1 ` can be
31
31
used to determine the structure of the provenance content.
32
32
33
- ```
33
+ ``` json
34
34
"buildType" : " https://mobyproject.org/buildkit@v1" ,
35
35
```
36
36
@@ -49,6 +49,8 @@ Describes the config that initialized the build.
49
49
},
50
50
"entryPoint" : " Dockerfile"
51
51
},
52
+ ...
53
+ },
52
54
```
53
55
54
56
For builds initialized from a remote context, like a Git or HTTP URL, this
@@ -64,7 +66,6 @@ Describes build inputs passed to the build.
64
66
65
67
``` json
66
68
"invocation" : {
67
- ...
68
69
"parameters" : {
69
70
"frontend" : " gateway.v0" ,
70
71
"args" : {
@@ -77,11 +78,14 @@ Describes build inputs passed to the build.
77
78
{
78
79
"id" : " GIT_AUTH_HEADER" ,
79
80
"optional" : true
80
- }
81
+ },
81
82
...
82
83
],
83
84
"ssh" : [],
84
- "locals" : [],
85
+ "locals" : []
86
+ },
87
+ ...
88
+ },
85
89
```
86
90
87
91
The following fields are included with both ` mode=min ` and ` mode=max ` :
@@ -109,9 +113,12 @@ The following fields are only included with `mode=max`:
109
113
Included with ` mode=min ` and ` mode=max ` .
110
114
111
115
``` json
116
+ "invocation" : {
112
117
"environment" : {
113
118
"platform" : " linux/amd64"
114
- }
119
+ },
120
+ ...
121
+ },
115
122
```
116
123
117
124
The only value BuildKit currently sets is the ` platform ` of the current build
@@ -150,7 +157,7 @@ determine if the artifact has been updated compared to when the build ran.
150
157
"digest" : {
151
158
"sha1" : " 4b220de5058abfd01ff619c9d2ff6b09a049bea0"
152
159
}
153
- }
160
+ },
154
161
...
155
162
],
156
163
```
@@ -171,36 +178,38 @@ field for every step.
171
178
172
179
``` json
173
180
"buildConfig" : {
174
- "llbDefinition" : [
175
- {
176
- "id" : " step0" ,
177
- "op" : {
178
- "Op" : {
179
- "exec" : {
180
- "meta" : {
181
- "args" : [
182
- " /bin/sh" ,
183
- " -c" ,
184
- " go build ."
185
- ],
186
- "env" : [
187
- " PATH=/go/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" ,
188
- " GOPATH=/go" ,
189
- " GOFLAGS=-mod=vendor" ,
190
- ],
191
- "cwd" : " /src" ,
192
- },
193
- "mounts" : [... ]
194
- }
195
- },
196
- "platform" : {... },
181
+ "llbDefinition" : [
182
+ {
183
+ "id" : " step0" ,
184
+ "op" : {
185
+ "Op" : {
186
+ "exec" : {
187
+ "meta" : {
188
+ "args" : [
189
+ " /bin/sh" ,
190
+ " -c" ,
191
+ " go build ."
192
+ ],
193
+ "env" : [
194
+ " PATH=/go/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" ,
195
+ " GOPATH=/go" ,
196
+ " GOFLAGS=-mod=vendor" ,
197
+ ],
198
+ "cwd" : " /src" ,
199
+ },
200
+ "mounts" : [... ]
201
+ }
197
202
},
198
- "inputs" : [
199
- " step8:0" ,
200
- " step2:0" ,
201
- ]
203
+ "platform" : {... },
202
204
},
203
- ...
205
+ "inputs" : [
206
+ " step8:0" ,
207
+ " step2:0" ,
208
+ ]
209
+ },
210
+ ...
211
+ ]
212
+ },
204
213
```
205
214
206
215
## ` metadata.buildInvocationId ` [ (SLSA)] ( https://slsa.dev/provenance/v0.2#metadata.buildIncocationId )
@@ -214,6 +223,8 @@ versions of the image.
214
223
``` json
215
224
"metadata" : {
216
225
"buildInvocationID" : " rpv7a389uzil5lqmrgwhijwjz" ,
226
+ ...
227
+ },
217
228
```
218
229
219
230
## ` metadata.buildStartedOn ` [ (SLSA)] ( https://slsa.dev/provenance/v0.2#metadata.buildStartedOn )
@@ -223,7 +234,10 @@ Included with `mode=min` and `mode=max`.
223
234
Timestamp when the build started.
224
235
225
236
``` json
237
+ "metadata" : {
226
238
"buildStartedOn" : " 2021-11-17T15:00:00Z" ,
239
+ ...
240
+ },
227
241
```
228
242
229
243
## ` metadata.buildFinishedOn ` [ (SLSA)] ( https://slsa.dev/provenance/v0.2#metadata.buildFinishedOn )
@@ -233,7 +247,10 @@ Included with `mode=min` and `mode=max`.
233
247
Timestamp when the build finished.
234
248
235
249
``` json
250
+ "metadata" : {
236
251
"buildFinishedOn" : " 2021-11-17T15:01:00Z" ,
252
+ ...
253
+ },
237
254
```
238
255
239
256
## ` metadata.completeness ` [ (SLSA)] ( https://slsa.dev/provenance/v0.2#metadata.completeness )
@@ -257,12 +274,14 @@ repository all materials can be tracked by BuildKit and `completeness.materials`
257
274
is true.
258
275
259
276
``` json
277
+ "metadata" : {
260
278
"completeness" : {
261
279
"parameters" : true ,
262
280
"environment" : true ,
263
281
"materials" : true
264
- }
265
- }
282
+ },
283
+ ...
284
+ },
266
285
```
267
286
268
287
## ` metadata.reproducible ` [ (SLSA)] ( https://slsa.dev/provenance/v0.2#metadata.reproducible )
@@ -271,7 +290,10 @@ Defines if the build result is supposed to be byte-by-byte reproducible. This
271
290
value can be set by the user with the ` reproducible=true ` attestation parameter.
272
291
273
292
``` json
274
- "reproducible" : false
293
+ "metadata" : {
294
+ "reproducible" : false ,
295
+ ...
296
+ },
275
297
```
276
298
277
299
## ` metadata.https://mobyproject.org/buildkit@v1#hermetic `
@@ -286,6 +308,7 @@ commands or disables network with `--network=none` flag.
286
308
"metadata" : {
287
309
"https://mobyproject.org/buildkit@v1#hermetic" : true ,
288
310
...
311
+ },
289
312
```
290
313
291
314
## ` metadata.https://mobyproject.org/buildkit@v1#metadata `
@@ -295,6 +318,17 @@ Partially included with `mode=min`.
295
318
This extension field defines BuildKit-specific additional metadata that is not
296
319
part of the SLSA provenance spec.
297
320
321
+ ``` json
322
+ "metadata" : {
323
+ "https://mobyproject.org/buildkit@v1#metadata" : {
324
+ "source" : {... },
325
+ "layers" : {... },
326
+ "vcs" : {... },
327
+ },
328
+ ...
329
+ },
330
+ ```
331
+
298
332
### ` source `
299
333
300
334
Only included with ` mode=max ` .
0 commit comments