Когда я запустите этот fabfile.py
...
from fabric.api import env, run, local, cd
def setenv(foo):
env.hosts = ['myhost']
def mycmd(foo):
setenv(foo)
print(env.hosts)
run('ls')
с помощью этой команды fab mycmd: bar
. Я получаю этот вывод ...
['myhost']
No hosts found. Please specify (single) host string for connection:
Что, что ?! Я не понимаю? Я установил env.hosts
, и кажется, что он действителен «внутри» функции mycmd
, но по какой-то причине команда run
не знает про хосты
я указал.
Цвет меня смутил. Любая помощь будет оценена по достоинству!