From f02e03b146c23ef7daf1fcae24a1359e3d36aa3c Mon Sep 17 00:00:00 2001 From: Garrett Cheadle Date: Wed, 1 Sep 2021 15:51:05 -0700 Subject: [PATCH] Add preresolved meta to image metas from imgpkg lock --- pkg/kbld/cmd/resolve.go | 16 +++++++++------- pkg/kbld/image/preresolved.go | 14 +++++++------- test/e2e/lock_output_test.go | 4 ++++ 3 files changed, 20 insertions(+), 14 deletions(-) diff --git a/pkg/kbld/cmd/resolve.go b/pkg/kbld/cmd/resolve.go index 62a84112..32e70546 100644 --- a/pkg/kbld/cmd/resolve.go +++ b/pkg/kbld/cmd/resolve.go @@ -266,13 +266,15 @@ func (o *ResolveOptions) imgpkgLockAnnotations(i ProcessedImageItem) map[string] imageMetas := i.Image.MetasDescription() if imageMetas != nil && len(imageMetas) > 0 { - metaYaml, err := yaml.Marshal([]ctlconf.ImageMeta{ - { - URL: imageMetas[0].URL, - Type: "preresolved", - Tag: imageMetas[0].Tag, - }, - }) + var metas []ctlconf.ImageMeta + for _, m := range imageMetas { + metas = append(metas, ctlconf.ImageMeta{ + URL: m.URL, + Type: m.Type, + Tag: m.Tag, + }) + } + metaYaml, err := yaml.Marshal(metas) if err != nil { return anns } diff --git a/pkg/kbld/image/preresolved.go b/pkg/kbld/image/preresolved.go index 55ff1476..f4d0645e 100644 --- a/pkg/kbld/image/preresolved.go +++ b/pkg/kbld/image/preresolved.go @@ -25,12 +25,12 @@ func NewPreresolvedImage(url string, metas []config.ImageMeta) PreresolvedImage } func (i PreresolvedImage) URL() (string, []Meta, error) { - if len(i.metas) > 0 { - var imageMetas []Meta - for _, m := range i.metas { - imageMetas = append(imageMetas, PreresolvedImageSourceURL{Type: "preresolved", URL: m.URL, Tag: m.Tag}) - } - return i.url, imageMetas, nil + var imageMetas []Meta + for _, m := range i.metas { + imageMetas = append(imageMetas, PreresolvedImageSourceURL{Type: m.Type, URL: m.URL, Tag: m.Tag}) } - return i.url, []Meta{PreresolvedImageSourceURL{Type: "preresolved", URL: i.url}}, nil + imageMetas = append(imageMetas, PreresolvedImageSourceURL{Type: "preresolved", URL: i.url}) + + return i.url, imageMetas, nil + } diff --git a/test/e2e/lock_output_test.go b/test/e2e/lock_output_test.go index f7112003..3ef655f7 100644 --- a/test/e2e/lock_output_test.go +++ b/test/e2e/lock_output_test.go @@ -254,11 +254,15 @@ metadata: - Tag: 1.15.1 Type: preresolved URL: nginx:1.15.1 + - Type: preresolved + URL: index.docker.io/library/nginx@sha256:4a5573037f358b6cdfa2f3e8a9c33a5cf11bcd1675ca72ca76fbe5bd77d0d682 URL: index.docker.io/library/nginx@sha256:4a5573037f358b6cdfa2f3e8a9c33a5cf11bcd1675ca72ca76fbe5bd77d0d682 - Metas: - Tag: 1.14.2 Type: preresolved URL: nginx:1.14.2 + - Type: preresolved + URL: index.docker.io/library/nginx@sha256:f7988fb6c02e0ce69257d9bd9cf37ae20a60f1df7563c3a2a6abe24160306b8d URL: index.docker.io/library/nginx@sha256:f7988fb6c02e0ce69257d9bd9cf37ae20a60f1df7563c3a2a6abe24160306b8d ` if out != expectedOut {