/testnets

🚀 TruStory Testnets

Primary LanguageShell

logo

Overview

TruStory testnets will test the functionality of the TruStory blockchain prior to the launch of mainnet. Validators who plan on joining the mainnet launch are strongly encouraged to participate in testnets.

To join a testnet, you must submit a genesis transaction that creates your validator on the TruStory blockchain.

How to run a validator on testnet

The latest testnet is testnet-1.

Linux Setup

Install TruChain

Download Linux binaries:

$ wget https://github.com/TruStory/truchain/releases/download/v0.4.2-beta/truchain-v0.4.2-beta.tar.gz
$ mkdir -p ~/bin && tar xzvf truchain-v0.4.2-beta.tar.gz -C ~/bin

Alternatively, build from source:

$ git clone https://github.com/trustory/truchain
$ cd truchain && git checkout v0.4.2-beta
$ make install

Make sure you have the right version:

$ truchaind version --long
name: truchain
server_name: truchaind
client_name: truchaincli
version: v0.4.2-beta
commit: 42cb4328b2b25dcb94db53fa53de5097cc6a07d2
go: go version go1.13.1 linux/amd64

Please build from source for non-Linux systems for now.

For full instructions, see https://github.com/TruStory/truchain.

Create a wallet

# <name> is the name of your validator's account, i.e: validator
$ truchaincli keys add <name>

Make sure you save the mnemonic in a safe place!

Create genesis transaction

# <moniker> is the name of your validator node
$ truchaind init --chain-id=testnet-1 <moniker>

# <name> is the name of validator's account (from above)
$ truchaind add-genesis-account $(truchaincli keys show <name> -a) 10000000000utru

# <node_ip_address> is the public IP address of your node
$ truchaind gentx --name <name> --amount 10000000000utru --ip <node_ip_address>

This generates a JSON file that contains the chain transaction that creates your validator with an allocation of 10,000 TRU. For example, check out the genesis transaction for blockshane.

The JSON in this example has been formatted to be human readable. It doesn't have to be formatted, but feel free to use a tool like jq if you'd like to format yours as well.

Submit genesis transaction

Submit a pull request with your gentx file added to the testnet-1/gentx directory.

Click "Fork" on top-right corner of page. Navigate to your fork, then:

# create a local clone
$ git clone https://github.com/<your-username>/testnets

# configure remote repo for your fork
$ cd testnets
$ git remote add upstream https://github.com/TruStory/testnets

# create a local branch
$ git checkout --branch <your-branch>

# copy over gentx file
$ cp ~/.truchaind/config/gentx/*.json testnet-1/gentx

# add changes to git
$ git add . && git commit -m "Added gentx for <your-validator-moniker>"

# push your branch
$ git push origin

Submit a pull request to get your genesis transaction added.

Next Steps

Await further instructions on joining the testnet when it launches.