waft.system.clients.connection_details module

class waft.system.clients.connection_details.ConnectionDetails(hostname: str, username: str, password: str | None = None, port: int = 22, proxy_hostname: str | None = None, proxy_username: str | None = None, proxy_password: str | None = None, proxy_port: int | None = 22, key_files: list[Path] | None = None, proxy_key_files: list[Path] | None = None)

Bases: object

Represents SSH connection details for a desktop platform (macOS, Linux, Windows).

This class encapsulates all required and optional attributes needed to establish an SSH connection to a remote system, including support for a proxy/gateway connection.

available_key_files(for_proxy: bool = False) list[str]

Returns a list of available key files as strings for either target or proxy.

Parameters:

for_proxy (bool) – If True, fetch key files for the proxy system.

Returns:

List of valid key file paths.

Return type:

List[str]

property password: str | None

Returns the password for the target system.

If the password is not already set, the user will be prompted to provide it interactively.

Returns:

The password for the target system.

Return type:

Optional[str]