Fabric : utilisation

De wikiGite

Tips

Liste de hosts

Créer un fichier qui contient tous les hosts :

$ cat hosts.py
from fabric.api import env

# Use "+=" to allow srv_all() to add all env.hosts in only one def by calling each other def.
def srv_test():
   """Test"""
   env.hosts += ['testsrv.domain.com']

def srv_blueonyx():
   """BlueOnyx"""
   env.hosts += ['BOsrv1.domain.com', 'BOsrv2.domain.com']

def srv_debian():
   """Debian"""
   env.hosts += ['Debsrv.domain.com']

def srv_all():
   """All"""
   srv_test()
   srv_blueonyx()
   srv_debian()

On peut alors appeler une action pour un seul host avec "-H"

fab -f fabfile.py -H BOsrv1.domain.com actionAEffectuer

ou pour toute une liste de hosts (penser à ajouter "from hosts import *" en début de script !) :

fab -f fabfile.py srv_blueonyx actionAEffectuer

Exemples