gpt4 book ai didi

python - 如何强制重新连接 Fabric

转载 作者:行者123 更新时间:2023-11-30 22:37:13 26 4
gpt4 key购买 nike

我正在使用 python 结构。每次我对 FreeBSD pf 防火墙进行更改时,Fabric 的现有连接都会中断或挂起,或者我不知道,但它不再工作并且脚本挂起。通常 ssh 连接比这更强大,有时当您使用防火墙更改某些内容时,它们会挂起几秒钟,但使用 Fabric,它们会永远挂起,并且脚本变得无用。无论如何,即使我的 ssh 连接中断,我也希望 Fabric 创建一个新的 SSH 连接以继续执行脚本的其他 run 命令。这是布料的问题。我过去使用过无数其他基于SSH的工具,包括我自己的工具,但我没有遇到这个问题。如何断开并重新连接 Fabric ssh 连接池?或者将所有连接设置为过期并强制它们重新连接。

如果run函数在几秒钟后检测到连接不再工作并创建一个新的连接,那就更好了,但显然Fabric不是这样工作的。

最佳答案

看来:

from fabric import network
from fabric.state import connections

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

它很丑陋,但它似乎适用于我一次仅与一台主机一起使用的特定脚本。

关于python - 如何强制重新连接 Fabric,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43942543/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com