Uploaded image for project: 'OpenShift Hosted Control Plane'
  1. OpenShift Hosted Control Plane
  2. HOSTEDCP-1217

Fail early if a release image is not multi-arch and the management cluster's CPU architecture is not the same as the NodePool's CPU architecture

XMLWordPrintable

    • Icon: Epic Epic
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • None
    • None
    • Fail early if a release image is not multi-arch and the management cluster's CPU architecture is not the same as the NodePool's CPU architecture
    • False
    • None
    • False
    • Not Selected
    • To Do
    • OCPSTRAT-854 - Support Heterogeneous NodePools Within HyperShift
    • OCPSTRAT-854Support Heterogeneous NodePools Within HyperShift
    • 28
    • 28% 28%
    • 0
    • 0
    • 0

      Goal

      • As a user of the HyperShift, I would like the CLI or HyperShift API to fail early when:
        • the release image is not multi-arch AND
        • the management cluster's CPU architecture is not the same as the NodePool's CPU architecture
          so that we can prevent a HostedCluster or a NodePool from being created that will have errors due mismatches between the release image, management cluster's CPU architecture, and NodePool's CPU architecture.

      Why is this important?

      • This improves the UX of using multi-arch HyperShift by preventing a user from utilizing the wrong release image when creating a HostedCluster or NodePool.

      Scenarios

      1. Scenarios That Should Succeed
        1. Using a mgmt cluster of CPU arch 'A', create a HostedCluster with the CLI with a multi-arch release image
        2. Using a mgmt cluster of CPU arch 'A', create a HostedCluster with a yaml spec with a multi-arch release image
        3. Using a mgmt cluster of CPU arch 'A', create a NodePool with the CLI with a multi-arch release image
        4. Using a mgmt cluster of CPU arch 'A', create a NodePool with a yaml spec with a multi-arch release image
        5.  
      2. Scenarios That Should Fail
        1. Using a mgmt cluster of CPU arch 'A', create a HostedCluster with the CLI with a single arch release image from CPU arch 'B'
        2. Using a mgmt cluster of CPU arch 'A', create a HostedCluster with a yaml spec with a single arch release image from CPU arch 'B'
        3. Using a mgmt cluster of CPU arch 'A', create a NodePool with the CLI with a single arch release image from CPU arch 'B'
        4. Using a mgmt cluster of CPU arch 'A', create a NodePool with a yaml spec with a single arch release image from CPU arch 'B'

      Acceptance Criteria

      • Dev - Has a valid enhancement if necessary
      • CI - MUST be running successfully with tests automated
      • QE - covered in Polarion test plan and tests implemented
      • Release Technical Enablement - Must have TE slides
      • ...

      Dependencies (internal and external)

      1. ...

      Previous Work (Optional):

      Open questions:

      Done Checklist

      • CI - CI is running, tests are automated and merged.
      • Release Technical Enablement <link to Feature Enablement Presentation>
      • DEV - Upstream documentation merged: <link to meaningful PR or GitHub Issue>
      • DEV - Enhancement merged: <link to meaningful PR or GitHub Issue>
      • QE - Test plans in Polarion: <link or reference to Polarion>
      • QE - Automated tests merged: <link or reference to automated tests>
      • DOC - Downstream documentation merged: <link to meaningful PR>

            rh-ee-brcox Bryan Cox
            rh-ee-brcox Bryan Cox
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: