From 117edceadc1646b2df0387aa518b155dbb68e01c Mon Sep 17 00:00:00 2001 From: xiangpengzhao Date: Mon, 9 Oct 2017 12:11:00 +0800 Subject: [PATCH] Revert "Validate if service has duplicate targetPort" This reverts commit ce54d9072bd637db5441a9c7b92c8d0eb0511629. --- pkg/apis/core/validation/validation.go | 16 --------- pkg/apis/core/validation/validation_test.go | 36 --------------------- 2 files changed, 52 deletions(-) diff --git a/pkg/apis/core/validation/validation.go b/pkg/apis/core/validation/validation.go index c3878644cd5..98a3b6c44ad 100644 --- a/pkg/apis/core/validation/validation.go +++ b/pkg/apis/core/validation/validation.go @@ -3184,22 +3184,6 @@ func ValidateService(service *core.Service) field.ErrorList { ports[key] = true } - // Check for duplicate TargetPort - portsPath = specPath.Child("ports") - targetPorts := make(map[core.ServicePort]bool) - for i, port := range service.Spec.Ports { - if (port.TargetPort.Type == intstr.Int && port.TargetPort.IntVal == 0) || (port.TargetPort.Type == intstr.String && port.TargetPort.StrVal == "") { - continue - } - portPath := portsPath.Index(i) - key := core.ServicePort{Protocol: port.Protocol, TargetPort: port.TargetPort} - _, found := targetPorts[key] - if found { - allErrs = append(allErrs, field.Duplicate(portPath.Child("targetPort"), port.TargetPort)) - } - targetPorts[key] = true - } - // Validate SourceRange field and annotation _, ok := service.Annotations[core.AnnotationLoadBalancerSourceRangesKey] if len(service.Spec.LoadBalancerSourceRanges) > 0 || ok { diff --git a/pkg/apis/core/validation/validation_test.go b/pkg/apis/core/validation/validation_test.go index 07d03fe56df..144abb69c94 100644 --- a/pkg/apis/core/validation/validation_test.go +++ b/pkg/apis/core/validation/validation_test.go @@ -7113,42 +7113,6 @@ func TestValidateService(t *testing.T) { }, numErrs: 0, }, - { - name: "invalid duplicate targetports (number with same protocol)", - tweakSvc: func(s *core.Service) { - s.Spec.Type = core.ServiceTypeClusterIP - s.Spec.Ports = append(s.Spec.Ports, core.ServicePort{Name: "q", Port: 1, Protocol: "TCP", TargetPort: intstr.FromInt(8080)}) - s.Spec.Ports = append(s.Spec.Ports, core.ServicePort{Name: "r", Port: 2, Protocol: "TCP", TargetPort: intstr.FromInt(8080)}) - }, - numErrs: 1, - }, - { - name: "invalid duplicate targetports (name with same protocol)", - tweakSvc: func(s *core.Service) { - s.Spec.Type = core.ServiceTypeClusterIP - s.Spec.Ports = append(s.Spec.Ports, core.ServicePort{Name: "q", Port: 1, Protocol: "TCP", TargetPort: intstr.FromString("http")}) - s.Spec.Ports = append(s.Spec.Ports, core.ServicePort{Name: "r", Port: 2, Protocol: "TCP", TargetPort: intstr.FromString("http")}) - }, - numErrs: 1, - }, - { - name: "valid duplicate targetports (number with different protocols)", - tweakSvc: func(s *core.Service) { - s.Spec.Type = core.ServiceTypeClusterIP - s.Spec.Ports = append(s.Spec.Ports, core.ServicePort{Name: "q", Port: 1, Protocol: "TCP", TargetPort: intstr.FromInt(8080)}) - s.Spec.Ports = append(s.Spec.Ports, core.ServicePort{Name: "r", Port: 2, Protocol: "UDP", TargetPort: intstr.FromInt(8080)}) - }, - numErrs: 0, - }, - { - name: "valid duplicate targetports (name with different protocols)", - tweakSvc: func(s *core.Service) { - s.Spec.Type = core.ServiceTypeClusterIP - s.Spec.Ports = append(s.Spec.Ports, core.ServicePort{Name: "q", Port: 1, Protocol: "TCP", TargetPort: intstr.FromString("http")}) - s.Spec.Ports = append(s.Spec.Ports, core.ServicePort{Name: "r", Port: 2, Protocol: "UDP", TargetPort: intstr.FromString("http")}) - }, - numErrs: 0, - }, { name: "valid type - cluster", tweakSvc: func(s *core.Service) {