Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-54685

Update hostfirmwaresettings and hostfirmwarecomponents CRD display config to include condition status

XMLWordPrintable

    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • 3
    • Low
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      The hostfirmwaresettings.metal3.io and hostfirmwarecomponents.metal3.io CRDs currently have just the default field display, NAME and AGE. However, the conditions are important to check before triggering a live update to ensure changes have been processed. This requires checking both the "Valid" and "Changed" conditions have status set to "True" and that the observedGeneration of each condition matches the generation of the CR to ensure any change has been processed.
      
      Without the information about the condition status and observedGeneration values in the default display, the user needs to either dump the full CR to find the info or use a custom-columns command to access it.
      
      $ oc get hostfirmwarecomponents.metal3.io -n cnfdg29 -o custom-columns='NAME:.metadata.name,GEN:.metadata.generation,OBSERVED:.status.conditions[*].observedGeneration,VALID:.status.conditions[?(@.type=="Valid")].status,CHANGE:.status.conditions[?(@.type=="ChangeDetected")].status'
      NAME                                 GEN   OBSERVED   VALID   CHANGE
      cnfdg29.ptp.eng.rdu2.dc.redhat.com   8     8,8        True    True
      
      With this information, I can see my update to the CR has been processed, validated, and is ready to be handled by triggering a live update. It's possible this can be presented more succinctly via kubebuilder:printcolumn directives with JSONPath expressions that check the observedGeneration values to indicate the condition is stale, if it doesn't match the metadata.generation value.
      
      In addition, there are cases where the handling of a change to the CR can take a long time. I've seen the first update after provisioning the cluster take ~20 minutes before the HFC CR conditions are updated. During that time, there is no indication that anything is happening. An additional condition to indicate validation occurring, perhaps, would be helpful in this scenario.
      
          

      Version-Release number of selected component (if applicable):

      OCP: 4.18.5
      MCE: 2.7.2
      
          

      How reproducible:

      
          

      Steps to Reproduce:

          1.
          2.
          3.
          

      Actual results:

      
          

      Expected results:

      
          

      Additional info:

      
          

              janders@redhat.com Jacob Anders
              dpenney1@redhat.com Don Penney
              None
              None
              Jad Haj Yahya Jad Haj Yahya
              None
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: