-
Epic
-
Resolution: Unresolved
-
Critical
-
None
-
None
-
None
-
Imagestreams should import manifestlist by default on a cluster with the multi payload
-
False
-
None
-
False
-
Not Selected
-
NEW
-
To Do
-
NEW
-
83% To Do, 0% In Progress, 17% Done
The history of this epic starts with this PR which triggered a lengthy conversation around the workings of the image API with respect to importing imagestreams images as single vs manifestlisted. The imagestreams today by default have the `importMode` flag set to `Legacy` to avoid breaking behavior of existing clusters in the field. This makes sense for single arch clusters deployed with a single arch payload, but when users migrate to use the multi payload, more often than not, their intent is to add nodes of other architecture types. When this happens - it gives rise to problems when using imagestreams with the default behavior of importing a single manifest image. The oc commands do have a new flag to toggle the importMode, but this breaks functionality of existing users who just want to create an imagestream and use it with existing commands.
There was a discussion with David Eads and other staff engineers and it was decided that the approach to be taken is to default imagestreams' importMode to `preserveOriginal` if the cluster is installed with/ upgraded to a multi payload. So a few things need to happen to achieve this:
- CVO would need to expose a field in the status section indicative of the type of payload in the cluster (single vs multi)
- cluster-openshift-apiserver-operator would read this field and add it to the apiserver configmap. openshift-apiserver would use this value to determine the setting of importMode value.
- Document clearly that the behavior of imagestreams in a cluster with multi payload is different from the traditional single payload
Some open questions:
- What happens to existing imagestreams on upgrades
- How do we handle CVO managed imagestreams (IMO, CVO managed imagestreams should always set importMode to preserveOriginal as the images are associated with the payload)
- relates to
-
HOSTEDCP-1778 Enable multi-arch flag by default
- Closed
- links to