Merge pull request #103894 from kabab/add-labels-to-ingress-describe

Show labels information when kubectl describe ingress

Kubernetes-commit: 6a7a527f8e56323f3615790c0794f01274c74b18
This commit is contained in:
Kubernetes Publisher 2021-08-05 14:10:45 -07:00
commit a493f85868
4 changed files with 31 additions and 7 deletions

4
go.mod
View File

@ -31,7 +31,7 @@ require (
github.com/stretchr/testify v1.7.0
golang.org/x/sys v0.0.0-20210616094352-59db8d763f22
gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.0.0-20210805120319-7a35d40d43ac
k8s.io/api v0.0.0-20210806000319-499b6f90564c
k8s.io/apimachinery v0.0.0-20210805051055-f7769293e6f1
k8s.io/cli-runtime v0.0.0-20210730024628-6149e6a4cfd2
k8s.io/client-go v0.0.0-20210805080552-fa98c048508e
@ -47,7 +47,7 @@ require (
)
replace (
k8s.io/api => k8s.io/api v0.0.0-20210805120319-7a35d40d43ac
k8s.io/api => k8s.io/api v0.0.0-20210806000319-499b6f90564c
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20210805051055-f7769293e6f1
k8s.io/cli-runtime => k8s.io/cli-runtime v0.0.0-20210730024628-6149e6a4cfd2
k8s.io/client-go => k8s.io/client-go v0.0.0-20210805080552-fa98c048508e

4
go.sum
View File

@ -737,8 +737,8 @@ honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/api v0.0.0-20210805120319-7a35d40d43ac h1:Wu1nE5Lz+WstOMn+yT1unlEh/w2eXTQ+cWeD8m/YQYE=
k8s.io/api v0.0.0-20210805120319-7a35d40d43ac/go.mod h1:9J6nkHavSazyXmPeuA4f1YO9Ztdjw7nDibPjT4P+wsY=
k8s.io/api v0.0.0-20210806000319-499b6f90564c h1:/TwdwBIiHSFv2VnETc8qgoi/skGGBo1qlXszp8N/BMo=
k8s.io/api v0.0.0-20210806000319-499b6f90564c/go.mod h1:9J6nkHavSazyXmPeuA4f1YO9Ztdjw7nDibPjT4P+wsY=
k8s.io/apimachinery v0.0.0-20210805051055-f7769293e6f1 h1:cVpwhaGeh/tNPBeYbFff3tjx5AxwG5zwImhz+eusG3k=
k8s.io/apimachinery v0.0.0-20210805051055-f7769293e6f1/go.mod h1:O3oNtNadZdeOMxHFVxOreoznohCpy0z6mocxbZr7oJ0=
k8s.io/cli-runtime v0.0.0-20210730024628-6149e6a4cfd2 h1:QALxbHPQ2sJBgghE+LGMtnt2tcNsMCmwXEDAbkHeE9o=

View File

@ -2605,6 +2605,7 @@ func (i *IngressDescriber) describeIngressV1(ing *networkingv1.Ingress, events *
return tabbedString(func(out io.Writer) error {
w := NewPrefixWriter(out)
w.Write(LEVEL_0, "Name:\t%v\n", ing.Name)
printLabelsMultiline(w, "Labels", ing.Labels)
w.Write(LEVEL_0, "Namespace:\t%v\n", ing.Namespace)
w.Write(LEVEL_0, "Address:\t%v\n", loadBalancerStatusStringer(ing.Status.LoadBalancer, true))
def := ing.Spec.DefaultBackend
@ -2660,6 +2661,7 @@ func (i *IngressDescriber) describeIngressV1beta1(ing *networkingv1beta1.Ingress
return tabbedString(func(out io.Writer) error {
w := NewPrefixWriter(out)
w.Write(LEVEL_0, "Name:\t%v\n", ing.Name)
printLabelsMultiline(w, "Labels", ing.Labels)
w.Write(LEVEL_0, "Namespace:\t%v\n", ing.Namespace)
w.Write(LEVEL_0, "Address:\t%v\n", loadBalancerStatusStringer(ing.Status.LoadBalancer, true))
def := ing.Spec.Backend

View File

@ -2162,7 +2162,11 @@ func TestDescribeIngress(t *testing.T) {
}
v1beta1 := fake.NewSimpleClientset(&networkingv1beta1.Ingress{
ObjectMeta: metav1.ObjectMeta{
Name: "bar",
Name: "bar",
Labels: map[string]string{
"id1": "app1",
"id2": "app2",
},
Namespace: "foo",
},
Spec: networkingv1beta1.IngressSpec{
@ -2237,6 +2241,8 @@ func TestDescribeIngress(t *testing.T) {
"IngressRule.HTTP.Paths.Backend.Service v1beta1": {
input: v1beta1,
output: `Name: bar
Labels: id1=app1
id2=app2
Namespace: foo
Address:
Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
@ -2251,6 +2257,7 @@ Events: <none>` + "\n",
"IngressRule.HTTP.Paths.Backend.Service v1": {
input: netv1,
output: `Name: bar
Labels: <none>
Namespace: foo
Address:
Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
@ -2287,6 +2294,7 @@ Events: <none>` + "\n",
},
}),
output: `Name: bar
Labels: <none>
Namespace: foo
Address:
Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
@ -2323,6 +2331,7 @@ Events: <none>` + "\n",
},
}),
output: `Name: bar
Labels: <none>
Namespace: foo
Address:
Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
@ -2360,6 +2369,7 @@ Events: <none>` + "\n",
},
}),
output: `Name: bar
Labels: <none>
Namespace: foo
Address:
Default backend: default-backend:80 (<error: endpoints "default-backend" not found>)
@ -2397,6 +2407,7 @@ Events: <none>` + "\n",
},
}),
output: `Name: bar
Labels: <none>
Namespace: foo
Address:
Default backend: APIGroup: example.com, Kind: foo, Name: bar
@ -2434,6 +2445,7 @@ Events: <none>` + "\n",
},
}),
output: `Name: bar
Labels: <none>
Namespace: foo
Address:
Default backend: APIGroup: example.com, Kind: foo, Name: bar
@ -2456,6 +2468,7 @@ Events: <none>` + "\n",
},
}),
output: `Name: bar
Labels: <none>
Namespace: foo
Address:
Default backend: default-backend:80 (<error: endpoints "default-backend" not found>)
@ -2498,7 +2511,11 @@ func TestDescribeIngressV1(t *testing.T) {
fakeClient := fake.NewSimpleClientset(&networkingv1.Ingress{
ObjectMeta: metav1.ObjectMeta{
Name: "bar",
Name: "bar",
Labels: map[string]string{
"id1": "app1",
"id2": "app2",
},
Namespace: "foo",
},
Spec: networkingv1.IngressSpec{
@ -2524,7 +2541,12 @@ func TestDescribeIngressV1(t *testing.T) {
if err != nil {
t.Errorf("unexpected error: %v", err)
}
if !strings.Contains(out, "bar") || !strings.Contains(out, "foo") || !strings.Contains(out, "foo.bar.com") || !strings.Contains(out, "/foo") {
if !strings.Contains(out, "bar") ||
!strings.Contains(out, "foo") ||
!strings.Contains(out, "foo.bar.com") ||
!strings.Contains(out, "/foo") ||
!strings.Contains(out, "app1") ||
!strings.Contains(out, "app2") {
t.Errorf("unexpected out: %s", out)
}
}