diff --git a/test/e2e/network/service.go b/test/e2e/network/service.go index 5a5491f08c7..fe45f949fc0 100644 --- a/test/e2e/network/service.go +++ b/test/e2e/network/service.go @@ -1680,16 +1680,17 @@ var _ = common.SIGDescribe("Services", func() { } }() - service := t.BuildServiceSpec() - service.Spec.Type = v1.ServiceTypeNodePort + var service *v1.Service + baseService := t.BuildServiceSpec() + baseService.Spec.Type = v1.ServiceTypeNodePort numberOfRetries := 5 ginkgo.By("creating service " + serviceName + " with type NodePort in namespace " + ns) var err error for i := 0; i < numberOfRetries; i++ { port, err := e2eservice.GetUnusedStaticNodePort() framework.ExpectNoError(err, "Static node port allocator was not able to find a free nodeport.") - service.Spec.Ports[0].NodePort = port - service, err = t.CreateService(service) + baseService.Spec.Ports[0].NodePort = port + service, err = t.CreateService(baseService) // We will later delete this service and then recreate it with same nodeport. We need to ensure that // another e2e test doesn't start listening on our old nodeport and conflicts re-creation of service // hence we use ReserveStaticNodePort.