INNER CODE UNIT · Python
ssh_client_for_host
sky22333/ansible-ui · app.py:99
def ssh_client_for_host(host, timeout=10):
"""为指定主机创建并管理SSH连接"""
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
connect_args = {
'hostname': host['address'],
'port': host['port'],
'username': host['username'],
'timeout': timeout
}
if host['auth_method'] == 'password':
connect_args['password'] = host['password']
ssh.connect(**connect_args)
try:
yield ssh
finally: