The client.py module#

Summary#

GrpcClient

Wraps the gRPC connection for the Geometry service.

wait_until_healthy

Wait until a channel is healthy before returning.

Description#

Module providing a wrapped abstraction of the gRPC stubs.

Module detail#

client.wait_until_healthy(channel: grpc.Channel | str, timeout: float, transport_mode: str | None = None, uds_dir: pathlib.Path | str | None = None, uds_id: str | None = None, certs_dir: pathlib.Path | str | None = None) grpc.Channel#

Wait until a channel is healthy before returning.

Parameters:
channelChannel | str

Channel that must be established and healthy. The target can also be passed in. In that case, a channel is created using the default insecure channel.

timeoutfloat

Timeout in seconds. Attempts are made with the following backoff strategy:

  • Starts with 0.1 seconds.

  • If the attempt fails, double the timeout.

  • This is repeated until the next timeoff exceeds the value for the remaining time. In that case, a final attempt is made with the remaining time.

  • If the total elapsed time exceeds the value for the timeout parameter, a TimeoutError is raised.

transport_modestr | None

Transport mode selected. Needed if channel is a string. Options are: “insecure”, “uds”, “wnua”, “mtls”.

uds_dirPath | str | None

Directory to use for Unix Domain Sockets (UDS) transport mode. By default None and thus it will use the “~/.conn” folder.

uds_idstr | None

Optional ID to use for the UDS socket filename. By default None and thus it will use “aposdas_socket.sock”. Otherwise, the socket filename will be “aposdas_socket-.sock”.

certs_dirPath | str | None

Directory to use for TLS certificates. By default None and thus search for the “ANSYS_GRPC_CERTIFICATES” environment variable. If not found, it will use the “certs” folder assuming it is in the current working directory.

Returns:
grpc.Channel

The channel that was passed in. This channel is guaranteed to be healthy. If a string was passed in, a channel is created using the default insecure channel.

Raises:
TimeoutError

Raised when the total elapsed time exceeds the value for the timeout parameter.