我记得fabric API可以直接在py脚本中调用,但忘了从哪里开始有人给出线索吗?
问问题
9851 次
2 回答
26
是的,您可以调用它,例如:
from fabric.api import run
from fabric.tasks import execute
def do_something():
run("echo $RANDOM")
if __name__ == "__main__":
execute(do_something, hosts=["username@host"])
于 2012-08-08T09:56:40.350 回答
6
文档中有一个完整的部分介绍如何使用 fabric作为库。我会提到这一点,以及如何最好地以这种方式处理织物的使用。
具体来说,您需要使用执行函数 as来解决在X
主机列表上执行任务的问题。完成后,您应该断开与所有已连接主机的连接。通常,该工具会为您执行此操作,但在将结构用作库时,您必须手动执行此操作。Fabric 0.9.4 及更高版本具有功能。理想情况下,这应该在语句的子句中。Y
execute( X, hosts=Y )
fab
disconnect_all()
finally
try...finally
于 2012-08-08T18:39:20.170 回答