Wie kann Fabric Offline-Hosts in der Liste env.hosts ignorieren?

Das hängt mit meiner zusammenvorherige Frage, aber ein anderer.

Ich habe folgende Datei:

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")

Und die Ausgabe ist:

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

Nachdem die Ausführung den Offline-Server erreicht hat, wird sie sofort abgebrochen, unabhängig von den anderen Servern in der Liste env.hosts.

Ich habe die env-Einstellung "warn_only = True" verwendet, aber ich verwende sie möglicherweise nicht ordnungsgemäß.

Wie kann ich dieses Verhalten so ändern, dass nur der Fehler ausgegeben und die Ausführung fortgesetzt wird?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage