mirror of
https://github.com/moby/buildkit.git
synced 2026-08-09 01:01:08 +00:00
solver: always respect value of evaluate field
Always use the value of the evaluate field to force result generation, which previously was not performed for frontends. This improves API consistency, and ensures the value is used regardless of whether the solver uses a frontend, or a raw definition. Signed-off-by: Justin Chadwell <me@jedevc.com>
This commit is contained in:
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user