From 75bd7db7415df53f56ea8d094fe3228671713a39 Mon Sep 17 00:00:00 2001 From: Steve Gontzes Date: Wed, 6 May 2026 15:35:43 -0400 Subject: [PATCH] Preserve Lambda ECR refs in release manifests --- cmd/extract-images/main.go | 7 +++++-- cmd/extract-images/main_test.go | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/cmd/extract-images/main.go b/cmd/extract-images/main.go index 23705e6..8d22883 100644 --- a/cmd/extract-images/main.go +++ b/cmd/extract-images/main.go @@ -148,8 +148,11 @@ func extractLambdaImage(content []byte, repoName, version string, images map[str continue } - ref := fmt.Sprintf("%s:%s", repoName, tag) - uri := fmt.Sprintf("%s@%s", repoName, line.digest) + ref := line.ref + uri, ok := digestPinnedURI(ref, line.digest) + if !ok { + continue + } isIndex := false images[lambdaArm64ImageKey] = pb.Image_builder{ Ref: &ref, diff --git a/cmd/extract-images/main_test.go b/cmd/extract-images/main_test.go index b757a55..452f066 100644 --- a/cmd/extract-images/main_test.go +++ b/cmd/extract-images/main_test.go @@ -21,7 +21,7 @@ ccc333 public.ecr.aws/conductorone/baton-example:0.1.2 } } -func TestExtractLambdaImageUsesGenericRef(t *testing.T) { +func TestExtractLambdaImagePreservesECRRef(t *testing.T) { images := make(map[string]*pb.Image) found := extractLambdaImage([]byte(` ddd444 168442440833.dkr.ecr.us-west-2.amazonaws.com/baton-example:0.1.2-arm64 @@ -34,9 +34,12 @@ ddd444 168442440833.dkr.ecr.us-west-2.amazonaws.com/baton-example:0.1.2-arm64 if image == nil { t.Fatalf("missing %s image", lambdaArm64ImageKey) } - if image.GetRef() != "baton-example:0.1.2-arm64" { + if image.GetRef() != "168442440833.dkr.ecr.us-west-2.amazonaws.com/baton-example:0.1.2-arm64" { t.Fatalf("lambda ref = %q", image.GetRef()) } + if image.GetUri() != "168442440833.dkr.ecr.us-west-2.amazonaws.com/baton-example@sha256:ddd444" { + t.Fatalf("lambda uri = %q", image.GetUri()) + } if image.GetDigest() != "sha256:ddd444" { t.Fatalf("lambda digest = %q", image.GetDigest()) }