图标评分开发测试套件

tbears的Python项目详细描述


图标评分开发套件(T-Bears)教程

本教程旨在介绍如何使用T-Bears。本指南将指导您完成设置开发环境和使用t-bears cli命令的基本步骤。

t-bears是一套用于score的开发工具。T-Bears为分数提供了一个项目模板,帮助您立即开始。您可以在模拟环境中本地编写和测试智能合约,准备好后,从命令行界面将分数部署到图标网络。

部件

components

图标rpc服务器

处理图标JSON-RPCAPI请求并将响应发送回客户端的模块。

图标服务

管理分数的生命周期及其执行的模块。分数的状态转换存储在数据库中。

T-Bears客户端

T-Bears命令行界面。支持以下功能:

  • 管理T-Bears服务
  • 部署分数
  • 发送事务
  • 发送查询请求

有关详细信息,请参见下面的"命令行接口(clis)"一章。

T-Bears块管理器

T-Bears服务的环链仿真器。它没有完全的"共识"和"同行管理"功能。此模块处理事务并模拟块生成。

消息队列

消息队列用于组件间通信。

快速启动

您可以使用Docker在机器上运行T-Bears。

下面的命令将下载T-Bears Docker图像并运行T-Bears Docker容器。

docker run -it -p 9000:9000 iconloop/tbears:mainnet

有关详细信息,请查看以下链接。t-bears docker

从源构建

首先,克隆这个项目。然后转到项目目录,创建一个virtualenv环境,并运行构建脚本。然后,您可以使用.whl文件安装t-bears。

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl

安装

本章将介绍如何在您的系统上安装T形轴承。

要求

图标评分的开发和执行需要以下环境:

  • 操作系统:MacOS或Linux

    • 不支持Windows。
  • 巨蟒

    • 为python 3.6.5+制作virtualenv(也支持3.7)
    • 检查python版本
      $ python3 -V
      
    • IDE:推荐使用PyCharm。

软件

  • 拉比MQ:3.7及以上。首页

<表><广告>名称说明 github< /广告><正文>级别数据库图标分数使用leveldb存储其状态。leveldb githublibsecp256k1icon score使用secp256k1签名并验证数字签名。secp256k1 Github

在MacOS上设置

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears

在Linux上设置

# Install levelDB
$ sudo apt-get install libleveldb1 libleveldb-dev
# Install libSecp256k
$ sudo apt-get install libsecp256k1-dev

# install RabbitMQ and start service
$ sudo apt-get install rabbitmq-server

# Create a working directory
$ mkdir work
$ cd work

# Setup the python virtualenv development environment
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears

如何使用T形轴承

命令行接口(clis)

概述

T-Bears提供超过20个命令。这是可用命令列表。

用法

usage: tbears [-h][-v]command ...

tbears v1.2.1 arguments

optional arguments:
  -h, --help     show this help message and exit
  -v, --verbose  Verbose mode

Available commands:
  If you want to see help message of commands, use "tbears command -h"command
    start        Start tbears service
    stop         Stop tbears service
    deploy       Deploy the SCORE
    clear        Clear all SCOREs deployed on tbears service
    test         Run the unittest in the SCORE
    init         Initialize tbears project
    samples      This command has been deprecated since v1.1.0
    genconf      Generate tbears config files. (tbears_server_config.json,
                 tbears_cli_config.json and keystore_test1)
    console      Get into tbears interactive mode by embedding IPython
    txresult     Get transaction result by transaction hash
    transfer     Transfer ICX coin.
    keystore     Create a keystore file in the specified path
    keyinfo      Show a keystore file information the specified path
    balance      Get balance of given address in loop unit
    totalsupply  Query total supply of ICX in loop unit
    scoreapi     Get score's api using given score address    txbyhash     Get transaction by transaction hash    lastblock    Get last block's info
    blockbyhash  Get block info using given block hash
    blockbyheight
                 Get block info using given block height
    sendtx       Request icx_sendTransaction with the specified json file and
                 keystore file. If keystore file is not given, tbears sends
                 request as it is in the json file.
    call         Request icx_call with the specified json file.

选项

