tohjustin/kube-lineage

Column Ready shows "-" for some CRDs

guettli opened this issue · 2 comments

I see this output for my CRDs:

NAME                                                                             READY   STATUS                                                                                                                                                                                                                                                                                           AGE
ClusterStrong/clusterstrong                                                        -                                                                                                                                                                                                                                                                                                        6h15m
├── ClusterStrongRelease/hello-apalla-1-26-v6                                      True                                                                                                                                                                                                                                                                                                     6h15m
└── HelloClusterStrongRelease/hello-apalla-1-26-v6                                 -                                                                                                                                                                                                                                                                                                        6h15m
ClusterStrong/clusterstrong                                                        -                                                                                                                                                                                                                                                                                                        6h15m
├── ClusterStrongRelease/hello-apalla-1-26-v6                                      True                                                                                                                                                                                                                                                                                                     6h15m
└── HelloClusterStrongRelease/hello-apalla-1-26-v6                                 -                                                                                                                                                                                                                                                                                                        6h15m
    ├── HelloNodeImageRelease/hello-apalla-1-26-controlplaneamd64cloud-v5          -                                                                                                                                                                                                                                                                                                        6h15m
    └── HelloNodeImageRelease/hello-apalla-1-26-workeramd64cloud-v5                -                                                                                                                                                            ly fetched new release tag hello-apalla-1-26-v6                                                                                                                                                                                                                  29m
    ├── HelloNodeImageRelease/hello-apalla-1-26-controlplaneamd64cloud-v5          -                                                                                                                                                                                                                                                                                                        6h15m
    └── HelloNodeImageRelease/hello-apalla-1-26-workeramd64cloud-v5                -                                                                                                                                                            

For some CRDs the Ready column is "True", but for some I see only "-".

If I use kubectl describe I see that the Status.Ready is true (a non optional boolean).

Why does linage show "-" instead of "True"?

Hi @guettli, for CRDs we fallback to these JSON paths to obtain the values to populate the "Ready" & "Status" columns:

// objectReadyReasonJSONPath is the JSON path to get a Kubernetes object's
// "Ready" condition reason.
objectReadyReasonJSONPath = newJSONPath("reason", "{.status.conditions[?(@.type==\"Ready\")].reason}")
// objectReadyStatusJSONPath is the JSON path to get a Kubernetes object's
// "Ready" condition status.
objectReadyStatusJSONPath = newJSONPath("status", "{.status.conditions[?(@.type==\"Ready\")].status}")

I can look further into this for you if you are okay with sharing the full YAML manifests (with sensitive information redacted) of those custom resources that you expect not see - under the Ready column.

Thank you. This answers my question. My CRD uses status.Ready.

I think we will upgrade it to status.Condition sooner or later.