2013-08-21 166 views

回答

0

创建新任务和织物的角色应该做的伎俩:

from fabric.api import run, task 
from fabric.decorators import roles 
from fabric.state import env 

env.roledefs = {"firewall": ["mybox"]} 

@roles("firewall") 
@task 
def do_stuff_on_firewall_server(): 
    run("some-cmd") 

您可以运行此命令很容易:

fab do_stuff_on_firewall_server

0

如果我理解正确的话,你不能直接SSH到目标服务器,但您必须先通过SSH进入防火墙,然后才能从防火墙SSH进入目标服务器。

在这种情况下,你可以使用面料的--gateway命令行选项:

$ fab --gateway=firewall.company.com --hosts=server.company.com sometask 

https://fabric.readthedocs.org/en/1.7/usage/fab.html#cmdoption-g

+0

如何将网关看在fabfile?我宁愿不必使用 - 网关 –

相关问题