[TypeScript SDK] tls connection error

We are running a TypeScript SDK@1.52 and Temporal Cloud 2.91

Our WorkflowClient is created this way:

const connectionConfig: ConnectionOptions = {
      address: process.env.TEMPORAL_URL,
      connectTimeout: '30s',
      tls: {
          clientCertPair: {
              crt: fs.readFileSync(`${__dirname}/certs/tempo.pem`),
              key: fs.readFileSync(`${__dirname}/certs/tempo.key`),
          },
      },
  };
  return new WorkflowClient({
      connection: await Connection.connect(connectionConfig),
      namespace: WorkflowConfig.namespace(process.env),
  });

Temporal Cloud Namespace is provisioned with CA certificates as required.

However, connection fails with the following error:

Failed to call GetSystemInfo: status: Unknown, message: "", details: [], metadata: MetadataMap 
{ 
    "headers": {
        "location": "https://***-ns.tmprl.cloud/temporal.api.workflowservice.v1.WorkflowService/GetSystemInfo", 
        "content-type": "application/grpc", 
        "server": "temporal", 
        "date": "Sat, 28 Jan 2023 10:04:57 GMT"
    } 
}, 
{
    "exception": {
        "name":"TransportError"
    }
}

Check your certs:

openssl s_client -connect ${namespace}.tmprl.cloud:7233 -showcerts -cert ./cert.pem -key ./cert.key -tls1_2 -servername ${namespace}.tmprl.cloud

There is also sample here that you can try out for your ns just set env vars before running it:

TEMPORAL_ADDRESS
TEMPORAL_NAMESPACE
TEMPORAL_CLIENT_CERT_PATH
TEMPORAL_CLIENT_KEY_PATH

(related docs here)

Verify return code: 0 (ok)

@tihomir it looks like the issue is not related to certificates, but GetSystemInfo returns an empty body (status: Unknown, message: “”)

I’ve found the issue in my code, thanks for assistance, pls feel free to close this topic!