Я использую ткань и пытаюсь выполнить некоторые команды на удаленной машине. Я написал клиент python, который выполняет эту работу.Ткань не закрывает соединение ssh
@task
@serial
def execute_command(timeout, command):
if timeout == -1:
return run(command, shell=False, pty=False, warn_only=True)
else:
return run(command, shell=False, pty=False, warn_only=True, timeout=int(timeout))
Это делает график работы, но проблема в том, что всякий раз, когда есть работа, которая занимает более 30 секунд или около того, он никогда не выходит из execute_command. И тайм-аут тоже не работает.
Когда я делаю ss -t | less
и проверяю активность сокета, соединение ssh, относящееся к этой команде, по-прежнему активно. И он остается активным, пока я не убью его. Он никогда не умирает сам по себе.
Можете ли вы кого-нибудь помочь мне с этим? Я хочу, чтобы он вышел, а также за время ожидания работы.