在我的织物脚本中,我遇到了以下问题。我有一个名为自动部署的主要任务。在这个任务中,我有一些我只想在本地运行一次的任务。所有远程任务都应该在主机列表的每个主机上运行。
env.roledefs ={
'testing': ['t-server-01', 't-server-02']
'staging': ['s-server-01', 's-server-02']
'live': ['l-server-01', 'l-server-02']
}
def localtask1():
# download artifact
def localtask2():
# cleanup locally
def remotetask():
# deploy artifact to all hosts
def autodeploy():
localtask1() # run this task only once, locally
remotetask() # run this task on all hosts
localtask2() # run this task only once
调用如下。我想将角色作为属性传递。
fab -R test autodeploy