Diagnosis upgrade vCenter connectivity testcases fail if vCenter password contains '#' character
search cancel

Diagnosis upgrade vCenter connectivity testcases fail if vCenter password contains '#' character

book

Article ID: 385739

calendar_today

Updated On:

Products

VMware Telco Cloud Automation

Issue/Introduction

Diagnosis for vcenter fails with the below error:

\"error running testcase: Get \\\"https:\/\/[email protected]:*{}@password#@testfqdn.abc.1\/sdk\\\": dial tcp: lookup   v on 172.x.x.x:53: server misbehaving\",\n        \"errorCode\":  \"CAS003113\",\n        \"expected\":  \"Valid ThumbPrint for vCenter in cluster\",\n        \"message\":  \"error running testcase: Get \\\"https:\/\/[email protected]:{}*@password#@testfqdn.abc.1\/sdk\\\": dial tcp: lookup password on 172.x.x.x:53: server misbehaving\",\n        \"name\":  \"Workload Cluster vCenter Certificate Diagnosis\",\n        \"status\":  \"fail\"\n      }\n    ]\n  },\n  \"lastRun\":  \"2024-12-27T12:34:54Z\"\n}"} 

Environment

3.2

Cause

If the password contains '#' special character then the vCenter SOAP URL 'https://<vc_username>:<vc_password>:testfqdn.abc.1/sdk' is not parsed properly and diagnosis test case fails while establishing connection to vcenter to fetch its thumbprint. Reason for this is while parsing the URL, the library being used fragments the URL using the '#' character while parsing the url to fetch the hostname and path. If '#' is present in the password , then any string that is present after '#' in the URL is fragmented resulting in deducing the hostname or path incorrectly.

 

Resolution

This is a bug  where upgrade vCenter connectivity testcases fail if vCenter password contains '#' character and it will be fixed in TCA 3.3

Alternatively, Below can be  executed in management cluster to verify the vcenter connectivity.

1. kubectl get endpoints.monitoring -n tca-system | grep vcenter

2. kubectl describe 'cr-name' -n tca-system

Under Status:Conditions we can see similar output such as

Status:
  Conditions:
    Last Set Time:         2037-12-21T14:49:09Z
    Last Transition Time:  2037-12-19T06:39:09Z
    Status:                True
    Type:                  Ready
    Last Set Time:         2037-12-21T14:49:09Z
    Last Transition Time:  2037-12-19T06:39:09Z
    Status:                True
    Type:                  ConnectivityOk
    Last Set Time:         2037-12-21T14:49:09Z
    Last Transition Time:  2037-12-19T06:39:09Z
    Status:                True
    Type:                  TLSProbeOk
    Last Set Time:         2037-12-21T14:29:09Z
    Last Transition Time:  2037-12-13T17:09:09Z
    Status:                True
    Type:                  vSphereLoginOk
  Last Run Time:           2037-12-21T14:49:08Z
  Observed Generation:     3