Python 结构并行任务未绑定到特定集

Python 结构并行任务未绑定到特定集,python,parallel-processing,fabric,Python,Parallel Processing,Fabric,我正在寻找一种使用multirun定义任务的方法,它将在命令行中定义的一组服务器上运行(通过角色或主机) 到目前为止,我看到的所有示例都可以尝试执行以下操作: env('app-nodes').multirun('some command') 但我不想硬编码这个角色。我想用fab-R…来定义它。我的选择是什么 我希望这能奏效: @task def some_task(): env().multirun('some command') 但这会抛出TypeError:“\u Attrib

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

到目前为止,我看到的所有示例都可以尝试执行以下操作:

env('app-nodes').multirun('some command')
但我不想硬编码这个角色。我想用
fab-R…
来定义它。我的选择是什么

我希望这能奏效:

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

但这会抛出
TypeError:“\u AttributeDict”对象是不可调用的

您可能希望使用任务参数,并以这种方式将其馈送到tav的env()中:


还有,为什么您希望主机可以使用空集?

根据:(#上下文化任务)上下文可能只是默认的上下文。。。不幸的是,它不是(它是从@task参数设置的)是的,从他的文档中,它或者是从@task设置为参数,或者是在env.ctx元组中。因此,您可以使用它编辑ctx值,然后使用env()或执行以下操作:def t(use_hosts):env(use_hosts)?我想将它集成到现有的一组结构脚本中,因此最好不要并行。