<表><广告>速记,名称默认值说明 < /广告><正文>-h,--帮助显示此帮助消息并退出>-v,--verbose详细模式。打印有关其进度的调试消息。

T-Bears服务器命令

管理T-Bears服务器的命令。有三个命令tbears starttbears stoptbears clear

t耳朵开始

说明

启动t-bears服务。每当t-bears服务启动时,它会从tbears_server_config.json文件加载配置。如果要使用其他配置文件,可以使用-c选项指定文件位置。

用法

usage: tbears start [-h][-a HOSTADDRESS][-p PORT][-c CONFIG]

Start tbears service

optional arguments:
  -h, --help            show this help message and exit
  -a HOSTADDRESS, --address HOSTADDRESS
                        Address to host on (default: 127.0.0.1)
  -p PORT, --port PORT  Port to listen on (default: 9000)
  -c CONFIG, --config CONFIG
                        tbears configuration file path (default: ./tbears_server_config.json)

选项

<表><广告>速记,名称默认值说明 < /广告><正文>-h,--帮助显示此帮助消息并退出 -a,--地址127.0.0.1T-Bears服务将承载的IP地址。-p,--端口9000T-Bears服务将监听的端口号。-c,--config/tbears_server_config.jsonT-Bears配置文件路径

t耳朵停止

说明

停止所有跑步记录和T-Bears服务。

用法

usage: tbears stop [-h]

Stop all running SCOREs and tbears service

optional arguments:
  -h, --help  show this help message and exit

选项

<表><广告>速记,名称默认值说明 < /广告><正文>-h,--帮助显示此帮助消息并退出

t清除耳朵

说明

清除部署在本地T-Bears服务上的所有分数。

用法

usage: tbears clear [-h]

Clear all SCOREs deployed on local tbears service

optional arguments:
  -h, --help  show this help message and exit

选项

<表><广告>速记,名称默认值说明 < /广告><正文>-h,--帮助显示此帮助消息并退出

T-Bears实用程序命令

生成配置文件和密钥库文件的命令。

t耳朵钥匙库

说明

在给定路径中创建密钥库文件。使用secp256k1库生成私钥和公钥对。

用法

docker run -it -p 9000:9000 iconloop/tbears:mainnet
0

选项

<表><广告>速记,名称默认值说明 < /广告><正文>路径要生成的密钥库文件路径 -h,--帮助显示此帮助消息并退出 -p,--密码密钥库文件的密码

示例

docker run -it -p 9000:9000 iconloop/tbears:mainnet
1

t耳朵按键信息

说明

在指定路径中显示密钥库信息(地址、私钥、公钥)。

用法

docker run -it -p 9000:9000 iconloop/tbears:mainnet
2

选项

<表><广告>速记,名称默认值说明 < /广告><正文>路径要显示的密钥库文件路径-h,--帮助显示此帮助消息并退出 -p,--密码密钥库文件的passwoRD<TD/>--私钥 是否显示私有密钥的选项

示例

docker run -it -p 9000:9000 iconloop/tbears:mainnet
3

tbears genconf

说明

生成t-bears配置文件。("tbears_cli_config.json"、"tbears_server_config.json"、"keystore_test1")

docker run -it -p 9000:9000 iconloop/tbears:mainnet
4

选项

<表><广告>速记,名称默认值说明 < /广告><正文>-h,--帮助显示此帮助消息并退出

示例

docker run -it -p 9000:9000 iconloop/tbears:mainnet
5

T熊得分指令

这些命令与分数开发和执行相关。tbears init生成分数项目。tbears deploytbears sendtxtbears call命令用于部署分数、发送事务和调用函数。

t耳朵初始化

说明

初始化分数开发环境。在<;project>;目录中生成<;project>;.py、package.json和测试代码。score类的名称为<;score class>;。也会生成默认配置文件,即启动t-bears时使用的"tbears_server_config.json"和部署score时使用的"tbears_cli_config.json"。

用法

docker run -it -p 9000:9000 iconloop/tbears:mainnet
6

选项

<表><广告>速记,名称默认值说明 < /广告><正文>项目项目名称记分类评分类名-h,--帮助显示此帮助消息并退出

