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

HostedCluster status for "most recent version successfully reconciled"

    XMLWordPrintable

Details

    • Story
    • Resolution: Won't Do
    • Blocker
    • None
    • None
    • None
    • 0
    • 0
    • 0

    Description

      Customer-facing APIs need to know when an update is in progress, what the most-recently-reconciled version is, and what the current reconciliation target is. In OTA-852, HostedCluster began feeding its existing status.version directly from ClusterVersion to HostedControlPlane to HostedCluster.

      However, ManifestWork selects data to consume with JSON Path. And JSON Path doesn't support returning an indexed entry (like the first) of a filtered array, so there's no way to say "I want the first Completed entry in status.version.history".

      This ticket is about adding a new HostedCluster condition to expose that information in a way that ManifestWork can consume. For example, a new ClusterVersionHistoryJSON condition could set its message to a JSON serialization of the whole status.version.history property. Or ClusterVersionJSON could set message to a JSON serialization of the whole status.version (to also pick up desired, availableUpdates, and conditionalUpdates siblings). Or something. Really, up to ManifestWork consumers like OCM and the HostedCluster controller admins to negotiate what to package how. I'm not clear on whether there are existing policies like "no JSON blobs in Condition messages; find another way" or ManifestWork workarounds or anything like that that would inform this API design.

      Attachments

        Issue Links

          Activity

            People

              jparrill@redhat.com Juan Manuel Parrilla Madrid
              trking W. Trevor King
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: