Redémarrer un host distant avec Fabric

Boris HUISGEN

Le redémarrage d’un host avec Fabric est parfois compliqué à gérer.
L’opération reboot fournie par Fabric étant dysfonctionnelle et dépréciée, il convient d’utiliser une méthode manuelle et sûre :
1from fabric.state import *
2
3def mytask:
4    sudo("shutdown -r +1")
5    time.sleep(120)
6    connections[env.host_string].get_transport().close()
7    run("uptime")Le délai d’attente peut être adaptée au besoin, mais la déconnexion à l’hôte est requise pour que Fabric puisse ré-établir le tunnel SSH.