我试图在多个服务器上同时运行一些脚本。 下面是示例代码。在
server1 = ""
server2 = ""
env.parallel = True
@task
@hosts(server1)
@parallel
def run_shell1():
run("sh shell1.sh")
@task
@hosts(server2)
@parallel
def run_shell2():
run("sh shell2.sh")
我运行了fab命令如下:
^{pr2}$但是当我运行代码时,我得到了这样的错误:
pickle.PicklingError: Can't pickle <function inner at 0x0000000003280438>: it's
not found as fabric.tasks.inner
还有一些关于多处理的错误消息/进程.py和织物/工作_队列.py等等
我查了一下fabric的版本,是1.11.1。在
面料中存在与此问题相关的已知缺陷:
https://github.com/fabric/fabric/issues/489
更具体地说,请参见下面的解释:https://github.com/fabric/fabric/issues/489#issuecomment-4232091
要点是叉子。波本()在进行多处理时,Win32的实现在此处导致问题。在
我想他们会用织物2.x来修复它
相关问题 更多 >
编程相关推荐