Skip to content

Commit 300daa1

Browse files
committed
Set user agent for e2e consistently
1 parent 00deec8 commit 300daa1

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

test/e2e/framework/framework.go

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -160,14 +160,6 @@ func (f *Framework) BeforeEach() {
160160
ginkgo.By("Creating a kubernetes client")
161161
config, err := LoadConfig()
162162
ExpectNoError(err)
163-
testDesc := ginkgo.CurrentGinkgoTestDescription()
164-
if len(testDesc.ComponentTexts) > 0 {
165-
componentTexts := strings.Join(testDesc.ComponentTexts, " ")
166-
config.UserAgent = fmt.Sprintf(
167-
"%v -- %v",
168-
rest.DefaultKubernetesUserAgent(),
169-
componentTexts)
170-
}
171163

172164
config.QPS = f.Options.ClientQPS
173165
config.Burst = f.Options.ClientBurst

test/e2e/framework/util.go

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ import (
6464
"k8s.io/client-go/dynamic"
6565
clientset "k8s.io/client-go/kubernetes"
6666
"k8s.io/client-go/kubernetes/scheme"
67+
"k8s.io/client-go/rest"
6768
restclient "k8s.io/client-go/rest"
6869
scaleclient "k8s.io/client-go/scale"
6970
"k8s.io/client-go/tools/clientcmd"
@@ -881,8 +882,8 @@ func KubectlVersion() (*utilversion.Version, error) {
881882
return utilversion.ParseSemantic(matches[1])
882883
}
883884

884-
// RestclientConfig returns a config holds the information needed to build connection to kubernetes clusters.
885-
func RestclientConfig(kubeContext string) (*clientcmdapi.Config, error) {
885+
// restclientConfig returns a config holds the information needed to build connection to kubernetes clusters.
886+
func restclientConfig(kubeContext string) (*clientcmdapi.Config, error) {
886887
Logf(">>> kubeConfig: %s", TestContext.KubeConfig)
887888
if TestContext.KubeConfig == "" {
888889
return nil, fmt.Errorf("KubeConfig must be specified to load client config")
@@ -901,13 +902,23 @@ func RestclientConfig(kubeContext string) (*clientcmdapi.Config, error) {
901902
// ClientConfigGetter is a func that returns getter to return a config.
902903
type ClientConfigGetter func() (*restclient.Config, error)
903904

904-
// LoadConfig returns a config for a rest client.
905-
func LoadConfig() (*restclient.Config, error) {
905+
// LoadConfig returns a config for a rest client with the UserAgent set to include the current test name.
906+
func LoadConfig() (config *restclient.Config, err error) {
907+
defer func() {
908+
if err == nil && config != nil {
909+
testDesc := ginkgo.CurrentGinkgoTestDescription()
910+
if len(testDesc.ComponentTexts) > 0 {
911+
componentTexts := strings.Join(testDesc.ComponentTexts, " ")
912+
config.UserAgent = fmt.Sprintf("%s -- %s", rest.DefaultKubernetesUserAgent(), componentTexts)
913+
}
914+
}
915+
}()
916+
906917
if TestContext.NodeE2E {
907918
// This is a node e2e test, apply the node e2e configuration
908919
return &restclient.Config{Host: TestContext.Host}, nil
909920
}
910-
c, err := RestclientConfig(TestContext.KubeContext)
921+
c, err := restclientConfig(TestContext.KubeContext)
911922
if err != nil {
912923
if TestContext.KubeConfig == "" {
913924
return restclient.InClusterConfig()

0 commit comments

Comments
 (0)