搜索

首页  >  问答  >  正文

fabric - 怎么使用 python 直接运行 fabfiles, 而不是通过 fab?

是的, 我知道使用 fab 能执行 fabfiles , 但我想通过 python 直接运行 fab task, 而不是通过 fab, 请问该怎么做?

大家讲道理大家讲道理2896 天前402

全部回复(3)我来回复

  • 巴扎黑

    巴扎黑2017-04-18 09:34:00

    已找到解决方案, execute(fab_fun) 就可以直接运行

    回复
    0
  • PHPz

    PHPz2017-04-18 09:34:00

    封装到一个新的脚本中即可

    回复
    0
  • ringa_lee

    ringa_lee2017-04-18 09:34:00

    同上,将fab命令封装到脚本中

    test.py脚本内容

    #!/usr/bin/env python
    
    import subprocess
    
    p = subprocess.Popen("/usr/bin/fab uname_a",shell=True)
    p.wait()
    

    fabfile.py内容:

    #!/usr/bin/env python
    
    from fabric.api import *
    from fabric.colors import red
    
    env.abort_exception = True
    
    
    def uname_a():
        run("uname -a")  
    

    原来执行fab uname_a来执行fab命令,现在使用ython test.py即可

    回复
    0
  • 取消回复