Como fazer o Fabric ignorar hosts offline na lista env.hosts?
Isso está relacionado ao meupergunta anterior, mas diferente.
Eu tenho o seguinte 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")
E a saída é:
[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.
Depois que a execução atinge o servidor off-line, ela é anulada imediatamente, independentemente dos outros servidores na lista env.hosts.
Eu usei o env configuração "warn_only = True", mas talvez eu estou usando de forma inadequada.
Como posso modificar esse comportamento para que apenas imprima o erro e continue a execução?