Skip to content

Conversation

@euanh
Copy link
Collaborator

@euanh euanh commented Jul 11, 2025

Motivation

A multiarch image consists of an index pointing to one or more architecture-specific manifests. containertool currently builds a single architecture image, which can be pushed using just a manifest, but including the index as well is a step towards being able to build multiarch images in future.

Modifications

  • Add putIndex operation to the ImageDestination protocol and implement it in RegistryClient
  • Build an index in publishContainerImage and print its reference on standard output, instead of the reference of the manifest.

Result

Although it still builds single-architecture images, a containertool image will start with an index pointing to a manifest, instead of a bare manifest.

Test Plan

All existing tests continue to pass.

@euanh euanh changed the title Push index containertool: Store an index, pointing to the image manifest Jul 11, 2025
…r needs the platform annotation - image load is ok without it
@euanh euanh marked this pull request as ready for review July 11, 2025 11:43
@euanh euanh merged commit 9417b63 into apple:main Jul 11, 2025
23 checks passed
@euanh euanh deleted the push-index branch July 11, 2025 12:34
@euanh euanh added kind/enhancement New feature or request semver/minor Adds new public API. labels Sep 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind/enhancement New feature or request semver/minor Adds new public API.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant