@@ -77,9 +77,10 @@ RUN echo "ok" > /foo
77
77
"attest:provenance" : provReq ,
78
78
"build-arg:FOO" : "bar" ,
79
79
"label:lbl" : "abc" ,
80
- "vcs:source" : "https://example.invalid/repo.git" ,
80
+ "vcs:source" : "https://user:pass@ example.invalid/repo.git" ,
81
81
"vcs:revision" : "123456" ,
82
82
"filename" : "Dockerfile" ,
83
+ dockerui .
DefaultLocalNameContext + ":foo" :
"https://foo:[email protected] /foo.html" ,
83
84
},
84
85
Exports : []client.ExportEntry {
85
86
{
@@ -137,30 +138,32 @@ RUN echo "ok" > /foo
137
138
require .Equal (t , "gateway.v0" , pred .Invocation .Parameters .Frontend )
138
139
139
140
if mode == "max" || mode == "" {
140
- require .Equal (t , 3 , len (args ), "%v" , args )
141
+ require .Equal (t , 4 , len (args ), "%v" , args )
141
142
require .True (t , pred .Metadata .Completeness .Parameters )
142
143
143
144
require .Equal (t , "bar" , args ["build-arg:FOO" ])
144
145
require .Equal (t , "abc" , args ["label:lbl" ])
145
146
require .Contains (t , args ["source" ], "buildkit_test/" )
146
147
} else {
147
148
require .False (t , pred .Metadata .Completeness .Parameters )
148
- require .Equal (t , 1 , len (args ), "%v" , args )
149
+ require .Equal (t , 2 , len (args ), "%v" , args )
149
150
require .Contains (t , args ["source" ], "buildkit_test/" )
150
151
}
152
+ require .
Equal (
t ,
"https://xxxxx:[email protected] /foo.html" ,
args [
"context:foo" ])
151
153
} else {
152
154
require .Equal (t , "dockerfile.v0" , pred .Invocation .Parameters .Frontend )
153
155
154
156
if mode == "max" || mode == "" {
155
- require .Equal (t , 2 , len (args ))
157
+ require .Equal (t , 3 , len (args ))
156
158
require .True (t , pred .Metadata .Completeness .Parameters )
157
159
158
160
require .Equal (t , "bar" , args ["build-arg:FOO" ])
159
161
require .Equal (t , "abc" , args ["label:lbl" ])
160
162
} else {
161
163
require .False (t , pred .Metadata .Completeness .Parameters )
162
- require .Equal (t , 0 , len (args ), "%v" , args )
164
+ require .Equal (t , 1 , len (args ), "%v" , args )
163
165
}
166
+ require .
Equal (
t ,
"https://xxxxx:[email protected] /foo.html" ,
args [
"context:foo" ])
164
167
}
165
168
166
169
expectedBase := "pkg:docker/busybox@latest?platform=" + url .PathEscape (platforms .Format (platforms .Normalize (platforms .DefaultSpec ())))
@@ -177,7 +180,7 @@ RUN echo "ok" > /foo
177
180
178
181
if ! isClient {
179
182
require .Equal (t , "Dockerfile" , pred .Invocation .ConfigSource .EntryPoint )
180
- require .Equal (t , "https://example.invalid/repo.git" , pred .Metadata .BuildKitMetadata .VCS ["source" ])
183
+ require .Equal (t , "https://xxxxx:xxxxx@ example.invalid/repo.git" , pred .Metadata .BuildKitMetadata .VCS ["source" ])
181
184
require .Equal (t , "123456" , pred .Metadata .BuildKitMetadata .VCS ["revision" ])
182
185
}
183
186
@@ -265,6 +268,11 @@ COPY myapp.Dockerfile /
265
268
266
269
target := registry + "/buildkit/testwithprovenance:git"
267
270
271
+ // inject dummy credentials to test that they are masked
272
+ expectedURL := strings .Replace (server .URL , "http://" , "http://xxxxx:xxxxx@" , 1 )
273
+ require .NotEqual (t , expectedURL , server .URL )
274
+ server .URL = strings .Replace (server .URL , "http://" , "http://user:pass@" , 1 )
275
+
268
276
_ , err = f .Solve (sb .Context (), c , client.SolveOpt {
269
277
FrontendAttrs : map [string ]string {
270
278
"context" : server .URL + "/.git#v1" ,
@@ -318,7 +326,7 @@ COPY myapp.Dockerfile /
318
326
require .Equal (t , "" , pred .Invocation .ConfigSource .EntryPoint )
319
327
} else {
320
328
require .NotEmpty (t , pred .Invocation .Parameters .Frontend )
321
- require .Equal (t , server . URL + "/.git#v1" , pred .Invocation .ConfigSource .URI )
329
+ require .Equal (t , expectedURL + "/.git#v1" , pred .Invocation .ConfigSource .URI )
322
330
require .Equal (t , "myapp.Dockerfile" , pred .Invocation .ConfigSource .EntryPoint )
323
331
}
324
332
@@ -332,15 +340,15 @@ COPY myapp.Dockerfile /
332
340
require .Equal (t , expBase , pred .Materials [1 ].URI )
333
341
require .NotEmpty (t , pred .Materials [1 ].Digest ["sha256" ])
334
342
335
- require .Equal (t , server . URL + "/.git#v1" , pred .Materials [2 ].URI )
343
+ require .Equal (t , expectedURL + "/.git#v1" , pred .Materials [2 ].URI )
336
344
require .Equal (t , strings .TrimSpace (string (expectedGitSHA )), pred .Materials [2 ].Digest ["sha1" ])
337
345
} else {
338
346
require .Equal (t , 2 , len (pred .Materials ), "%+v" , pred .Materials )
339
347
340
348
require .Equal (t , expBase , pred .Materials [0 ].URI )
341
349
require .NotEmpty (t , pred .Materials [0 ].Digest ["sha256" ])
342
350
343
- require .Equal (t , server . URL + "/.git#v1" , pred .Materials [1 ].URI )
351
+ require .Equal (t , expectedURL + "/.git#v1" , pred .Materials [1 ].URI )
344
352
require .Equal (t , strings .TrimSpace (string (expectedGitSHA )), pred .Materials [1 ].Digest ["sha1" ])
345
353
}
346
354
0 commit comments