2017-05-12 15 views
0

私はpythonファブリックを使用しています。 FreeBSD pfファイアウォールに何か変更するたびに、Fabricの既存の接続が切断されるか、わかりませんが、もう動作しなくなり、スクリプトがハングアップします。 通常、ssh接続はそれよりも堅牢ですが、ファイアウォールで何かを変更すると数秒間ハングアップすることがありますが、ファブリックを使用すると永遠にハングアップし、スクリプトは役に立たなくなります。 とにかく、私のSSH接続が切れても、私はFabricに新しいSSH接続を作成して、他のスクリプトrunのコマンドを続行してほしいです。 Fabricに問題があります。私は過去にSSHに基づいた数多くのツールを使用していました。私自身もこの問題はありませんでした。 ファブリックssh接続プールを切断して再接続するにはどうすればいいですか?または、すべての接続が期限切れになるように設定し、再接続を強制します。ファブリックとの再接続を強制する方法

runが数秒後に検出されたばかりで、接続が機能しなくなり、新しいものを作成したほうがよいでしょうが、明らかにFabricはそのように機能しません。

答えて

1

と思われる:それは醜いですが、それは私が一度に1つのホストのみで使用し、私の特定のスクリプトのために働いているようだ

from fabric import network 
from fabric.state import connections 

def reconnect_current_host(): 
    network.disconnect_all() 
    connections.connect(env.host + ':%s' % env.port) 

関連する問題