zoukankan      html  css  js  c++  java
  • fabric 安装及使用

    官网地址

    1.安装

     pip install fabric


        依赖 Paramiko 、PyCrypto库

      以下依赖肯能要手动安装 

    #安装 pycrypto 密码库
    pip install pycrypto
    #安装 pycrypto 依赖 pip install ecdsa


      ps:【windows7 x64 ,python2.7 】Windows下pip安装包报错:Microsoft Visual C++ 9.0 is required Unable to find vcvarsall.bat   
       
        可以安装一个Micorsoft Visual C++ Compiler for Python 2.7的包



       
    2.fabric使用

        新建py脚本:fabfile.py

     def hello():
            print("Hello world!")


        执行fab命令

    fab hello


        如果当前模块下没有fabfile.py文件,那么需要指定-f参数  

     fab -f test.py hello

        使用参数

    def hello(name, value):
        print("%s = %s!" % (name, value))
    
    
    fab hello:name
    =age,value=20


        执行本地操作

    from fabric.api import local, lcd
    
    def lsfab():
      with lcd('~/tmp/fab'):
         local('ls')


        远程操作

    def setting_ci():
        local('echo "add and commit settings in local"')
    
    def update_setting_remote():
         print "remote update"
         with cd('~/temp'):   #cd用于进入某个目录
             run('ls -l | wc -l')  #远程操作用run 


        多服务器操作

    #!/usr/bin/env python
    # encoding: utf-8
    
    from fabric.api import *
    env.roledefs = {
                'testserver': ['user1@host1:port1',],
                'productserver': ['user2@host2:port2', ]
                }            
    
    @roles('testserver')
    def task1():
        run('ls -l | wc -l')
    
    @roles('productserver')
    def task2():
        run('ls ~/temp/ | wc -l')
    
    def do():
        execute(task1)
        execute(task2) 


        用不同颜色打印

    from fabric.colors import *
    
    def show():
        print green('success')
        print red('fail')
        print yellow('yellow')   


        fabric 命令行工具

    装饰器作用?
        @task
        @parallel
    
        命令行常用: fab --help
        fab -l             -- 显示可用的task(命令)
        fab -H             -- 指定host,支持多host逗号分开
        fab -R             -- 指定role,支持多个
        fab -P             -- 并发数,默认是串行
        fab -w             -- warn_only,默认是碰到异常直接abort退出
        fab -f             -- 指定入口文件,fab默认入口文件是:fabfile/fabfile.py

     更多参见官网

       
     

  • 相关阅读:
    Apex API 请求
    Apex 的 API 简介
    Salesforce 自定义元数据类型
    Apex 中 DML 进阶知识小结
    深度学习中的Attention机制
    从FM推演各深度CTR预估模型(附代码)
    深入浅出Word2Vector原理解析
    GBDT算法用于分类问题
    特征交叉
    方差膨胀因子VIF
  • 原文地址:https://www.cnblogs.com/rsky/p/5188817.html
Copyright © 2011-2022 走看看