示例

docker run -it -p 9000:9000 iconloop/tbears:mainnet
7

文件说明

<表><广告>项目说明< /广告><正文>tbears_server_config.json将在工作目录上创建T-Bears默认配置文件。tbears_cliu config.json将在工作目录中创建cli命令的配置文件。密钥库测试1 将在工作目录中创建测试帐户的密钥库文件。<;项目>;评分项目名称。用相同的名称创建项目目录。.py文件,使项目目录被识别为python包。<;项目>;/package.json包含加载分数时所需的信息。
应指定"主模块"和"主类"。<;项目>;/<;项目>;.py记分主文件,其中定义了ScoreClass。<;项目>;/测试分数测试代码的目录。<;项目>;/测试/初始化py \uu init.py文件,使测试目录被识别为python包。<;项目>;/测试/测试项目>;.py成绩测试主文件。

t耳朵展开

说明

部署分数。您可以将其部署在本地T-Bears服务或图标网络上。

"tbears_cli_config.json"文件包含部署配置属性。(参见下面的"配置文件"章)。如果要使用其他配置文件,可以使用'-c'选项指定文件位置。

用法

docker run -it -p 9000:9000 iconloop/tbears:mainnet
8

选项

<表><广告>速记,名称默认值说明 < /广告><正文>项目包含分数包的项目目录或zip文件。如果要使用zip文件进行部署,请压缩项目目录-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -t{tbears,zip},--类型{tbears,zip}自版本1.0.5以来,此选项已被弃用。deploy命令仅支持zip类型-m{install,update},
--模式{install,update}安装 部署模式("安装"或"更新")。-f,--从从地址开始。即分数所有者地址。如果设置了keystore,则忽略此选项-o,--to地址。即分数地址
更新分数时需要此参数。-k,--密钥存储分数所有者的密钥库文件路径-n,--nid节点的网络ID。
每个网络都有唯一的id。如果网络id不匹配,节点将拒绝评分。当网络对公众开放时,将公布网络ID。
0x3保留给T-Bears服务。但是,T-Bears服务不验证网络ID。-p,--密码密钥库文件的密码-s,--步进限制估计步骤交易的步进限制-c,--config/tbears_cliu config.json配置文件路径

示例

docker run -it -p 9000:9000 iconloop/tbears:mainnet
9

当配置文件中没有指定某些必需字段时,T-Bears可以代表发送方提供这些字段。 t-bears将使用以下规则生成有效的json请求。

