Smart Contracts for Trustlines-Network
Project description
This documentation explains how to deploy Trustlines smart contracts, for creating your own currency network and trustlines exchange. The current documentation is written for an Ubuntu Linux system.
Prerequisites
Python 3.6 or up and dev dependencies
git
Run apt install build-essential python3-dev python3-virtualenv virtualenv pkg-config libssl-dev automake autoconf libtool git
One of the dependencies used is the secp256k1 library. If you’re using python 3.5 on linux you can skip the following step, since pypi contains binary packages for secp256k1. If not, you’ll have to run the following to install the secp256k1 C library:
git clone https://github.com/bitcoin-core/secp256k1.git cd secp256k1 ./autogen.sh ./configure --enable-module-recovery make sudo make install sudo ldconfig
Deployment tools
This section runs through the tooling necessary for deploying the contracts.
Ethereum client
To deploy the Trustlines smart contracts, you need an ethereum client, e.g. geth or parity, which is synced to the chain you want to use. The client needs to expose the JSON RPC endpoint. Additionally you need an unlocked account with enough ether to pay for the contract deployment.
Deployment setup
Download and install the solidity compiler solc into bin for compiling the contracts curl -L -o $HOME/bin/solc https://github.com/ethereum/solidity/releases/download/v0.4.21/solc-static-linux && chmod +x $HOME/bin/solc
Clone this repository with git clone https://github.com/trustlines-network/contracts.git cd contracts
Install the deploy tool with pip install . -c constraints.txt
tl-deploy
The tool tl-deploy allows you to deploy the relevant contracts.
Use tl-deploy --help to find out about the relevant commands or read further in the deploy documentation
Development
To start developing install the development dependencies into a venv with pip install -c constraints.txt -r requirements.txt
Compiling
The contracts can be compiled with populus compile
Testing
For testing we use pytest with an ethereum tester plugin. The tests can be run with python -m pytest tests
Change log
See CHANGELOG.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file trustlines-contracts-0.1.3.tar.gz
.
File metadata
- Download URL: trustlines-contracts-0.1.3.tar.gz
- Upload date:
- Size: 50.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b6efc717a5f90a308f26e4dd341d317f12d2cfc28826e6c43ef9aa33cc855bf |
|
MD5 | 272acd48f99156723201c60de8c94a8a |
|
BLAKE2b-256 | df632d52296c8ff0b79d643e7d88bc61bc01fa00c5d7b3dd87c7f98affaa2c19 |