From bdf82ec65f663c5382bb222e436428a0aac12176 Mon Sep 17 00:00:00 2001 From: Nicolas De Loof Date: Thu, 13 Nov 2025 10:24:07 +0100 Subject: [PATCH] Added support for build.no_cache_filter Signed-off-by: Nicolas De Loof --- go.mod | 4 ++-- go.sum | 8 ++++---- pkg/compose/build_bake.go | 27 ++++++++++++++------------- pkg/compose/create.go | 4 ++-- 4 files changed, 22 insertions(+), 21 deletions(-) diff --git a/go.mod b/go.mod index af5d5a7ad2..0d297f90c5 100644 --- a/go.mod +++ b/go.mod @@ -8,7 +8,7 @@ require ( github.com/Microsoft/go-winio v0.6.2 github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d github.com/buger/goterm v1.0.4 - github.com/compose-spec/compose-go/v2 v2.9.1 + github.com/compose-spec/compose-go/v2 v2.9.2-0.20251112133323-61f9ceae27da github.com/containerd/console v1.0.5 github.com/containerd/containerd/v2 v2.2.0 github.com/containerd/errdefs v1.0.0 @@ -143,7 +143,7 @@ require ( go.opentelemetry.io/otel/sdk/metric v1.37.0 // indirect go.opentelemetry.io/proto/otlp v1.5.0 // indirect go.yaml.in/yaml/v2 v2.4.2 // indirect - go.yaml.in/yaml/v3 v3.0.4 // indirect + go.yaml.in/yaml/v4 v4.0.0-rc.3 // indirect golang.org/x/crypto v0.41.0 // indirect golang.org/x/net v0.43.0 // indirect golang.org/x/term v0.34.0 // indirect diff --git a/go.sum b/go.sum index 2aa59644bf..edf814eef7 100644 --- a/go.sum +++ b/go.sum @@ -46,8 +46,8 @@ github.com/cloudflare/cfssl v0.0.0-20180223231731-4e2dcbde5004 h1:lkAMpLVBDaj17e github.com/cloudflare/cfssl v0.0.0-20180223231731-4e2dcbde5004/go.mod h1:yMWuSON2oQp+43nFtAV/uvKQIFpSPerB57DCt9t8sSA= github.com/codahale/rfc6979 v0.0.0-20141003034818-6a90f24967eb h1:EDmT6Q9Zs+SbUoc7Ik9EfrFqcylYqgPZ9ANSbTAntnE= github.com/codahale/rfc6979 v0.0.0-20141003034818-6a90f24967eb/go.mod h1:ZjrT6AXHbDs86ZSdt/osfBi5qfexBrKUdONk989Wnk4= -github.com/compose-spec/compose-go/v2 v2.9.1 h1:8UwI+ujNU+9Ffkf/YgAm/qM9/eU7Jn8nHzWG721W4rs= -github.com/compose-spec/compose-go/v2 v2.9.1/go.mod h1:Oky9AZGTRB4E+0VbTPZTUu4Kp+oEMMuwZXZtPPVT1iE= +github.com/compose-spec/compose-go/v2 v2.9.2-0.20251112133323-61f9ceae27da h1:/9l7/s9xyyE/p4BVB3i2nbQi2U4iFcYda8CwXKQnyJY= +github.com/compose-spec/compose-go/v2 v2.9.2-0.20251112133323-61f9ceae27da/go.mod h1:Ohac1SzhO/4fXXrzWIztIVB6ckmKBv1Nt5Z5mGVESUg= github.com/containerd/cgroups/v3 v3.1.0 h1:azxYVj+91ZgSnIBp2eI3k9y2iYQSR/ZQIgh9vKO+HSY= github.com/containerd/cgroups/v3 v3.1.0/go.mod h1:SA5DLYnXO8pTGYiAHXz94qvLQTKfVM5GEVisn4jpins= github.com/containerd/console v1.0.5 h1:R0ymNeydRqH2DmakFNdmjR2k0t7UPuiOV/N/27/qqsc= @@ -446,8 +446,8 @@ go.uber.org/mock v0.6.0 h1:hyF9dfmbgIX5EfOdasqLsWD6xqpNZlXblLB/Dbnwv3Y= go.uber.org/mock v0.6.0/go.mod h1:KiVJ4BqZJaMj4svdfmHM0AUx4NJYO8ZNpPnZn1Z+BBU= go.yaml.in/yaml/v2 v2.4.2 h1:DzmwEr2rDGHl7lsFgAHxmNz/1NlQ7xLIrlN2h5d1eGI= go.yaml.in/yaml/v2 v2.4.2/go.mod h1:081UH+NErpNdqlCXm3TtEran0rJZGxAYx9hb/ELlsPU= -go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc= -go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= +go.yaml.in/yaml/v4 v4.0.0-rc.3 h1:3h1fjsh1CTAPjW7q/EMe+C8shx5d8ctzZTrLcs/j8Go= +go.yaml.in/yaml/v4 v4.0.0-rc.3/go.mod h1:aZqd9kCMsGL7AuUv/m/PvWLdg5sjJsZ4oHDEnfPPfY0= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= diff --git a/pkg/compose/build_bake.go b/pkg/compose/build_bake.go index 104be5c0f2..b816c4a09a 100644 --- a/pkg/compose/build_bake.go +++ b/pkg/compose/build_bake.go @@ -226,19 +226,20 @@ func (s *composeService) doBuildBake(ctx context.Context, project *types.Project Labels: labels, Tags: append(buildConfig.Tags, image), - CacheFrom: buildConfig.CacheFrom, - CacheTo: buildConfig.CacheTo, - NetworkMode: buildConfig.Network, - Platforms: buildConfig.Platforms, - Target: buildConfig.Target, - Secrets: secrets, - SSH: toBakeSSH(append(buildConfig.SSH, options.SSHs...)), - Pull: pull, - NoCache: noCache, - ShmSize: buildConfig.ShmSize, - Ulimits: toBakeUlimits(buildConfig.Ulimits), - Entitlements: entitlements, - ExtraHosts: toBakeExtraHosts(buildConfig.ExtraHosts), + CacheFrom: buildConfig.CacheFrom, + CacheTo: buildConfig.CacheTo, + NetworkMode: buildConfig.Network, + NoCacheFilter: buildConfig.NoCacheFilter, + Platforms: buildConfig.Platforms, + Target: buildConfig.Target, + Secrets: secrets, + SSH: toBakeSSH(append(buildConfig.SSH, options.SSHs...)), + Pull: pull, + NoCache: noCache, + ShmSize: buildConfig.ShmSize, + Ulimits: toBakeUlimits(buildConfig.Ulimits), + Entitlements: entitlements, + ExtraHosts: toBakeExtraHosts(buildConfig.ExtraHosts), Outputs: outputs, Call: call, diff --git a/pkg/compose/create.go b/pkg/compose/create.go index 59dc568714..9379cfd8e8 100644 --- a/pkg/compose/create.go +++ b/pkg/compose/create.go @@ -899,7 +899,7 @@ func bindRequiresMountAPI(bind *types.ServiceVolumeBind) bool { switch { case bind == nil: return false - case !bind.CreateHostPath: + case !bool(bind.CreateHostPath): return true case bind.Propagation != "": return true @@ -1210,7 +1210,7 @@ func buildBindOption(bind *types.ServiceVolumeBind) *mount.BindOptions { } opts := &mount.BindOptions{ Propagation: mount.Propagation(bind.Propagation), - CreateMountpoint: bind.CreateHostPath, + CreateMountpoint: bool(bind.CreateHostPath), } switch bind.Recursive { case "disabled":