python - software - pip install fabric
¿Cómo configurar el directorio de trabajo para una tarea Fabric? (1)
Suponiendo que defino una tarea trivial para listar archivos en un servidor remoto:
from fabric.api import run, env
env.use_ssh_config = True
def list_files():
run(''ls'')
Y lo ejecuto con:
fab -H server list_files
¿Cómo puedo especificar el directorio de trabajo para el comando que estoy ejecutando, aparte de hacer:
run(''cd /tmp && ls'')
¿Qué no me parece muy idiomático?
Descargo de responsabilidad: estoy viendo Fabric por primera vez en mi vida y soy totalmente nuevo en Python.
Usa el cd
administrador de contexto :
from fabric.api import run, env
from fabric.context_managers import cd
env.use_ssh_config = True
def list_files():
with cd(''/tmp''):
run(''ls'')