Skip to content

Commit

Permalink
Merge pull request #918 from openshift-cherrypick-robot/cherry-pick-9…
Browse files Browse the repository at this point in the history
…12-to-release-4.9

[release-4.9] Bug 2004953: Fix user-agent in vCenter sessions list
  • Loading branch information
openshift-merge-robot committed Oct 15, 2021
2 parents 38efcc6 + 0263d97 commit 856f087
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions pkg/controller/vsphere/session/session.go
Expand Up @@ -67,6 +67,7 @@ func GetOrCreate(
return &session, nil
}
}
klog.Infof("No existing vCenter session found, creating new session")

soapURL, err := soap.ParseURL(server)
if err != nil {
Expand All @@ -76,20 +77,26 @@ func GetOrCreate(
return nil, fmt.Errorf("error parsing vSphere URL %q", server)
}

soapURL.User = url.UserPassword(username, password)

// Set user to nil there for prevent login during client creation.
// See https://github.com/vmware/govmomi/blob/master/client.go#L91
soapURL.User = nil
client, err := govmomi.NewClient(ctx, soapURL, insecure)
if err != nil {
return nil, fmt.Errorf("error setting up new vSphere SOAP client: %w", err)
}

// Set up user agent before login for being able to track mapi component in vcenter sessions list
client.UserAgent = "machineAPIvSphereProvider"
if err := client.Login(ctx, url.UserPassword(username, password)); err != nil {
return nil, fmt.Errorf("unable to login to vCenter: %w", err)
}

session := Session{
Client: client,
username: username,
password: password,
}

session.UserAgent = "machineAPIvSphereProvider"
session.Finder = find.NewFinder(session.Client.Client, false)

dc, err := session.Finder.DatacenterOrDefault(ctx, datacenter)
Expand Down

0 comments on commit 856f087

Please sign in to comment.