Я ищу способ определить задачу с multirun, которая будет работать на множестве серверов, определенных в командной строке (через роли или хосты).
Все примеры, которые я видел до сих пор, пытаются сделать что-то вроде:
env('app-nodes').multirun('some command')
Но я не хочу жестко кодировать роль. Я бы хотел определить его с помощью fab -R...
вместо этого. Какие у меня варианты?
Я ожидаю, что это сработает:
@task
def some_task():
env().multirun('some command')
но это бросает TypeError: '_AttributeDict' object is not callable
Вы очень хотите использовать аргументы задачи и подавать их в tav env() следующим образом: http://docs.fabfile.org/en/1.1.1/usage/fab.html#per-task-arguments
Также почему вы ожидаете, что пустой набор для хостов будет работать?