Parallelize creation/deletion of services in load test

This commit is contained in:
Wojciech Tyczynski 2017-05-16 11:41:39 +02:00
parent b996c8b997
commit 7809e583e8

View File

@ -34,6 +34,7 @@ import (
utilnet "k8s.io/apimachinery/pkg/util/net" utilnet "k8s.io/apimachinery/pkg/util/net"
restclient "k8s.io/client-go/rest" restclient "k8s.io/client-go/rest"
"k8s.io/client-go/transport" "k8s.io/client-go/transport"
"k8s.io/client-go/util/workqueue"
"k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/pkg/apis/batch" "k8s.io/kubernetes/pkg/apis/batch"
@ -185,17 +186,19 @@ var _ = framework.KubeDescribe("Load capacity", func() {
if itArg.services { if itArg.services {
framework.Logf("Creating services") framework.Logf("Creating services")
services := generateServicesForConfigs(configs) services := generateServicesForConfigs(configs)
for _, service := range services { createService := func(i int) {
_, err := clientset.Core().Services(service.Namespace).Create(service) _, err := clientset.Core().Services(services[i].Namespace).Create(services[i])
framework.ExpectNoError(err) framework.ExpectNoError(err)
} }
workqueue.Parallelize(25, len(services), createService)
framework.Logf("%v Services created.", len(services)) framework.Logf("%v Services created.", len(services))
defer func(services []*v1.Service) { defer func(services []*v1.Service) {
framework.Logf("Starting to delete services...") framework.Logf("Starting to delete services...")
for _, service := range services { deleteService := func(i int) {
err := clientset.Core().Services(service.Namespace).Delete(service.Name, nil) err := clientset.Core().Services(services[i].Namespace).Delete(services[i].Name, nil)
framework.ExpectNoError(err) framework.ExpectNoError(err)
} }
workqueue.Parallelize(25, len(services), deleteService)
framework.Logf("Services deleted") framework.Logf("Services deleted")
}(services) }(services)
} else { } else {