Jak sprawić, by Fabric ignorował hosty offline na liście env.hosts?

Jest to związane z moimpoprzednie pytanie, ale inny.

Mam następujący 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")

A wyjście to:

[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.

Po wykonaniu egzekucji na serwerze offline następuje natychmiastowe przerwanie, niezależnie od innych serwerów na liście env.hosts.

Użyłem ustawienia env "warn_only = True", ale może używam go niewłaściwie.

Jak mogę zmodyfikować to zachowanie, aby drukowało tylko błąd i kontynuowało wykonywanie?

questionAnswers(4)

yourAnswerToTheQuestion