Fabric并行任务未绑定到特定集

时间:2011-07-06 10:25:46

标签: python parallel-processing fabric

我正在寻找一种使用multirun定义任务的方法,该方法将在命令行中定义的一组服务器上运行(通过角色或主机)。

到目前为止我见过的所有例子都尝试做类似的事情:

env('app-nodes').multirun('some command')

但我不想硬编码角色。我想用fab -R ...来定义它。我有什么选择?

我希望这可行:

@task
def some_task():
    env().multirun('some command')

但是会引发TypeError: '_AttributeDict' object is not callable

1 个答案:

答案 0 :(得分:0)

你会非常想使用任务args并将其输入到tav的env()中: http://docs.fabfile.org/en/1.1.1/usage/fab.html#per-task-arguments

另外,为什么你期望主机的空集能够工作?