Passage3D Mainnet
This code is inspired from Regen Network's mainnet script
Build genesis (For admin use)
Address converter
Execute:
go run . addr-converter input.csv output_address.csv pasg
Building the genesis.json
aka add all vesting, genesis accounts and balances
Execute:
go run . build-genesis passage-1
For pre-launch, we can ignore errors:
go run . build-genesis passage-prelaunch-1 --errors-as-warnings
Add claim records/airdrop accounts
Execute:
go run . add-claim-records genesis.json claim-records.csv
Note: This will create a new genesis file from the input (claim-passage-genesis.json
). Move to the network if you think it's final.
mv claim-passage-genesis.json <chain-id>/genesis.json
Join as a validator
Requirements
Check out these instructions for installing passage@v1.0.0
If you haven't initialized your node, init passage chain by running
passage init --chain-id passage-1 <my_node_moniker>
Start your validator node
-
Step-1: Verify installation
passage version --long
it should display the following details:
name: passage server_name: passage version: v1.0.0 commit: 6ae7171e42f24203dc11369e7aef6d590bd09a47 build_tags: netgo,ledger go: go version go1.17 linux/amd64
-
Step-2: Download the mainnet genesis
curl -s https://raw.githubusercontent.com/envadiv/mainnet/main/passage-1/genesis.json > ~/.passage/config/genesis.json
-
Step-3: Verify genesis
jq -S -c -M '' ~/.passage/config/genesis.json | shasum -a 256
It should be equal to the contents in checksum
-
Step-4: Update seeds and persistent peers
Open
~/.passage/config/config.toml
and updatepersistent_peers
andseeds
(comma separated list)Persistent peers
TBD
Seeds
TBD
-
Step-5: Create systemd
DAEMON_PATH=$(which passage) echo "[Unit] Description=passage daemon After=network-online.target [Service] User=${USER} ExecStart=${DAEMON_PATH} start Restart=always RestartSec=3 LimitNOFILE=4096 [Install] WantedBy=multi-user.target " >passage.service
-
Step-6: Update system daemon and start passage node
sudo mv passage.service /lib/systemd/system/passage.service sudo -S systemctl daemon-reload sudo -S systemctl enable passage sudo -S systemctl start passage
That's all! Your node should be up and running now. You can query your node by executing the following command after the genesis time
passage status
Create validator (Optional)
Note: This section is applicable for validators who wants to join post genesis time.
IMPORTANT: Make sure your validator node is fully synced before running this command. Otherwise your validator will start missing blocks.
passage tx staking create-validator \
--amount=9000000upasg \
--pubkey=$(passage tendermint show-validator) \
--moniker="<your_moniker>" \
--chain-id=passage-1 \
--commission-rate="0.05" \
--commission-max-rate="0.10" \
--commission-max-change-rate="0.01" \
--min-self-delegation="1" \
--gas="auto" \
--from=<your_wallet_name>