diff --git a/gwctl/pkg/printer/backends.go b/gwctl/pkg/printer/backends.go index def16e575e..d9f5f95539 100644 --- a/gwctl/pkg/printer/backends.go +++ b/gwctl/pkg/printer/backends.go @@ -160,6 +160,11 @@ func (bp *BackendsPrinter) PrintDescribeView(resourceModel *resourcediscovery.Re pairs = append(pairs, &DescriberKV{Key: "ReferenceGrants", Value: names}) } + // Analysis + if len(backendNode.Errors) != 0 { + pairs = append(pairs, &DescriberKV{Key: "Analysis", Value: convertErrorsToString(backendNode.Errors)}) + } + // Events pairs = append(pairs, &DescriberKV{Key: "Events", Value: convertEventsSliceToTable(backendNode.Events, bp.Clock)}) diff --git a/gwctl/pkg/printer/common.go b/gwctl/pkg/printer/common.go index a8c7861594..b6e1f00453 100644 --- a/gwctl/pkg/printer/common.go +++ b/gwctl/pkg/printer/common.go @@ -172,6 +172,14 @@ func convertPolicyRefsToTable(policyRefs []common.ObjRef) *Table { return table } +func convertErrorsToString(errors []error) []string { + var result []string + for _, err := range errors { + result = append(result, err.Error()) + } + return result +} + type NodeResource interface { ClientObject() client.Object } diff --git a/gwctl/pkg/printer/gateways.go b/gwctl/pkg/printer/gateways.go index 3b30c180b7..33b710a3ae 100644 --- a/gwctl/pkg/printer/gateways.go +++ b/gwctl/pkg/printer/gateways.go @@ -135,6 +135,11 @@ func (gp *GatewaysPrinter) PrintDescribeView(resourceModel *resourcediscovery.Re pairs = append(pairs, &DescriberKV{Key: "EffectivePolicies", Value: gatewayNode.EffectivePolicies}) } + // Analysis + if len(gatewayNode.Errors) != 0 { + pairs = append(pairs, &DescriberKV{Key: "Analysis", Value: convertErrorsToString(gatewayNode.Errors)}) + } + // Events pairs = append(pairs, &DescriberKV{Key: "Events", Value: convertEventsSliceToTable(gatewayNode.Events, gp.Clock)})