openshift / api

Canonical location of the OpenShift API definition.
http://www.openshift.org
Apache License 2.0
94 stars 517 forks source link

MULTIARCH-4559: config/v1/types_cluster_version.go: Add 'architecture' to the release structure #2024

Closed wking closed 3 days ago

wking commented 2 months ago

As requested in the enhancement. Motivation for the new property from the enhancement:

There were a few options discussed in lieu of introducing a new ClusterVersion status field and the potential risks for doing so. The alternatives are highlighted with reasoning given for why they were not pursued:

  • Default ImportMode to PreserveOriginal everywhere: single-arch-release users maybe concerned about import size and the lack of metadata like dockerImageLayers and dockerImageMetadata for manifestlisted imagestream tags.
  • Clusters with homogeneous nodes running the multi payload who do not want to import manifestlists: The clusters can either migrate to single arch payloads or manually toggle the importMode through the image config CRD.
  • CVO provides architecural knowledge to the cluster-image-registry-operator through a configmap or the image config CRD: To limit the risk of many external consumers using CVO's status field to determine that their cluster is multi-arch ready, the idea was to expose this information to the specific controller. This solution is not necessary as we let other controller implementers decide if the CVO's new status field is the best fit for their use case.
openshift-ci-robot commented 2 months ago

@wking: This pull request references MULTIARCH-4559 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.18.0" version, but no target version was set.

In response to [this](https://github.com/openshift/api/pull/2024): >As [requested in the enhancement][1]. [Motivation for the new property from the enhancement][2]: > >> There were a few options discussed in lieu of introducing a new ClusterVersion status field and the potential risks for doing so. The alternatives are highlighted with reasoning given for why they were not pursued: >> * Default ImportMode to PreserveOriginal everywhere: single-arch-release users maybe concerned about import size and the lack of metadata like `dockerImageLayers` and `dockerImageMetadata` for manifestlisted imagestream tags. >> * Clusters with homogeneous nodes running the multi payload who do not want to import manifestlists: The clusters can either migrate to single arch payloads or manually toggle the importMode through the image config CRD. >> * CVO provides architecural knowledge to the cluster-image-registry-operator through a configmap or the image config CRD: To limit the risk of many external consumers using CVO's status field to determine that their cluster is multi-arch ready, the idea was to expose this information to the specific controller. This solution is not necessary as we let other controller implementers decide if the CVO's new status field is the best fit for their use case. > >[1]: https://github.com/openshift/enhancements/blob/36ef3f51e5b7bfb2d4af18d415ba762e0a0431ac/enhancements/multi-arch/dynamic-imagestream-importmode-setting.md#api-extensions >[2]: https://github.com/openshift/enhancements/blob/36ef3f51e5b7bfb2d4af18d415ba762e0a0431ac/enhancements/multi-arch/dynamic-imagestream-importmode-setting.md#motivations-for-a-new-clusterversion-status-property Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Fapi). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
openshift-ci[bot] commented 2 months ago

Hello @wking! Some important instructions when contributing to openshift/api: API design plays an important part in the user experience of OpenShift and as such API PRs are subject to a high level of scrutiny to ensure they follow our best practices. If you haven't already done so, please review the OpenShift API Conventions and ensure that your proposed changes are compliant. Following these conventions will help expedite the api review process for your PR.

Prashanth684 commented 1 week ago

@wking any progress on this?

Prashanth684 commented 6 days ago

/lgtm

deads2k commented 3 days ago

/override ci/prow/verify-crd-schema /approve

openshift-ci[bot] commented 3 days ago

@deads2k: Overrode contexts on behalf of deads2k: ci/prow/verify-crd-schema

In response to [this](https://github.com/openshift/api/pull/2024#issuecomment-2484293761): >/override ci/prow/verify-crd-schema >/approve Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository.
openshift-ci[bot] commented 3 days ago

@wking: all tests passed!

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository. I understand the commands that are listed [here](https://go.k8s.io/bot-commands).
openshift-ci[bot] commented 3 days ago

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: deads2k, Prashanth684, wking

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files: - ~~[OWNERS](https://github.com/openshift/api/blob/master/OWNERS)~~ [deads2k] Approvers can indicate their approval by writing `/approve` in a comment Approvers can cancel approval by writing `/approve cancel` in a comment
openshift-bot commented 3 days ago

[ART PR BUILD NOTIFIER]

Distgit: ose-cluster-config-api This PR has been included in build ose-cluster-config-api-container-v4.19.0-202411190035.p0.g25d2eec.assembly.stream.el9. All builds following this will include this PR.