Coder Social home page Coder Social logo

testnet's Introduction

Lum Network - Private testnet

You already know the drill, but you'll find all the informations here!

Private testnet program

  • The main communication channel is Discord
  • If you have been invited to join this testnet then you should have access to the internal validators channels
  • The Lum Foundation will grant 1,000,000 LUM to all the validators succesfully passing the testnet phases
    • 6 months cliff; 24 months linear continous vesting; staking capability over vested assets
    • receiving the testnet grant does not mean you will receive the mainnet grant
    • validators must have a production like setup in order to pass the testnet phase completely
  • 20 experienced validators have been invited, we definitely expect to have every single one of you pass this phase easily

Timeline

Phase 1: Gentx submission deadline

November 21st, 1:00PM UTC

You must submit your gentx (see instructions below) by this time to be included in the genesis.

./config-genesis.json contains the genesis configuration (without any account yet). Feel free to comment on that over Discord.

Phase 2: Testnet Genesis Launch

November 22nd, 5:00PM UTC

You must have your validator up and running by this time and be available for further instructions if necessary.

Phase 3: Tests period

From November 22nd, 5:00PM UTC - Until December 6th, 1:00PM UTC

During this phase everyone's invited to test the network.

We will run a variety of tests to ensure the final validator set selected for the mainnet launch is strong and stable.

Do not hesitate to report any kind of issues on Discord as it is one of the goals of this phase.

Phase 4: Results

December 6th, 1:00PM UTC

Announcement of the validators that passed the testnet phase with success. We definitely expect all validators invited to the private testnet to easily pass the test phase since only experienced validators have been invited.

Key informations

Chain ID

lum-network-testnet-1

Genesis file

Available in this repository: ./genesis.json

curl -s  https://raw.githubusercontent.com/lum-network/testnet/master/genesis.json > ~/.lumd/config/genesis.json

sha256sum ~/.lumd/config/genesis.json
[TODO/UPCOMING]

Seed nodes

Available here: ./seeds.txt

[TODO/UPCOMING]

lumd version

$ lumd version --long
name: lum
server_name: lumd
version: 1.0.1
commit: 98c5db3215d751112ca84ebe840de5464a08b1a6

Installation

Prerequisites: Make sure to have Golang >=1.17.

Make sure your Go configuration looks like that one (especially the GO111Module):

export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin

Clone the repository

git clone https://github.com/lum-network/chain.git
cd chain
git checkout v1.0.1
make install

Check that you have the right lumd version installed:

lumd version --long
name: lum
server_name: lumd
version: 1.0.1
commit: 98c5db3215d751112ca84ebe840de5464a08b1a6

Minimum hardware requirements

  • 4 CPU ores
  • 16 GB RAM
  • 200 GB of disk space
  • 100 mbps bandwidth

Setup validator node

Generate genesis transaction (gentx)

  1. Initialize the Lum Network directories and create the local genesis file with the correct chain-id:

    lumd init <moniker-name> --chain-id=lum-network-testnet-1
  2. Create a local key pair:

    lumd keys add <key-name>
  3. Add your account to your local genesis file with the following amount (1Mi LUM + 1 LUM) and the key you just created.

    lumd add-genesis-account $(lumd keys show <key-name> -a) 1000001000000ulum
  4. Create the gentx, use 1000000000000ulum (1Mi LUM):

    lumd gentx <key-name> 1000000000000ulum \
        --chain-id=lum-network-testnet-1 \
        --moniker="<moniker>" \
        --commission-rate="0.01" \
        --[other custom params]

    If all goes well, you will see a message similar to the following:

    Genesis transaction written to "/home/user/.lumd/config/gentx/gentx-******.json"

Submit genesis transaction

  • Fork the testnet repo into your Github account

  • Clone your repo using

    git clone https://github.com/<your-github-username>/testnet
  • Copy the generated gentx json file to <repo_path>/gentxs/

    > cd testnet
    > cp ~/.lumd/config/gentx/gentx-*****.json ./gentxs/gentx-<moniker-name>.json
  • Commit and push to your repo

  • Create a PR onto https://github.com/lum-network/testnet

  • Only PRs from invited validators will be accepted. This is to ensure the network successfully starts on time.

Running in production

Download Genesis file when the time is right.

curl -s  https://raw.githubusercontent.com/lum-network/testnet/master/genesis.json > ~/.lumd/config/genesis.json

sha256sum ~/.lumd/config/genesis.json
[TODO/UPCOMING]

Create a systemd file for your Lum Network service:

sudo nano /etc/systemd/system/lumd.service

Copy and paste the following and update <YOUR_HOME_PATH>:

[Unit]
Description=Lum Network daemon
After=network-online.target

[Service]
User=lum
ExecStart=/<YOUR_HOME_PATH>/go/bin/lumd start --p2p.laddr tcp://0.0.0.0:26656 --home /<YOUR_HOME_PATH>/.lumd
Restart=on-failure
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target

2 This assumes $HOME/go to be your Go workspace, and $HOME/.lumd to be your directory for config and data. Your actual directory locations may vary.

Enable and start the new service:

sudo systemctl enable lumd
sudo systemctl start lumd

Check status:

lumd status

Check logs:

journalctl -u lumd -f

testnet's People

Contributors

lebascou avatar segfaultd avatar jetlag666 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.