<表><广告>字段名说明 < /广告><正文>步长限制将为事务设置估计的步骤使用量(使用了调试估计步骤api)(https://github.com/icon project/icon rpc server/blob/master/docs/icon-json-rpc-v3.md;调试估计步骤" rel="nofollow">时间戳将设置当前时间

t耳朵测试

说明

在项目中运行unittest。

用法

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
0

选项

<表><广告>速记,名称默认值说明 < /广告><正文>项目包含分数包和测试代码的项目目录。-h,--帮助显示此帮助消息并退出

示例

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
1

t耳朵发送x

说明

使用指定的JSON文件请求ICX发送事务。

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
2

strong>选项

<表><广告>速记,名称默认值说明 < /广告><正文>json文件包含ICX U事务请求对象的JSON文件的路径。-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -k,--密钥存储密钥库文件路径。用于生成事务签名。-p,--密码密钥库文件的密码-s,--步进限制估计步骤交易的步进限制-c,--config/tbears_cliu config.json配置文件路径。此文件定义属性"keystore"、"uri"和"from"的默认值。

示例

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
3

t-bears可以在json_文件中未指定某些必需字段时代表发送方提供这些字段。 在上面的示例中,未指定stepLimittimestamp字段,但T-Bears可以使用以下规则发出有效的JSON请求。

<表><广告>字段名说明 < /广告><正文>步长限制将为事务设置估计的步骤使用量(使用了调试估计步骤api)(https://github.com/icon project/icon rpc server/blob/master/docs/icon-json-rpc-v3.md;调试估计步骤" rel="nofollow">时间戳将设置当前时间

t接听电话

说明

使用指定的json文件请求icx调用。

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
4

选项

<表><广告>速记,名称默认值说明 < /广告><正文>json文件包含ICX调用请求对象的JSON文件的路径-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -c,--config/tbears_cliu config.json配置文件路径。此文件定义属性"keystore"、"uri"和"from"的默认值。

示例

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
5

tbears scoreapi

说明

获取给定分数提供的API列表。有关详细信息,请参阅icon json-rpc api v3icx\u getscoreapi

用法

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
6

选项

<表><广告>速记,名称默认值说明 < /广告><正文>地址查询API的分数地址-h,--帮助显示此帮助消息并退出 T.AIDGn="left">-u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri。-c,--config/tbears_cliu config.json配置文件路径。此文件定义"uri"的默认值。

示例

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
7

T-执行其他命令

与icx coin、transaction和block相关的命令。

t耳朵传输

说明

转让指定数量的ICX硬币。

用法

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
8

选项

<表><广告>速记,名称默认值说明 < /广告><正文>到收件人地址。值循环中要转移到"收件人"地址的ICX硬币数量。(1个ICX=1E18回路)-h,--帮助显示此帮助消息并退出 -f,--从从地址开始。如果设置了keystore,则忽略此选项-k,--密钥存储密钥库文件路径。用于生成"发件人"地址和交易签名。-u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -n,--nid0x3网络标识-p,--密码密钥库文件的密码-s,--步进限制估计步骤交易的步进限制-c,--config/tbears_cliu config.json配置文件路径。此文件定义属性"keystore"、"uri"和"from"的默认值。

示例

$ virtualenv -p python3 venv  # Create a virtual environment.
$ source venv/bin/activate    # Enter the virtual environment.(venv)$ ./build.sh            # run build script(venv)$ ls dist/              # check result wheel file
tbears-x.y.z-py3-none-any.whl
9

t耳朵平衡

说明

获取给定地址的余额。

用法

$ python3 -V
0

选项

<表><广告>速记,名称默认值说明 < /广告><正文>地址查询ICX余额的地址-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -c,--config/tbears_cliu config.json配置文件路径。此文件定义"uri"的默认值。

示例

$ python3 -V
1

t总供给量

说明

查询ICX的总供应量。

用法

$ python3 -V
2

选项

<表><广告>速记,名称默认值说明 < /广告><正文>-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -c,--con图/tbears_cliu config.json配置文件路径。此文件定义"uri"的默认值。

示例

$ python3 -V
3

t清除txresult

说明

按事务哈希获取事务结果。

用法

$ python3 -V
4

选项

<表><广告>速记,名称默认值说明 < /广告><正文>散列 要查询的事务的哈希值-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -c,--config/tbears_cliu config.json配置文件路径。此文件定义"uri"的默认值。

示例

$ python3 -V
5

清除txbyhash

说明

按事务哈希获取事务

用法

$ python3 -V
6

选项

<表><广告>速记,名称默认值说明 < /广告><正文>散列 要查询的事务的哈希值-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -c,--config/tbears_cliu config.json配置文件路径。此文件定义"uri"的默认值。

示例

$ python3 -V
7

t耳朵最后一块

说明

查询最后一个块信息。在t-bears服务上运行时,"merkle_tree_root_hash"和"signature"将为空。

用法

$ python3 -V
8

选项

<表><广告>速记,名称默认值说明 < /广告><正文>-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -c,--config/tbears_cliu config.json配置文件路径。此文件定义"uri"的默认值。

示例

$ python3 -V
9

t耳朵按高度阻塞

说明

使用给定的块高度获取块信息。

用法

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
0

选项

<表><广告>速记,名称默认值说明 < /广告><正文>高度要查询的块的高度-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -c,--config/tbears_cliu配置JSON 配置文件路径。此文件定义"uri"的默认值。

示例

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
1

tbears blockbyhash

说明

使用给定的块哈希获取块信息。

选项

<表><广告>速记,名称默认值说明 < /广告><正文>散列 要查询的块的哈希值-h,--帮助显示此帮助消息并退出 -u,--节点urihttp://127.0.0.1:9000/api/v3 rel="nofollow">http://127.0.0.1:9000/api/v3节点的uri -c,--config/tbears_cliu config.json配置文件路径。此文件定义"uri"的默认值。

用法

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
2

示例

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
3

t耳朵控制台

说明

使用ipython进入t-bears交互模式。(ipython.org

用法

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
4

示例

在交互模式下,您可以通过预定义的ipython的magic命令以短格式(不带tbears)执行命令。 tab将完成t-bears的命令或变量名。使用制表符< < /P>

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
5

在ipython中,您可以使用"\u"表达式访问以前的输出。

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
6

您可以使用第n个表达式访问第n个输出。 out对象是将输入数字映射到其输出的字典。

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
7

通过在变量名前面加上"$",可以将变量值作为参数传递。

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
8

当传递列表或字典的成员时,应使用"{}"表达式。

# install develop tools
$ brew install leveldb
$ brew install autoconf automake libtool pkg-config

# install RabbitMQ and start service
$ brew install rabbitmq
$ brew services start rabbitmq

# Create a working directory
$ mkdir work
$ cd work

# setup the python virtualenv development environment
$ pip3 install virtualenv
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
9

在交互模式下,可以使用deployResults命令列出T-Bears交互模式运行时已部署的分数。

# Install levelDB
$ sudo apt-get install libleveldb1 libleveldb-dev
# Install libSecp256k
$ sudo apt-get install libsecp256k1-dev

# install RabbitMQ and start service
$ sudo apt-get install rabbitmq-server

# Create a working directory
$ mkdir work
$ cd work

# Setup the python virtualenv development environment
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
0

t-bears将t-bears命令执行结果分配给'u r'变量。

# Install levelDB
$ sudo apt-get install libleveldb1 libleveldb-dev
# Install libSecp256k
$ sudo apt-get install libsecp256k1-dev

# install RabbitMQ and start service
$ sudo apt-get install rabbitmq-server

# Create a working directory
$ mkdir work
$ cd work

# Setup the python virtualenv development environment
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
1

配置文件

tbears_server_config.json

当启动T-Bears(t bears start)时,tbears_server_config.json用于配置参数和初始设置。

# Install levelDB
$ sudo apt-get install libleveldb1 libleveldb-dev
# Install libSecp256k
$ sudo apt-get install libsecp256k1-dev

# install RabbitMQ and start service
$ sudo apt-get install rabbitmq-server

# Create a working directory
$ mkdir work
$ cd work

# Setup the python virtualenv development environment
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
2 <表><广告>字段数据类型 说明 < /广告><正文>主机地址字符串T-Bears服务将监听的IP地址。端口intT-Bears服务将监听的端口号。scorerootpath字符串安装分数的根目录。状态根路径字符串创建状态数据库文件的根目录。记录 指令T熊记录设置日志记录器 字符串主记录器正在进行中 日志级别字符串日志级别。
"调试"、"信息"、"警告"、"错误"日志文件路径字符串日志文件路径。log.colorlog布尔值日志显示选项(彩色或黑色)日志输出类型字符串"控制台":记录到CO的输出解决方案t-bears正在运行。
"文件":将输出记录到文件路径。
"控制台文件":将输出记录到控制台和文件。日志。旋转指令日志旋转设置log.rotate.type字符串"peroid":按周期旋转。
"bytes":按最大字节旋转。
"period bytes":日志同时旋转到周期和字节。对数旋转周期字符串使用logging.timedrotatingfilehandler"when"
例如每天、每周、每小时或每分钟对数旋转间隔字符串使用logging.timedrotatingfilehandler"interval"
ex)(时段:每小时,间隔:24)=(时段:每天,间隔:1)日志.旋转.最大字节数整数使用logging.rotatingfilehandler"maxbytes"
ex)10MB==10*1024*1024记录、旋转、备份计数整数限制日志文件计数服务didctT-Bears服务设置 服务费布尔值真假。启用时每笔交易收取费用服务。审核 布尔值真假。启用时审核部署事务服务.DeployerHitelist布尔值真假。启用时限制分数部署权限创世记指令T熊节点的起源信息。genesis.nid字符串网络标识。genesis.accounts列表 持有初始硬币的帐户列表。
(索引0)genesis:持有初始硬币的帐户。
(索引1)fee廑u treasury:收取交易费的帐户。
(索引2~):可以添加的测试帐户。频道字符串频道名称与iconrpcserver和iconservice交互amqpkey字符串amqp密钥名与iconrpcserver和iconservice交互amqptarget字符串amqp目标名称与iconrpcserver和iconservice交互块确认值整数每隔N秒确认一次阻止块确认布尔值真假。启用时确认空块

tbears_cliu config.json

对于除startstopclearinitkeystore之外的每个T-Bears CLI命令,此文件用于配置默认参数和初始设置。

在此配置文件中,可以为某些cli命令定义默认选项值。例如,score的on_install()on_update()方法在部署时调用。您可以设置如下所示的展开模式和on_install()on_update()的参数(scoresparams)。

# Install levelDB
$ sudo apt-get install libleveldb1 libleveldb-dev
# Install libSecp256k
$ sudo apt-get install libsecp256k1-dev

# install RabbitMQ and start service
$ sudo apt-get install rabbitmq-server

# Create a working directory
$ mkdir work
$ cd work

# Setup the python virtualenv development environment
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
3 <表><广告>字段数据类型 说明 < /广告><正文> URI 字符串发送请求的uri。 nID字符串网络ID.0x3为T熊预留。密钥库字符串密钥库文件路径。从字符串从地址开始。如果设置了"keystore",则忽略此选项。 >字符串到地址。步长限制字符串(可选)步长限制值。展开指令部署命令选项。展开模式字符串部署模式。
安装:新分数部署。
更新:更新先前部署的分数。deploy.scoresparams指令要在"安装"或"更新"上传递给的参数 展开。从字符串分数部署器的地址
可选。此值将重写"from"值。如果没有给出,将使用"from"值。部署到字符串更新分数时使用(正在更新分数的地址)。
在"安装"模式下,地址应为"cx0000~"。
可选。此值将重写"to"值。如果没有给出,将使用"to"值。txresult指令txresult命令的选项。
您可以在dict中定义命令选项。传输指令传输命令选项。
您可以在dict中定义命令选项。

可以在配置文件中定义以下cli命令和选项。

<表><广告>命令 选项< /广告><正文>展开uri、nid、keystore、from、to、mode、scoresparams、stepLimit 传输uri、nid、keystore、from、stepLimit sendtxuri、nid、keystore、from、stepLimit txresult
平衡
总供给
scoreAPI
txbyhash
最后一个块
块哈希
块高度
调用
uri

密钥库测试1

测试帐户的密钥库文件。此密钥库文件的密码是test1_account。 您可以在tbears_server_config.json中找到测试帐户"test1",该测试帐户有足够的余额在本地环境中测试。

不要将任何ICX或令牌转移到"test1"帐户。

# Install levelDB
$ sudo apt-get install libleveldb1 libleveldb-dev
# Install libSecp256k
$ sudo apt-get install libsecp256k1-dev

# install RabbitMQ and start service
$ sudo apt-get install rabbitmq-server

# Create a working directory
$ mkdir work
$ cd work

# Setup the python virtualenv development environment
$ virtualenv -p python3 .
$ source bin/activate

# Install the ICON SCORE dev tools(work) $ pip install tbears
4

参考文献

许可证

此项目遵循Apache2.0许可证。有关详细信息,请参阅许可证

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在安卓 studio中使用调用jaxws web服务的jar文件   java双时间模拟时钟不打印两个不同的时间   java Jackson反序列化处理不带字段的生成值   多线程在java同步中读锁的目的是什么   为什么java中有这么多获取日期时间的方法?   java从listview中的TextView获取数据   java是否可以定义如何对枚举进行(反)序列化以在枚举内持久化?   Java:异常处理我的catch()有问题   VMWare java SDK:可用的PerfMetricID何时不报告数据?   exec在Java中执行命令而不重定向输出   java使用SpringXML配置实现观察者模式?   java在竹笔平板电脑中使用JPen