Skip to content

Implement multi-arch image building for oci-registry #1546

@Jdubrick

Description

@Jdubrick

Which area is this issue related to?

/area registry

Issue Description

Currently devfile/registry-support/oci-registry is able to have its image built for amd64 and arm64 platforms but it requires the use of --platform linux/amd64 or --platform linux/arm64 to do so. We should implement a manifest creation that allows us to build a multi-arch image so that anyone who wishes to pull built Devfile images has the option between amd64 or arm64.

Example from Red Hat Developer:

# First, initialise the manifest
podman manifest create <image name>

# Build the image attaching them to the manifest
podman build --platform linux/amd64,linux/arm64  --manifest <image name>  .

# Finally publish the manifest
podman manifest push <image name>

The above is a simple example and more research may be required to have this work smoothly. It may also be possible to allow the multi-arch images to be built in a shell script similar to build.sh and pushed like push.sh.

Once the manifest is created and apart of the repository, any automation that is currently building images for this repository and pushing them should be doing so to the manifest to allow for multi-arch pulling.

Acceptance Criteria

  • Able to build and push oci-registry image as a multi-arch image.
  • Any automations building images and pushing to quay.io should be pushing to that manifest

Metadata

Metadata

Assignees

Labels

area/registryDevfile registry for stacks and infrastructure

Type

No type

Projects

Status

Done ✅

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions