Voglio eseguire localmente il mio script di fabric, che a sua volta accederà al mio server, passerà l'utente alla distribuzione, attiverà i progetti .virtualenv, che cambieranno dir al progetto e genereranno un git pull.
def git_pull():
sudo('su deploy')
# here i need to switch to the virtualenv
run('git pull')
In genere utilizzo il comando workon di virtualenvwrapper che genera il file di attivazione e il file postactivate mi inserirà nella cartella del progetto. In questo caso, sembra che, poiché fabric viene eseguito all'interno della shell, il controllo è ceduto a fabric, quindi non posso usare il sorgente di bash incorporato in '$ source ~ / .virtualenv / myvenv / bin / activ'
Qualcuno ha un esempio e una spiegazione di come hanno fatto questo?
workon
comeprefix
?