gpt4 book ai didi

python - 如何让 Fabric 忽略 env.hosts 列表中的离线主机?

转载 作者:太空狗 更新时间:2023-10-29 17:52:42 25 4
gpt4 key购买 nike

这与我的previous question有关,而是一个不同的。

我有以下 fabfile:

from fabric.api import *

host1 = '192.168.200.181'
offline_host2 = '192.168.200.199'
host3 = '192.168.200.183'

env.hosts = [host1, offline_host2, host3]
env.warn_only = True

def df_h():
with settings(warn_only=True):
run("df -h | grep sda3")

输出是:

[192.168.200.199] run: df -h | grep sda3

Fatal error: Low level socket error connecting to host 192.168.200.199: No route to host

Aborting.

执行到达离线服务器后,它会立即中止,而不管 env.hosts 列表中的其他服务器。

我使用了 env 设置“warn_only=True”,但可能我使用不当。

如何修改此行为,使其只打印错误并继续执行?

最佳答案

从 1.4 版开始,Fabric 有一个 --skip-bad-hosts 选项,可以从命令行设置,或者通过在 fab 文件中设置变量。

env.skip_bad_hosts = True

该选项的文档在此处: http://docs.fabfile.org/en/latest/usage/fab.html#cmdoption--skip-bad-hosts

不要忘记显式设置超时值。

关于python - 如何让 Fabric 忽略 env.hosts 列表中的离线主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1956777/

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