How to connect to a Temporal Cluster in Go
Use the Dial()
API available in the go.temporal.io/sdk/client
package to create a new Client
.
If you don't provide HostPort
, the Client defaults the address and port number to 127.0.0.1:7233
.
Set a custom Namespace name in the Namespace field on an instance of the Client Options.
Use the ConnectionOptions
API to connect a Client with mTLS.
import (
// ...
"go.temporal.io/sdk/client"
)
func main() {
cert, err := tls.LoadX509KeyPair(clientCertPath, clientKeyPath)
if err != nil {
return err
}
client, err := client.Dial(client.Options{
HostPort: "your-custom-namespace.tmprl.cloud:7233",
Namespace: "your-custom-namespace",
ConnectionOptions: client.ConnectionOptions{
TLS: &tls.Config{Certificates: []tls.Certificate{cert}},
},
}
defer temporalClient.Close()
// ...
}