From 8b499400169b3611d7dc97577e98c61acb6049e4 Mon Sep 17 00:00:00 2001 From: Martin Zihlmann Date: Sun, 25 May 2025 10:48:16 +0100 Subject: [PATCH] fix: preserve labels from base images --- pkg/executor/build.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkg/executor/build.go b/pkg/executor/build.go index f50aa813d..77a6071ec 100644 --- a/pkg/executor/build.go +++ b/pkg/executor/build.go @@ -92,7 +92,11 @@ func newStageBuilder(args *dockerfile.BuildArgs, opts *config.KanikoOptions, sta return nil, err } - imageConfig, err := initializeConfig(sourceImage, opts) + _opts := *opts + if !stage.Final { + _opts.Labels = []string{} + } + imageConfig, err := initializeConfig(sourceImage, &_opts) if err != nil { return nil, err } @@ -760,9 +764,7 @@ func DoBuild(opts *config.KanikoOptions) (v1.Image, error) { configFile.OS = strings.Split(opts.CustomPlatform, "/")[0] configFile.Architecture = strings.Split(opts.CustomPlatform, "/")[1] } - if !stage.Final { - configFile.Config.Labels = map[string]string{} - } + sourceImage, err = mutate.ConfigFile(sourceImage, configFile) if err != nil { return nil, err