Я хочу запустить свою ткань script локально, которая, в свою очередь, войдет в мой сервер, переключит пользователя на развертывание, активирует проекты .virtualenv, который изменит каталог в проект и вытащит git.
def git_pull():
    sudo('su deploy')
    # here i need to switch to the virtualenv
    run('git pull')
Обычно я использую команду workon от virtualenvwrapper, которая активирует файл активации, и файл postactivate помещает меня в папку проекта. В этом случае кажется, что из-за того, что ткань работает изнутри оболочки, управление передается в ткань, поэтому я не могу использовать встроенный источник bash для источника $source ~/.virtualenv/myvenv/bin/activate '
У кого-нибудь есть пример и объяснение того, как они это сделали?
