Update READMEs
This commit is contained in:
parent
2c1ba390e5
commit
3d87ba0c15
@ -1,62 +0,0 @@
|
|||||||
# Cosmos Multisig App Setup
|
|
||||||
|
|
||||||
This playbook sets up the Cosmos Multisig application for managing multisig wallets on the Laconic chain.
|
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
|
|
||||||
- [ansible](../README.md#ansible-installation)
|
|
||||||
- [laconic-so](https://github.com/cerc-io/stack-orchestrator/?tab=readme-ov-file#install)
|
|
||||||
- Running Laconic validator node
|
|
||||||
- Keplr wallet extension installed in browser
|
|
||||||
|
|
||||||
## Configuration
|
|
||||||
|
|
||||||
* Copy the example variables file:
|
|
||||||
```bash
|
|
||||||
cp cosmos-multisig-vars.example.yml cosmos-multisig-vars.yml
|
|
||||||
```
|
|
||||||
|
|
||||||
* Update `cosmos-multisig-vars.yml` with your node configuration:
|
|
||||||
```yaml
|
|
||||||
next_public_node_addresses:
|
|
||||||
node_rest_endpoint:
|
|
||||||
```
|
|
||||||
|
|
||||||
## Setup Steps
|
|
||||||
|
|
||||||
* Set environment variables:
|
|
||||||
```bash
|
|
||||||
export CWD=$(pwd)
|
|
||||||
export DATA_DIRECTORY=$CWD
|
|
||||||
export MULTISIG_DEPLOYMENT_DIR=cosmos-multisig-deployment
|
|
||||||
export NETWORK_JSON_PATH=~/cerc/laconicd-stack/config/network.json
|
|
||||||
export USE_HOST_NETWORK=host
|
|
||||||
```
|
|
||||||
|
|
||||||
* Setup and start the multisig app:
|
|
||||||
```bash
|
|
||||||
ansible-playbook -v -i localhost, -c local cosmos-multisig-app-start.yml
|
|
||||||
```
|
|
||||||
|
|
||||||
* Access the app at `http://localhost:3000/laconic`
|
|
||||||
|
|
||||||
|
|
||||||
## Check Status
|
|
||||||
|
|
||||||
* Check app logs:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MULTISIG_DEPLOYMENT_DIR logs laconicd -f
|
|
||||||
```
|
|
||||||
|
|
||||||
## Clean up
|
|
||||||
|
|
||||||
- To stop the deployment:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MULTISIG_DEPLOYMENT_DIR stop
|
|
||||||
```
|
|
||||||
|
|
||||||
- To stop and delete all data:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MULTISIG_DEPLOYMENT_DIR stop --delete-volumes
|
|
||||||
sudo rm -rf $DATA_DIRECTORY/$MULTISIG_DEPLOYMENT_DIR
|
|
||||||
```
|
|
@ -1,125 +0,0 @@
|
|||||||
# First Validator Setup
|
|
||||||
|
|
||||||
This playbook sets up the first validator node for the Laconic mainnet chain.
|
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
|
|
||||||
- [ansible](../README.md#ansible-installation)
|
|
||||||
- [laconic-so](https://github.com/cerc-io/stack-orchestrator/?tab=readme-ov-file#install)
|
|
||||||
- [tmkms](https://github.com/iqlusioninc/tmkms?tab=readme-ov-file#installation)
|
|
||||||
- Install with `softsign` feature
|
|
||||||
```bash
|
|
||||||
cargo install tmkms --features=softsign --version=0.14.0
|
|
||||||
```
|
|
||||||
- testnet-state.json (exported testnet state)
|
|
||||||
- distribution.json (JSON containing the `lps_lockup` distribution)
|
|
||||||
|
|
||||||
## Setup Steps
|
|
||||||
|
|
||||||
1. Copy the example variables file:
|
|
||||||
```bash
|
|
||||||
cp first-validator-vars.example.yml first-validator-vars.yml
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Set environment variables:
|
|
||||||
```bash
|
|
||||||
export CWD=$(pwd)
|
|
||||||
export DATA_DIRECTORY=$CWD
|
|
||||||
export MAINNET_DEPLOYMENT_DIR=mainnet-laconicd-deployment
|
|
||||||
export EXPORTED_STATE_PATH=$CWD/testnet-state.json
|
|
||||||
export LPS_DISTRIBUTION_PATH=$CWD/distribution.json
|
|
||||||
export EARLY_SUPPORTS_ACC_ADDR=laconic1gwytamfk3m5n0gsawh5vpwxkwd3vapmvzpp6nz
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Generate genesis file:
|
|
||||||
```bash
|
|
||||||
ansible-playbook -v -i localhost, -c local generate-genesis.yml \
|
|
||||||
-e "exported_state_path=$EXPORTED_STATE_PATH" \
|
|
||||||
-e "lps_distribution_path=$LPS_DISTRIBUTION_PATH" \
|
|
||||||
-e "early_supports_acc_address=$EARLY_SUPPORTS_ACC_ADDR"
|
|
||||||
```
|
|
||||||
|
|
||||||
4. Update `first-validator-vars.yml` with your configuration:
|
|
||||||
```yaml
|
|
||||||
pvt_key: <KEY_OF_ACCOUNT_WITH_BALANCE_IN_TESTNET>
|
|
||||||
genesis_file: "$CWD/output/genesis.json"
|
|
||||||
staking_amount_file: "$CWD/output/staking-amount.json"
|
|
||||||
cerc_moniker: "LaconicMainnet"
|
|
||||||
key_name: "laconic-validator"
|
|
||||||
cerc_chain_id: "laconic-mainnet"
|
|
||||||
min_gas_price: 0.001
|
|
||||||
cerc_loglevel: "info"
|
|
||||||
```
|
|
||||||
|
|
||||||
5. Setup the first validator node:
|
|
||||||
```bash
|
|
||||||
ansible-playbook -v -i localhost, -c local setup-first-validator.yml
|
|
||||||
```
|
|
||||||
|
|
||||||
6. Setup TMKMS:
|
|
||||||
```bash
|
|
||||||
# Initialize TMKMS
|
|
||||||
tmkms init ./tmkms-first-node
|
|
||||||
|
|
||||||
# Create TMKMS config
|
|
||||||
cat > ./tmkms-first-node/tmkms.toml << EOL
|
|
||||||
[[chain]]
|
|
||||||
id = "laconic-mainnet"
|
|
||||||
key_format = { type = "cosmos-json", account_key_prefix = "laconicpub", consensus_key_prefix = "laconicvalconspub" }
|
|
||||||
state_file = "$CWD/tmkms-first-node/state/priv_validator_state.json"
|
|
||||||
|
|
||||||
[[validator]]
|
|
||||||
chain_id = "laconic-mainnet"
|
|
||||||
addr = "tcp://localhost:26659"
|
|
||||||
secret_key = "$CWD/tmkms-first-node/secrets/kms-identity.key"
|
|
||||||
protocol_version = "v0.34"
|
|
||||||
reconnect = true
|
|
||||||
|
|
||||||
[[providers.softsign]]
|
|
||||||
key_type = "consensus"
|
|
||||||
path = "$CWD/tmkms-first-node/secrets/priv_validator_key"
|
|
||||||
chain_ids = ["laconic-mainnet"]
|
|
||||||
EOL
|
|
||||||
|
|
||||||
# Import validator key
|
|
||||||
tmkms softsign import $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR/data/laconicd-data/config/priv_validator_key.json $CWD/tmkms-first-node/secrets/priv_validator_key
|
|
||||||
```
|
|
||||||
|
|
||||||
7. Start TMKMS:
|
|
||||||
```bash
|
|
||||||
tmkms start --config $CWD/tmkms-first-node/tmkms.toml
|
|
||||||
```
|
|
||||||
|
|
||||||
8. Enable TMKMS and start the node:
|
|
||||||
```bash
|
|
||||||
echo "TMKMS_ENABLED=true" >> $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR/config.env
|
|
||||||
rm $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR/data/laconicd-data/config/priv_validator_key.json
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR start
|
|
||||||
```
|
|
||||||
|
|
||||||
## Verification
|
|
||||||
|
|
||||||
1. Check node logs:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR logs laconicd -f
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Verify validator and TMKMS pubkeys match:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR exec laconicd 'laconicd query staking validators -o json | jq .validators'
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Check bonds list:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR exec laconicd 'laconicd query bond list'
|
|
||||||
```
|
|
||||||
|
|
||||||
4. Check token supply:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR exec laconicd 'laconicd query bank total-supply'
|
|
||||||
```
|
|
||||||
|
|
||||||
5. Check LPS lockup account:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR exec laconicd 'laconicd query auth module-account lps_lockup'
|
|
||||||
```
|
|
@ -1,135 +0,0 @@
|
|||||||
# Validator Setup
|
|
||||||
|
|
||||||
This playbook sets up additional validator nodes for the Laconic mainnet chain.
|
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
|
|
||||||
- [ansible](../README.md#ansible-installation)
|
|
||||||
- [laconic-so](https://github.com/cerc-io/stack-orchestrator/?tab=readme-ov-file#install)
|
|
||||||
- [tmkms](https://github.com/iqlusioninc/tmkms?tab=readme-ov-file#installation)
|
|
||||||
- Install with `softsign` feature
|
|
||||||
```bash
|
|
||||||
cargo install tmkms --features=softsign --version=0.14.0
|
|
||||||
```
|
|
||||||
- Running first validator node
|
|
||||||
- Private key of an account with balance
|
|
||||||
|
|
||||||
## Configuration
|
|
||||||
|
|
||||||
1. Copy the example variables file:
|
|
||||||
```bash
|
|
||||||
cp validator-vars.example.yml validator-vars.yml
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Update `validator-vars.yml` with your configuration:
|
|
||||||
```yaml
|
|
||||||
cerc_moniker: "LaconicMainnetNode-2"
|
|
||||||
cerc_peers: "<node-id>@host.docker.internal:26656" # First validator node address
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Update port mappings in `templates/specs/spec-template.yml.j2` to avoid port conflicts:
|
|
||||||
```yaml
|
|
||||||
network:
|
|
||||||
ports:
|
|
||||||
laconicd:
|
|
||||||
- '3060:6060'
|
|
||||||
- '36659:26659'
|
|
||||||
- '36657:26657'
|
|
||||||
- '36656:26656'
|
|
||||||
- '3473:9473'
|
|
||||||
- '3090:9090'
|
|
||||||
- '3317:1317'
|
|
||||||
```
|
|
||||||
|
|
||||||
## Setup Steps
|
|
||||||
|
|
||||||
1. Set environment variables:
|
|
||||||
```bash
|
|
||||||
export CWD=$(pwd)
|
|
||||||
export DATA_DIRECTORY=$CWD
|
|
||||||
export MAINNET_DEPLOYMENT_DIR=mainnet-validator-deployment
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Setup validator node:
|
|
||||||
```bash
|
|
||||||
ansible-playbook -v -i localhost, -c local setup-validator.yml
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Setup TMKMS:
|
|
||||||
```bash
|
|
||||||
# Initialize TMKMS
|
|
||||||
tmkms init ./tmkms-second-node
|
|
||||||
|
|
||||||
# Create TMKMS config
|
|
||||||
cat > ./tmkms-second-node/tmkms.toml << EOL
|
|
||||||
[[chain]]
|
|
||||||
id = "laconic-mainnet"
|
|
||||||
key_format = { type = "cosmos-json", account_key_prefix = "laconicpub", consensus_key_prefix = "laconicvalconspub" }
|
|
||||||
state_file = "$CWD/tmkms-second-node/state/priv_validator_state.json"
|
|
||||||
|
|
||||||
[[validator]]
|
|
||||||
chain_id = "laconic-mainnet"
|
|
||||||
addr = "tcp://localhost:36659"
|
|
||||||
secret_key = "$CWD/tmkms-second-node/secrets/kms-identity.key"
|
|
||||||
protocol_version = "v0.34"
|
|
||||||
reconnect = true
|
|
||||||
|
|
||||||
[[providers.softsign]]
|
|
||||||
key_type = "consensus"
|
|
||||||
path = "$CWD/tmkms-second-node/secrets/priv_validator_key"
|
|
||||||
chain_ids = ["laconic-mainnet"]
|
|
||||||
EOL
|
|
||||||
|
|
||||||
# Import validator key
|
|
||||||
tmkms softsign import $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR/data/laconicd-data/config/priv_validator_key.json $CWD/tmkms-second-node/secrets/priv_validator_key
|
|
||||||
```
|
|
||||||
|
|
||||||
4. Start TMKMS:
|
|
||||||
```bash
|
|
||||||
tmkms start --config $CWD/tmkms-second-node/tmkms.toml
|
|
||||||
```
|
|
||||||
|
|
||||||
5. Enable TMKMS and start the node:
|
|
||||||
```bash
|
|
||||||
echo "TMKMS_ENABLED=true" >> $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR/config.env
|
|
||||||
rm $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR/data/laconicd-data/config/priv_validator_key.json
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR start
|
|
||||||
```
|
|
||||||
|
|
||||||
## Create Validator
|
|
||||||
|
|
||||||
1. Set required environment variables:
|
|
||||||
```bash
|
|
||||||
export PVT_KEY=<private-key-in-hex-format>
|
|
||||||
export KEY_NAME=validator-2
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Create validator on running chain:
|
|
||||||
```bash
|
|
||||||
ansible-playbook -v -i localhost, -c local create-validator.yml
|
|
||||||
```
|
|
||||||
|
|
||||||
## Verification
|
|
||||||
|
|
||||||
1. Check node logs:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR logs laconicd -f
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Check validator list:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR exec laconicd 'laconicd query staking validators'
|
|
||||||
```
|
|
||||||
|
|
||||||
## Clean up
|
|
||||||
|
|
||||||
- To stop the deployment:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR stop
|
|
||||||
```
|
|
||||||
|
|
||||||
- To stop and delete all data:
|
|
||||||
```bash
|
|
||||||
laconic-so deployment --dir $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR stop --delete-volumes
|
|
||||||
sudo rm -rf $DATA_DIRECTORY/$MAINNET_DEPLOYMENT_DIR
|
|
||||||
```
|
|
Loading…
Reference in New Issue
Block a user