From 9753f63f57eaf84f5307eaa1c78006808771621a Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Sat, 11 Feb 2023 22:56:15 +0100 Subject: [PATCH] builder: add worker gc policies and labels Signed-off-by: CrazyMax --- builder/node.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/builder/node.go b/builder/node.go index 459dd282..137142c3 100644 --- a/builder/node.go +++ b/builder/node.go @@ -10,6 +10,7 @@ import ( "github.com/docker/buildx/util/dockerutil" "github.com/docker/buildx/util/imagetools" "github.com/docker/buildx/util/platformutil" + "github.com/moby/buildkit/client" "github.com/moby/buildkit/util/grpcerrors" ocispecs "github.com/opencontainers/image-spec/specs-go/v1" "github.com/pkg/errors" @@ -23,6 +24,8 @@ type Node struct { Driver driver.Driver DriverInfo *driver.Info Platforms []ocispecs.Platform + GCPolicy []client.PruneInfo + Labels map[string]string ImageOpt imagetools.Opt ProxyConfig map[string]string Version string @@ -182,8 +185,12 @@ func (n *Node) loadData(ctx context.Context) error { if err != nil { return errors.Wrap(err, "listing workers") } - for _, w := range workers { + for idx, w := range workers { n.Platforms = append(n.Platforms, w.Platforms...) + if idx == 0 { + n.GCPolicy = w.GCPolicy + n.Labels = w.Labels + } } n.Platforms = platformutil.Dedupe(n.Platforms) inf, err := driverClient.Info(ctx)