Skip to main content
Version: v0.25

Validator Guide

Validators join as genesis validators for chain launches on Ignite Chain.


List all published chains

Validators can list and explore published chains to be launched on Ignite.

ignite n chain list

Output

Launch Id   Chain Id    Source                              Phase

3 example-1 https://github.com/ignite/example coordinating
2 spn-10 https://github.com/tendermint/spn launched
1 example-20 https://github.com/tendermint/spn launching
  • Launch ID is the unique identifier of the chain on Ignite. This is the ID used to interact with the chain launch.
  • Chain ID represents the identifer of the chain network once it will be launched. It should be a unique identifier in practice but doesn't need to be unique on Ignite.
  • Source is the repository URL of the project.
  • Phase is the current phase of the chain launch. A chain can have 3 different phases:
    • coordinating: means the chain is open to receive requests from validators
    • launching: means the chain no longer receives requests but it hasn't been launched yet
    • launched: means the chain network has been launched

Request network participation

When the chain is in the coordination phase, validators can request to be a genesis validator for the chain. Ignite CLI supports an automatic workflow that can setup a node for the validator and a workflow for advanced users with a specific setup for their node.

Simple Flow

ignite can handle validator setup automatically. Initialize the node and generate a gentx file with default values:

ignite n chain init 3

Output

✔ Source code fetched
✔ Blockchain set up
✔ Blockchain initialized
✔ Genesis initialized
? Staking amount 95000000stake
? Commission rate 0.10
? Commission max rate 0.20
? Commission max change rate 0.01
⋆ Gentx generated: /Users/lucas/spn/3/config/gentx/gentx.json

Now, create and broadcast a request to join a chain as a validator:

ignite n chain join 3 --amount 100000000stake

The join command accepts a --amount flag with a comma-separated list of tokens. If the flag is provided, the command will broadcast a request to add the validator’s address as an account to the genesis with the specific amount.

Output

? Peer's address 192.168.0.1:26656
✔ Source code fetched
✔ Blockchain set up
✔ Account added to the network by the coordinator!
✔ Validator added to the network by the coordinator!

Advanced Flow

Using a more advanced setup (e.g. custom gentx), validators must provide an additional flag to their command to point to the custom file:

ignite n chain join 3 --amount 100000000stake --gentx ~/chain/config/gentx/gentx.json

Launch the network

Simple Flow

Generate the final genesis and config of the node:

ignite n chain prepare 3

Output

✔ Source code fetched
✔ Blockchain set up
✔ Chain's binary built
✔ Genesis initialized
✔ Genesis built
✔ Chain is prepared for launch

Next, start the node:

exampled start --home ~/spn/3

Advanced Flow

Fetch the final genesis for the chain:

ignite n chain show genesis 3

Output

✔ Source code fetched
✔ Blockchain set up
✔ Blockchain initialized
✔ Genesis initialized
✔ Genesis built
⋆ Genesis generated: ./genesis.json

Next, fetch the persistent peer list:

ignite n chain show peers 3

Output

⋆ Peer list generated: ./peers.txt

The fetched genesis file and peer list can be used for a manual node setup.