fabric的operations(操作)类

简介:
1.调用方法:
from fabric.api import require,pormpt,put,get,run,sudo,local,reboot,open_shell

from fabric.operations import require,pormpt,put,get,run,sudo,local,reboot,open_shell

2.方法的使用:
(1)require    #检查你在env.的环境变量中是否有值(即不为None),如果有,则继续执行,否则将退出

(2)prompt    #提示:类似一个raw_input,提供一个交互接口,用来保存一个字符串
    例:
    def prompt_test():
      path=prompt('输入一个路径:')
      run('ls %s' % path)
    输出:
    [root@salt-monion-1 gyk_fab]# fab -f operations_test.py prompt_test
    [192.168.1.219] Executing task 'prompt_test'
    输入一个路径: /home      
    [192.168.1.219] run: ls /home    
    [192.168.1.200] Executing task 'prompt_test'
    输入一个路径: /home
    [192.168.1.200] run: ls /home
    [192.168.1.200] out: eventlisten.py
    [192.168.1.200] out: 


    Done.
    Disconnecting from 192.168.1.200... done.
    Disconnecting from 192.168.1.219... done.
    
(3)put    #上传本地文件到远程主机    
    例:
    def put_test():
      put('/tmp/dir/1','/tmp/dir_test')
    输出:
    [root@salt-monion-1 gyk_fab]# fab -f operations_test.py put_test
    [192.168.1.219] Executing task 'put_test'
    [192.168.1.219] put: /tmp/dir/1 -> /tmp/dir_test/1
    [192.168.1.200] Executing task 'put_test'
    [192.168.1.200] put: /tmp/dir/1 -> /tmp/dir_test/1

    Done.
    Disconnecting from 192.168.1.200... done.
    Disconnecting from 192.168.1.219... done.
    
(4)get #从远程主机下载文件到本地,但是这只能对应1台主机,不然传过来的文件名相同,会报错的(因此不能当做批量下载来使用)。
  
(5)run     #执行系统命令,当warn_only=True是,你可以用一个变量来接收它(变量=run()),然后用 变量.succeeded查看命令是否执行成功了。

(6)sudo和local 用sudo cmd的方式执行命令 && 只在本地执行命令(即不会在远程主机上执行)

(7)reboot 重启主机,但它有一个好处,就是当主机重启时,fabric会进入等待,当你重启以后,它会继续执行后面的内容

(8)open_shell自动连接到另一个终端上,重新打开一个shell。



本文转自 msj0905 51CTO博客,原文链接:http://blog.51cto.com/sky66/1684904

相关文章
|
6月前
|
开发框架 .NET 区块链
Hyperledger fabric部署链码(五)初始化与链码升级
fabric部署chaincode-go(智能合约)系列之五
|
6月前
|
JavaScript 测试技术 Go
Hyperledger fabric部署链码(一)打包链码
fabric部署chaincode-go(智能合约)系列之一
|
6月前
|
测试技术 Go 区块链
Hyperledger fabric 测试环境部署
Hyperledger fabric 测试环境部署及相关问题解答
109 3
|
6月前
|
存储 JSON 安全
Hyperledger fabric智能合约编写(一)
本篇文章主要对链码编写的主要思路和部分API进行梳理。
|
6月前
|
Go API 区块链
Hyperledger Fabric相关概念介绍
在学习Hyperledger Fabric的过程中,初步对相关概念的了解。
Hyperledger Fabric相关概念介绍
|
6月前
|
JSON 区块链 数据格式
Hyperledger fabric部署链码(四)提交链码定义到channel
fabric部署chaincode-go(智能合约)系列之四
|
6月前
|
测试技术 API 区块链
Hyperledger fabric部署链码(三)批准链码定义
fabric部署chaincode-go(智能合约)系列之三
|
6月前
|
区块链
Hyperledger fabric部署链码(二)安装链码到fabric
fabric部署chaincode-go(智能合约)系列之二