diff --git a/staging/src/k8s.io/kubectl/pkg/describe/describe.go b/staging/src/k8s.io/kubectl/pkg/describe/describe.go index 58dd27f905b..d9f4bc13638 100644 --- a/staging/src/k8s.io/kubectl/pkg/describe/describe.go +++ b/staging/src/k8s.io/kubectl/pkg/describe/describe.go @@ -2653,11 +2653,11 @@ func (i *IngressDescriber) describeIngressV1(ing *networkingv1.Ingress, events * w.Write(LEVEL_0, "Ingress Class:\t%v\n", ingressClassName) def := ing.Spec.DefaultBackend ns := ing.Namespace - if def == nil { - w.Write(LEVEL_0, "Default backend:\t\n") - } else { - w.Write(LEVEL_0, "Default backend:\t%s\n", i.describeBackendV1(ns, def)) + defaultBackendDescribe := "" + if def != nil { + defaultBackendDescribe = i.describeBackendV1(ns, def) } + w.Write(LEVEL_0, "Default backend:\t%s\n", defaultBackendDescribe) if len(ing.Spec.TLS) != 0 { describeIngressTLSV1(w, ing.Spec.TLS) } @@ -2680,7 +2680,7 @@ func (i *IngressDescriber) describeIngressV1(ing *networkingv1.Ingress, events * } } if count == 0 { - w.Write(LEVEL_1, "%s\t%s\t%s\n", "*", "*", i.describeBackendV1(ns, def)) + w.Write(LEVEL_1, "%s\t%s\t%s\n", "*", "*", defaultBackendDescribe) } printAnnotationsMultiline(w, "Annotations", ing.Annotations) diff --git a/staging/src/k8s.io/kubectl/pkg/describe/describe_test.go b/staging/src/k8s.io/kubectl/pkg/describe/describe_test.go index adad2a8374f..afcb2262c4c 100644 --- a/staging/src/k8s.io/kubectl/pkg/describe/describe_test.go +++ b/staging/src/k8s.io/kubectl/pkg/describe/describe_test.go @@ -2800,6 +2800,30 @@ Rules: * * default-backend:80 () Annotations: Events: +`, + }, + "EmptyBackend": { + input: fake.NewSimpleClientset(&networkingv1.Ingress{ + ObjectMeta: metav1.ObjectMeta{ + Name: "bar", + Namespace: "foo", + }, + Spec: networkingv1.IngressSpec{ + IngressClassName: &ingresClassName, + }, + }), + output: `Name: bar +Labels: +Namespace: foo +Address: +Ingress Class: test +Default backend: +Rules: + Host Path Backends + ---- ---- -------- + * * +Annotations: +Events: `, }, "EmptyIngressClassName": {