image
image copied to clipboard
Support copying nested image indices
I have a repo in ECR that contains images that were pushed up using porter. These contain a CNAB manifest list as described here. https://github.com/cnabio/cnab-spec/blob/main/201-representing-CNAB-in-OCI.md https://getporter.org/bundle/manifest/
However when I attempt to copy or sync that manifest list, skopeo exits when it hits the first multi-arch image, as it looks to be expecting the list to only contain images.
skopio sync --src-creds AWS:$(aws ecr get-login-password --region us-west-2) --preserve-digests --all --src docker --dest dir --scoped [REDACTED].dkr.ecr.us-west-2.amazonaws.com/[REDACTED]@sha256:703533993a679fee907002ba7e46c00f753187592417887dcc1a58c83704c715 /tmp/test
time="2023-08-04T18:55:00Z" level=info msg="Tag presence check" imagename="[REDACTED].dkr.ecr.us-west-2.amazonaws.com/[REDACTED]@sha256:703533993a679fee907002ba7e46c00f753187592417887dcc1a58c83704c715" tagged=true
time="2023-08-04T18:55:00Z" level=info msg="Copying image ref 1/1" from="docker://[REDACTED].dkr.ecr.us-west-2.amazonaws.com/[REDACTED]@sha256:703533993a679fee907002ba7e46c00f753187592417887dcc1a58c83704c715" to="dir:/tmp/test/[REDACTED].dkr.ecr.us-west-2.amazonaws.com/[REDACTED]@sha256:703533993a679fee907002ba7e46c00f753187592417887dcc1a58c83704c715"
Getting image list signatures
Copying 28 of 28 images in list
Copying image sha256:81386e0f23240f8e4207d362cbdf33638e73cd965da3e8d1b1c5b0114f6e558e (1/28)
Getting image source signatures
Copying blob sha256:488e03c54ce07f4455fe6950286fb2dd659c0e15b12618e89cfbed334951bf84
Copying config sha256:488e03c54ce07f4455fe6950286fb2dd659c0e15b12618e89cfbed334951bf84
Writing manifest to image destination
Copying image sha256:76405604329fa8a046124482afc667c0c19c1363f4efe2adcd139280aaf8814e (2/28)
Getting image source signatures
Copying blob sha256:14e13ad838514a9699790034eb09ed65e0068e660190f64002af3d4ed0ea4200
Copying blob sha256:284092e1284f10964a53f3f584930c79a4f33ff58415c4d76c9cacd82124be1c
Copying blob sha256:7007490126efaae58924972668256aaeb4858e6c4537eb4257e1978719b958c7
Copying blob sha256:c2d4bbc831b6f54183c1157036b1c92c3eb7f24c51c7bd225b5933fce9cbcfae
Copying blob sha256:b360ac7112729d5228e8b61d5f7efa288d23248705eba439ba76f0f1f01ed4c8
Copying blob sha256:81e02450c7f58d478712fdeadcca5dc192d7544e126987bb8d3d20580d143ca2
Copying blob sha256:cab41fae24569ad6d58a7b3ba25fabec0b14769bad7788287a1a23553c2424c0
Copying blob sha256:b3cb319895359f023906bbe093f1b94fdbdaddeea9a1388b25ee554dfa2ab519
Copying blob sha256:b9526eb944e8c4d075c2d9c4a5e0b663cfce7d4b8e674db6431e30c65d4b2cb7
Copying config sha256:d354477c66106866e7c3792b38e6c521375e5078fd3ac8a1b854550446f8be84
Writing manifest to image destination
Copying image sha256:7e4e9f7a0954b45736d149c40e9620a6664036bb05f0dce447bef5042b139f5d (3/28)
time="2023-08-04T18:55:03Z" level=fatal msg="Error copying ref \"docker://[REDACTED].dkr.ecr.us-west-2.amazonaws.com/[REDACTED]@sha256:703533993a679fee907002ba7e46c00f753187592417887dcc1a58c83704c715\": copying image 3/28 from manifest list: Unexpectedly received a manifest list instead of a manifest for a single image"