Saya ingin menjalankan skrip fabric saya secara lokal, yang pada gilirannya, masuk ke server saya, beralih pengguna untuk menyebarkan, mengaktifkan proyek .virtualenv, yang akan mengubah dir ke proyek dan mengeluarkan tarikan git.
def git_pull():
sudo('su deploy')
# here i need to switch to the virtualenv
run('git pull')
Saya biasanya menggunakan perintah workon dari virtualenvwrapper yang sumber file aktifkan dan file postactivate akan menempatkan saya di folder proyek. Dalam kasus ini, tampaknya karena kain beroperasi dari dalam shell, kontrol diberikan ke kain, jadi saya tidak dapat menggunakan sumber bawaan bash ke '$ source ~ / .virtualenv / myvenv / bin / activ'
Adakah yang punya contoh dan penjelasan tentang bagaimana mereka melakukan ini?
workon
sebagaiprefix
?