Skip to content

Commit e52df5b

Browse files
authored
Merge pull request kubernetes#84725 from liggitt/e2e-useragent
Set user agent for e2e consistently
2 parents cbe7c6e + 300daa1 commit e52df5b

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
@@ -159,14 +159,6 @@ func (f *Framework) BeforeEach() {
159159
ginkgo.By("Creating a kubernetes client")
160160
config, err := LoadConfig()
161161
ExpectNoError(err)
162-
testDesc := ginkgo.CurrentGinkgoTestDescription()
163-
if len(testDesc.ComponentTexts) > 0 {
164-
componentTexts := strings.Join(testDesc.ComponentTexts, " ")
165-
config.UserAgent = fmt.Sprintf(
166-
"%v -- %v",
167-
rest.DefaultKubernetesUserAgent(),
168-
componentTexts)
169-
}
170162

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

test/e2e/framework/util.go

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ import (
6262
"k8s.io/apimachinery/pkg/watch"
6363
clientset "k8s.io/client-go/kubernetes"
6464
"k8s.io/client-go/kubernetes/scheme"
65+
"k8s.io/client-go/rest"
6566
restclient "k8s.io/client-go/rest"
6667
scaleclient "k8s.io/client-go/scale"
6768
"k8s.io/client-go/tools/clientcmd"
@@ -841,8 +842,8 @@ func KubectlVersion() (*utilversion.Version, error) {
841842
return utilversion.ParseSemantic(matches[1])
842843
}
843844

844-
// RestclientConfig returns a config holds the information needed to build connection to kubernetes clusters.
845-
func RestclientConfig(kubeContext string) (*clientcmdapi.Config, error) {
845+
// restclientConfig returns a config holds the information needed to build connection to kubernetes clusters.
846+
func restclientConfig(kubeContext string) (*clientcmdapi.Config, error) {
846847
Logf(">>> kubeConfig: %s", TestContext.KubeConfig)
847848
if TestContext.KubeConfig == "" {
848849
return nil, fmt.Errorf("KubeConfig must be specified to load client config")
@@ -861,13 +862,23 @@ func RestclientConfig(kubeContext string) (*clientcmdapi.Config, error) {
861862
// ClientConfigGetter is a func that returns getter to return a config.
862863
type ClientConfigGetter func() (*restclient.Config, error)
863864

864-
// LoadConfig returns a config for a rest client.
865-
func LoadConfig() (*restclient.Config, error) {
865+
// LoadConfig returns a config for a rest client with the UserAgent set to include the current test name.
866+
func LoadConfig() (config *restclient.Config, err error) {
867+
defer func() {
868+
if err == nil && config != nil {
869+
testDesc := ginkgo.CurrentGinkgoTestDescription()
870+
if len(testDesc.ComponentTexts) > 0 {
871+
componentTexts := strings.Join(testDesc.ComponentTexts, " ")
872+
config.UserAgent = fmt.Sprintf("%s -- %s", rest.DefaultKubernetesUserAgent(), componentTexts)
873+
}
874+
}
875+
}()
876+
866877
if TestContext.NodeE2E {
867878
// This is a node e2e test, apply the node e2e configuration
868879
return &restclient.Config{Host: TestContext.Host}, nil
869880
}
870-
c, err := RestclientConfig(TestContext.KubeContext)
881+
c, err := restclientConfig(TestContext.KubeContext)
871882
if err != nil {
872883
if TestContext.KubeConfig == "" {
873884
return restclient.InClusterConfig()

0 commit comments

Comments
 (0)