Может ли ткань запускать локальный скрипт на удаленной машине?

У меня есть myfile.py на моей локальной машине.

Я хочу сделать что-то вроде:

from fabric.api import env, run

env.host_string = 'whatever.com'

def run_script():
    run('python myfile.py')

но, конечно, это возвращает can't open file 'myfile.py': [Errno 2] No such file or directory Как я могу запустить этот файл удаленно? Должен ли я put его на whatever.com?


person Plastic Soul    schedule 24.06.2015    source источник


Ответы (1)


Вы можете сначала отправить свой myfile.py на удаленный компьютер, используя fabric.operations.put, а затем запустите скрипт, как вы пытались.

Но убедитесь, что путь к вашему скрипту является либо абсолютным путем, либо относительным относительно текущего каталога, из которого выполняются удаленные команды, это можно узнать с помощью cwd вы также можете вручную cd войти в удаленную папку, используя fabric.context_managers.cd

person Yogesh Mangaj    schedule 24.06.2015