-
Bug
-
Resolution: Unresolved
-
Minor
-
None
-
4.18
-
Quality / Stability / Reliability
-
False
-
-
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: