-
Bug
-
Resolution: Unresolved
-
Undefined
-
None
-
4.21.0, 4.22
-
None
-
None
-
False
-
-
None
-
Moderate
-
No
-
None
-
None
-
Rejected
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Description of problem:
ImageStream imports only amd64 variant instead of manifest list despite imageStreamImportMode=PreserveOriginal on multi-arch cluster
This is related feature https://issues.redhat.com/browse/MULTIARCH-4971
Version-Release number of selected component (if applicable):
4.21.0-rc.1
How reproducible:
always
Steps to Reproduce:
1.Create a multi-arch cluster
oc get clusterversion/version -ojsonpath='{.status.desired}' | jq .
{
"architecture": "Multi",
"image": "quay.io/openshift-release-dev/ocp-release@sha256:0cf15c466dd1be99508ba7629e33f65d7b2763e517b629e9f87dd03abd5b3e02",
"url": "https://access.redhat.com/errata/RHBA-2026:16017",
"version": "4.21.0-rc.1"
}
oc image info quay.io/openshift-release-dev/ocp-release@sha256:0cf15c466dd1be99508ba7629e33f65d7b2763e517b629e9f87dd03abd5b3e02
error: the image is a manifest list and contains multiple images - use --filter-by-os to select from:
OS DIGEST
linux/amd64 sha256:ef72b35eb6c7bc2b56e2283e2dc1376b0310100242d49757091184fee291d7ab
linux/arm64 sha256:ab3316fc041e82794dcd063eb393f5cdb6698eaae373194a6e739ac5e5e4d752
linux/s390x sha256:8a74a0c93751b9b92720b9ffec2c8cbf4370720141c58348b26e8830d802988b
linux/ppc64le sha256:c9c6ec84162379aff2f9a94ca227134912d72738743f1bf1084d410dd5b1b627
2. ImageStreamImportMode is enabled
oc get featuregate cluster -o jsonpath='{.status.featureGates[*].enabled}' | jq -r | grep -i "ImageStreamImportMode"
"name": "ImageStreamImportMode"
3. image.config is used correct imageStreamImportMode PreserveOriginal
oc get image.config/cluster -ojsonpath='{.status}' | jq .
{
"imageStreamImportMode": "PreserveOriginal",
"internalRegistryHostname": "image-registry.openshift-image-registry.svc:5000"
}
4. Check one image if is a multi arch image
oc image info quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:9b08c6234066d27c1e1eda753fe7e46a92c8a0f0f68ba016fe0aa64484be247b
error: the image is a manifest list and contains multiple images - use --filter-by-os to select from:
OS DIGEST
linux/amd64 sha256:4289cf991f6fa1b5768b7f1d9f394072312f0f2a8311e449fa77e2def8c727c2
linux/arm64 sha256:86271af621003ac9a6002f68bd0cbcfa70ee3b07a6eb9885bafe957e58c7b46f
linux/s390x sha256:1174a5afaaf831eaec973b86d9164d0f1b82981e79f2a51ef3c2a3e5f89fc40e
linux/ppc64le sha256:ff731c38d23286392305576d799844577929231055138fe417d4cf1208e5af38
5. Import this image with default importMode
oc import-image test1 --from=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:9b08c6234066d27c1e1eda753fe7e46a92c8a0f0f68ba016fe0aa64484be247b --confirm
Actual results:
step 5
$ oc import-image test1 --from=quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:9b08c6234066d27c1e1eda753fe7e46a92c8a0f0f68ba016fe0aa64484be247b --confirm
imagestream.image.openshift.io/test1 imported
Name: test1
Namespace: test
Created: About a minute ago
Labels: <none>
Annotations: openshift.io/image.dockerRepositoryCheck=2026-01-15T09:22:43Z
Image Repository: image-registry.openshift-image-registry.svc:5000/test/test1
Image Lookup: local=false
Unique Images: 1
Tags: 1
latest
tagged from quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:9b08c6234066d27c1e1eda753fe7e46a92c8a0f0f68ba016fe0aa64484be247b
* quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:4289cf991f6fa1b5768b7f1d9f394072312f0f2a8311e449fa77e2def8c727c2
About a minute ago
Image Name: test1:latest
Docker Image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:4289cf991f6fa1b5768b7f1d9f394072312f0f2a8311e449fa77e2def8c727c2
Name: sha256:4289cf991f6fa1b5768b7f1d9f394072312f0f2a8311e449fa77e2def8c727c2
Created: Less than a second ago
Annotations: image.openshift.io/dockerLayersOrder=ascending
Image Size: 324.5MB in 4 layers
Layers: 79.26MB sha256:25c75c34b2e2b68ba9245d9cddeb6b8a0887371ed30744064f85241a75704d87
50.06MB sha256:57eb0cbd763b3c20cff7866b3d6290d14659623f71a8d4d1fbdbcb963173cfa0
9.282MB sha256:0e3992c496b2b6284b5f0e3297c5b1ae7363d4497ee38beacba699e8e11f1338
185.9MB sha256:86d47987b12fa960bc3dbe21a431a2f9cba04f04179f561eb54d2723b5d2332a
Image Created: 3 weeks ago
Author: <none>
Arch: amd64
Command: /usr/bin/bash
Working Dir: <none>
User: <none>
Exposes Ports: <none>
Docker Labels: License=GPLv2+
architecture=x86_64
build-date=2025-12-19T22:01:42Z
com.redhat.component=ose-tools-container
com.redhat.license_terms=https://www.redhat.com/en/about/red-hat-end-user-license-agreements#UBI
cpe=cpe:/a:redhat:openshift:4.21::el9
description=Empty
distribution-scope=public
io.buildah.version=1.41.4
io.k8s.description=Contains debugging and diagnostic tools for use with an OpenShift cluster.
io.k8s.display-name=OpenShift Tools
io.openshift.build.commit.id=345800dc3c4164fbca313c1cbfb383f262547903
io.openshift.build.commit.url=https://github.com/openshift/oc/commit/345800dc3c4164fbca313c1cbfb383f262547903
io.openshift.build.source-location=https://github.com/openshift/oc
io.openshift.build.versions=kubectl=1.34.1
io.openshift.expose-services=
io.openshift.maintainer.component=oc
io.openshift.maintainer.project=OCPBUGS
io.openshift.tags=openshift,tools
maintainer=Red Hat, Inc.
name=openshift/ose-tools-rhel9
org.opencontainers.image.created=2025-12-19T22:01:42Z
org.opencontainers.image.revision=315803ee0034737bae54ab4403e409c6fb361ae1
release=202512191853.p2.g345800d.assembly.stream.el9
summary=Empty
url=https://access.redhat.com/containers/#/registry.access.redhat.com/rhel-els/images/9.4-847.1719484506
vcs-ref=315803ee0034737bae54ab4403e409c6fb361ae1
vcs-type=git
vendor=Red Hat, Inc.
version=v4.21.0
Environment: PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
container=oci
GODEBUG=x509ignoreCN=0,madvdontneed=1
ART_BUILD_ENGINE=konflux
ART_BUILD_DEPS_METHOD=cachi2
ART_BUILD_NETWORK=hermetic
ART_BUILD_DEPS_MODE=default
__doozer=merge
BUILD_RELEASE=202512191853.p2.g345800d.assembly.stream.el9
BUILD_VERSION=v4.21.0
OS_GIT_MAJOR=4
OS_GIT_MINOR=21
OS_GIT_PATCH=0
OS_GIT_TREE_STATE=clean
OS_GIT_VERSION=4.21.0-202512191853.p2.g345800d.assembly.stream.el9-345800d
SOURCE_GIT_TREE_STATE=clean
__doozer_group=openshift-4.21
__doozer_key=ose-tools
__doozer_uuid_tag=ose-tools-rhel9-v4.21.0-20251219.200659
__doozer_version=v4.21.0
OS_GIT_COMMIT=345800d
SOURCE_DATE_EPOCH=1764672664
SOURCE_GIT_COMMIT=345800dc3c4164fbca313c1cbfb383f262547903
SOURCE_GIT_TAG=openshift-clients-4.20.0-202509230043-89-g345800dc3
SOURCE_GIT_URL=https://github.com/openshift/oc
$ oc get is test1 -o jsonpath='{.spec.tags[*].importPolicy}'
{"importMode":"Legacy"}%
Expected results:
Should import PreserveOriginal on multi-arch cluster by default
Additional info: