diff --git a/solver/llbsolver/bridge.go b/solver/llbsolver/bridge.go index d28fde356..b0ec157b4 100644 --- a/solver/llbsolver/bridge.go +++ b/solver/llbsolver/bridge.go @@ -142,9 +142,6 @@ func (b *llbBridge) Solve(ctx context.Context, req frontend.SolveRequest, sid st if req.Definition != nil && req.Definition.Def != nil { res = &frontend.Result{Ref: newResultProxy(b, req)} - if req.Evaluate { - _, err = res.Ref.Result(ctx) - } } else if req.Frontend != "" { f, ok := b.frontends[req.Frontend] if !ok { @@ -157,6 +154,12 @@ func (b *llbBridge) Solve(ctx context.Context, req frontend.SolveRequest, sid st } else { return &frontend.Result{}, nil } + if req.Evaluate { + err = res.EachRef(func(ref solver.ResultProxy) error { + _, err := res.Ref.Result(ctx) + return err + }) + } if len(res.Refs) > 0 { for p := range res.Refs {