MCPcopy Create free account
hub / github.com/docker/buildx / Wrap

Function Wrap

util/progress/progress.go:19–48  ·  view source on GitHub ↗
(name string, l Logger, fn func(SubLogger) error)

Source from the content-addressed store, hash-verified

17}
18
19func Wrap(name string, l Logger, fn func(SubLogger) error) (err error) {
20 dgst := digest.FromBytes([]byte(identity.NewID()))
21 tm := time.Now()
22 l(&client.SolveStatus{
23 Vertexes: []*client.Vertex{{
24 Digest: dgst,
25 Name: name,
26 Started: &tm,
27 }},
28 })
29
30 defer func() {
31 tm2 := time.Now()
32 errMsg := ""
33 if err != nil {
34 errMsg = err.Error()
35 }
36 l(&client.SolveStatus{
37 Vertexes: []*client.Vertex{{
38 Digest: dgst,
39 Name: name,
40 Started: &tm,
41 Completed: &tm2,
42 Error: errMsg,
43 }},
44 })
45 }()
46
47 return fn(&subLogger{dgst, l})
48}
49
50type subLogger struct {
51 dgst digest.Digest

Callers 7

runDialStdioFunction · 0.92
readBakeFilesFunction · 0.92
runCreateFunction · 0.92
BootstrapMethod · 0.92
BootstrapMethod · 0.92
BootstrapMethod · 0.92
LoadImageMethod · 0.92

Calls 1

ErrorMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…