@@ -1000,6 +1000,7 @@ func TestResolvePodSpec(t *testing.T) {
10001000 tag := name .MustParseReference ("gcr.io/distroless/static:nonroot" )
10011001 // Resolved via crane digest on 2021/09/25
10021002 digest := name .MustParseReference ("gcr.io/distroless/static:nonroot@sha256:be5d77c62dbe7fedfb0a4e5ec2f91078080800ab1f18358e5f31fcc8faa023c4" )
1003+ digestWithoutTag := name .MustParseReference ("gcr.io/distroless/static@sha256:be5d77c62dbe7fedfb0a4e5ec2f91078080800ab1f18358e5f31fcc8faa023c4" )
10031004
10041005 ctx , _ := rtesting .SetupFakeContext (t )
10051006
@@ -1017,7 +1018,7 @@ func TestResolvePodSpec(t *testing.T) {
10171018 remoteResolveDigest = rrd
10181019 }()
10191020 resolve := func (_ name.Reference , _ ... remote.Option ) (name.Digest , error ) {
1020- return digest .(name .Digest ), nil
1021+ return tag . Context () .Digest ( digestWithoutTag . Identifier () ), nil
10211022 }
10221023
10231024 tests := []struct {
@@ -1107,6 +1108,30 @@ func TestResolvePodSpec(t *testing.T) {
11071108 },
11081109 wc : apis .WithinCreate ,
11091110 rrd : resolve ,
1111+ }, {
1112+ name : "digests without tag resolve (in create)" ,
1113+ ps : & corev1.PodSpec {
1114+ InitContainers : []corev1.Container {{
1115+ Name : "setup-stuff" ,
1116+ Image : digestWithoutTag .String (),
1117+ }},
1118+ Containers : []corev1.Container {{
1119+ Name : "user-container" ,
1120+ Image : digestWithoutTag .String (),
1121+ }},
1122+ },
1123+ want : & corev1.PodSpec {
1124+ InitContainers : []corev1.Container {{
1125+ Name : "setup-stuff" ,
1126+ Image : digestWithoutTag .String (),
1127+ }},
1128+ Containers : []corev1.Container {{
1129+ Name : "user-container" ,
1130+ Image : digestWithoutTag .String (),
1131+ }},
1132+ },
1133+ wc : apis .WithinCreate ,
1134+ rrd : resolve ,
11101135 }}
11111136
11121137 for _ , test := range tests {
0 commit comments