From a9ebd14276883e27ff600d429d90f48b9d0acb4e Mon Sep 17 00:00:00 2001 From: nabarun Date: Thu, 1 Aug 2024 12:10:57 +0000 Subject: [PATCH] Remove `create-fixturenet` script and use `init` script from laconicd repo instead (#8) Part of [laconicd testnet validator enrollment](https://www.notion.so/laconicd-testnet-validator-enrollment-6fc1d3cafcc64fef8c5ed3affa27c675) Co-authored-by: Adw8 Reviewed-on: https://git.vdb.to/cerc-io/fixturenet-laconicd-stack/pulls/8 --- .../docker-compose-fixturenet-laconicd.yml | 4 +- .../fixturenet-laconicd/create-fixturenet.sh | 119 ------------------ 2 files changed, 2 insertions(+), 121 deletions(-) delete mode 100644 stack-orchestrator/config/fixturenet-laconicd/create-fixturenet.sh diff --git a/stack-orchestrator/compose/docker-compose-fixturenet-laconicd.yml b/stack-orchestrator/compose/docker-compose-fixturenet-laconicd.yml index 528831a..e7279b6 100644 --- a/stack-orchestrator/compose/docker-compose-fixturenet-laconicd.yml +++ b/stack-orchestrator/compose/docker-compose-fixturenet-laconicd.yml @@ -2,15 +2,15 @@ services: laconicd: restart: unless-stopped image: cerc/laconicd:local - command: ["bash", "/docker-entrypoint-scripts.d/create-fixturenet.sh"] + command: ["bash", "/scripts/init.sh"] environment: TEST_AUCTION_ENABLED: ${TEST_AUCTION_ENABLED:-false} TEST_REGISTRY_EXPIRY: ${TEST_REGISTRY_EXPIRY:-false} ONBOARDING_ENABLED: ${ONBOARDING_ENABLED:-false} + GENESIS_FILE: /var/tmp/genesis.json volumes: - laconicd-data:/root/.laconicd - genesis-config:/var/tmp - - ../config/fixturenet-laconicd/create-fixturenet.sh:/docker-entrypoint-scripts.d/create-fixturenet.sh ports: - "6060" - "26657" diff --git a/stack-orchestrator/config/fixturenet-laconicd/create-fixturenet.sh b/stack-orchestrator/config/fixturenet-laconicd/create-fixturenet.sh deleted file mode 100644 index 47d0e5b..0000000 --- a/stack-orchestrator/config/fixturenet-laconicd/create-fixturenet.sh +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/bash - -KEY="alice" -CHAINID="laconic_9000-1" -MONIKER="localtestnet" -KEYRING="test" -LOGLEVEL="${LOGLEVEL:-info}" - -input_genesis_file=/var/tmp/genesis.json - -if [ "$1" == "clean" ] || [ ! -d "$HOME/.laconicd/data/blockstore.db" ]; then - # validate dependencies are installed - command -v jq > /dev/null 2>&1 || { - echo >&2 "jq not installed. More info: https://stedolan.github.io/jq/download/" - exit 1 - } - - # remove existing daemon and client - rm -rf $HOME/.laconicd/* - - if [ -n "`which make`" ]; then - make install - fi - - laconicd config set client chain-id $CHAINID - laconicd config set client keyring-backend $KEYRING - - # if $KEY exists it should be deleted - laconicd keys add $KEY --keyring-backend $KEYRING - - # Set moniker and chain-id for Ethermint (Moniker can be anything, chain-id must be an integer) - laconicd init $MONIKER --chain-id $CHAINID --default-denom alnt - - if [ -f ${input_genesis_file} ]; then - # Use provided genesis config - cp $input_genesis_file $HOME/.laconicd/config/genesis.json - fi - - update_genesis() { - jq "$1" $HOME/.laconicd/config/genesis.json > $HOME/.laconicd/config/tmp_genesis.json && - mv $HOME/.laconicd/config/tmp_genesis.json $HOME/.laconicd/config/genesis.json - } - - if [[ "$TEST_REGISTRY_EXPIRY" == "true" ]]; then - echo "Setting timers for expiry tests." - - update_genesis '.app_state["registry"]["params"]["record_rent_duration"]="60s"' - update_genesis '.app_state["registry"]["params"]["authority_grace_period"]="60s"' - update_genesis '.app_state["registry"]["params"]["authority_rent_duration"]="60s"' - fi - - if [[ "$TEST_AUCTION_ENABLED" == "true" ]]; then - echo "Enabling auction and setting timers." - - update_genesis '.app_state["registry"]["params"]["authority_auction_enabled"]=true' - update_genesis '.app_state["registry"]["params"]["authority_rent_duration"]="60s"' - update_genesis '.app_state["registry"]["params"]["authority_grace_period"]="300s"' - update_genesis '.app_state["registry"]["params"]["authority_auction_commits_duration"]="60s"' - update_genesis '.app_state["registry"]["params"]["authority_auction_reveals_duration"]="60s"' - fi - - if [[ "$ONBOARDING_ENABLED" == "true" ]]; then - echo "Enabling validator onboarding." - - update_genesis '.app_state["onboarding"]["params"]["onboarding_enabled"]=true' - fi - - # increase block time (?) - update_genesis '.consensus["params"]["block"]["time_iota_ms"]="1000"' - - # Set gas limit in genesis - update_genesis '.consensus["params"]["block"]["max_gas"]="10000000"' - - # disable produce empty block - if [[ "$OSTYPE" == "darwin"* ]]; then - sed -i '' 's/create_empty_blocks = true/create_empty_blocks = false/g' $HOME/.laconicd/config/config.toml - else - sed -i 's/create_empty_blocks = true/create_empty_blocks = false/g' $HOME/.laconicd/config/config.toml - fi - - # Enable telemetry (prometheus metrics: http://localhost:1317/metrics?format=prometheus) - if [[ "$OSTYPE" == "darwin"* ]]; then - sed -i '' 's/enabled = false/enabled = true/g' $HOME/.laconicd/config/app.toml - sed -i '' 's/prometheus-retention-time = 0/prometheus-retention-time = 60/g' $HOME/.laconicd/config/app.toml - sed -i '' 's/prometheus = false/prometheus = true/g' $HOME/.laconicd/config/config.toml - else - sed -i 's/enabled = false/enabled = true/g' $HOME/.laconicd/config/app.toml - sed -i 's/prometheus-retention-time = 0/prometheus-retention-time = 60/g' $HOME/.laconicd/config/app.toml - sed -i 's/prometheus = false/prometheus = true/g' $HOME/.laconicd/config/config.toml - fi - - # Run this to allow requests from any origin - sed -i 's/cors_allowed_origins.*$/cors_allowed_origins = ["*"]/' $HOME/.laconicd/config/config.toml - - # Allocate genesis accounts (cosmos formatted addresses) - # 10^30 alnt | 10^12 lnt - laconicd genesis add-genesis-account $KEY 1000000000000000000000000000000alnt --keyring-backend $KEYRING - - # Sign genesis transaction - # 10^24 alnt | 10^6 lnt - laconicd genesis gentx $KEY 1000000000000000000000000alnt --keyring-backend $KEYRING --chain-id $CHAINID - - # Collect genesis tx - laconicd genesis collect-gentxs - - # Run this to ensure everything worked and that the genesis file is setup correctly - laconicd genesis validate -else - echo "Using existing database at $HOME/.laconicd. To replace, run '`basename $0` clean'" -fi - -# Start the node (remove the --pruning=nothing flag if historical queries are not needed) -laconicd start \ - --pruning=nothing \ - --log_level $LOGLEVEL \ - --minimum-gas-prices=1alnt \ - --api.enable \ - --rpc.laddr="tcp://0.0.0.0:26657" \ - --gql-server --gql-playground