如下所示(port是可以这么写的,目录不行),进入不同主机时自动进入到不同目录,执行xxx。对不同的server传入不同的路径,执行xxx。 谢谢!
env.hosts = [test@server1:path_to_dir_1, test@se rver2:path_to_dir_2 ,......]
def xxx():
pass
如下所示(port是可以这么写的,目录不行),进入不同主机时自动进入到不同目录,执行xxx。对不同的server传入不同的路径,执行xxx。 谢谢!
env.hosts = [test@server1:path_to_dir_1, test@se rver2:path_to_dir_2 ,......]
def xxx():
pass
在我之前的项目是以全局配置项的形式来实现的,为每个host定义自己的work_dir等变量
host_configs = {
"ip1": {
"work_dir": path1
},
"ip2": {
"work_dir": path2
},
}
然后在fabric的task方法中通过env['host']作为key,去host_configs中去读取相应的work_dir信息,并执行相应操作
@task
def some_task():
with cd(host_configs[env['host']]['work_dir']):
do_some_stuff
2 回答4.9k 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
4 回答825 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
1 回答1.6k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
fabric是可以对主机进行分组的,就像下边这个
或者这个
看下官方文档,就都清楚了。