Merge pull request #88716 from zhouya0/show_kubectl_describe_ingress_error
Show kubectl describe ingress error Kubernetes-commit: 318918cac4fd821084856820c786f65a0d622f89
This commit is contained in:
commit
a052177169
|
@ -2354,8 +2354,14 @@ func (i *IngressDescriber) Describe(namespace, name string, describerSettings De
|
||||||
}
|
}
|
||||||
|
|
||||||
func (i *IngressDescriber) describeBackend(ns string, backend *networkingv1beta1.IngressBackend) string {
|
func (i *IngressDescriber) describeBackend(ns string, backend *networkingv1beta1.IngressBackend) string {
|
||||||
endpoints, _ := i.CoreV1().Endpoints(ns).Get(context.TODO(), backend.ServiceName, metav1.GetOptions{})
|
endpoints, err := i.CoreV1().Endpoints(ns).Get(context.TODO(), backend.ServiceName, metav1.GetOptions{})
|
||||||
service, _ := i.CoreV1().Services(ns).Get(context.TODO(), backend.ServiceName, metav1.GetOptions{})
|
if err != nil {
|
||||||
|
return fmt.Sprintf("<error: %v>", err)
|
||||||
|
}
|
||||||
|
service, err := i.CoreV1().Services(ns).Get(context.TODO(), backend.ServiceName, metav1.GetOptions{})
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Sprintf("<error: %v>", err)
|
||||||
|
}
|
||||||
spName := ""
|
spName := ""
|
||||||
for i := range service.Spec.Ports {
|
for i := range service.Spec.Ports {
|
||||||
sp := &service.Spec.Ports[i]
|
sp := &service.Spec.Ports[i]
|
||||||
|
|
|
@ -1673,6 +1673,45 @@ func TestDescribeDeployment(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestDescribeIngress(t *testing.T) {
|
||||||
|
defaultBackend := networkingv1beta1.IngressBackend{
|
||||||
|
ServiceName: "default-backend",
|
||||||
|
ServicePort: intstr.FromInt(80),
|
||||||
|
}
|
||||||
|
|
||||||
|
fakeClient := fake.NewSimpleClientset(&networkingv1beta1.Ingress{
|
||||||
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
|
Name: "bar",
|
||||||
|
Namespace: "foo",
|
||||||
|
},
|
||||||
|
Spec: networkingv1beta1.IngressSpec{
|
||||||
|
Rules: []networkingv1beta1.IngressRule{
|
||||||
|
{
|
||||||
|
Host: "foo.bar.com",
|
||||||
|
IngressRuleValue: networkingv1beta1.IngressRuleValue{
|
||||||
|
HTTP: &networkingv1beta1.HTTPIngressRuleValue{
|
||||||
|
Paths: []networkingv1beta1.HTTPIngressPath{
|
||||||
|
{
|
||||||
|
Path: "/foo",
|
||||||
|
Backend: defaultBackend,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
i := IngressDescriber{fakeClient}
|
||||||
|
out, err := i.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||||
|
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") {
|
||||||
|
t.Errorf("unexpected out: %s", out)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestDescribeStorageClass(t *testing.T) {
|
func TestDescribeStorageClass(t *testing.T) {
|
||||||
reclaimPolicy := corev1.PersistentVolumeReclaimRetain
|
reclaimPolicy := corev1.PersistentVolumeReclaimRetain
|
||||||
bindingMode := storagev1.VolumeBindingMode("bindingmode")
|
bindingMode := storagev1.VolumeBindingMode("bindingmode")
|
||||||
|
@ -2660,8 +2699,15 @@ func TestDescribeEvents(t *testing.T) {
|
||||||
}, events),
|
}, events),
|
||||||
},
|
},
|
||||||
// TODO(jchaloup): add tests for:
|
// TODO(jchaloup): add tests for:
|
||||||
// - IngressDescriber
|
|
||||||
// - JobDescriber
|
// - JobDescriber
|
||||||
|
"IngressDescriber": &IngressDescriber{
|
||||||
|
fake.NewSimpleClientset(&networkingv1beta1.Ingress{
|
||||||
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
|
Name: "bar",
|
||||||
|
Namespace: "foo",
|
||||||
|
},
|
||||||
|
}, events),
|
||||||
|
},
|
||||||
"NodeDescriber": &NodeDescriber{
|
"NodeDescriber": &NodeDescriber{
|
||||||
fake.NewSimpleClientset(&corev1.Node{
|
fake.NewSimpleClientset(&corev1.Node{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
|
|
Loading…
Reference in New Issue