-
Notifications
You must be signed in to change notification settings - Fork 24
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
start to create custom dymension starting up scripts
- Loading branch information
Showing
6 changed files
with
262 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
#!/bin/bash | ||
|
||
CHAIN_ID="${CHAIN_ID:=osmosis}" | ||
CHAIN_DIR="${CHAIN_DIR:=$HOME/.osmosisd}" | ||
KEYS_CONFIG="${KEYS_CONFIG:=configs/keys.json}" | ||
|
||
set -eux | ||
|
||
ls $CHAIN_DIR | ||
|
||
enable_monitoring() { | ||
sed -i'' -e "/\[telemetry\]/,+8 s/enabled = .*/enabled = true/" "$APP_CONFIG_FILE" | ||
sed -i'' -e "s/^prometheus-retention-time =.*/prometheus-retention-time = 31104000/" "$APP_CONFIG_FILE" | ||
sed -i'' -e "s/^prometheus =.*/prometheus = true/" "$TENDERMINT_CONFIG_FILE" | ||
sed -ie 's/enabled-unsafe-cors.*$/enabled-unsafe-cors = true/' "$APP_CONFIG_FILE" | ||
sed -ie 's/enable-unsafe-cors.*$/enabled-unsafe-cors = true/' "$APP_CONFIG_FILE" | ||
sed -ie 's/cors_allowed_origins.*$/cors_allowed_origins = ["*"]/' "$TENDERMINT_CONFIG_FILE" | ||
} | ||
|
||
echo "Update config.toml file" | ||
sed -i -e 's#"tcp://127.0.0.1:26657"#"tcp://0.0.0.0:26657"#g' $CHAIN_DIR/config/config.toml | ||
sed -i -e 's/index_all_keys = false/index_all_keys = true/g' $CHAIN_DIR/config/config.toml | ||
sed -i -e 's/seeds = ".*"/seeds = ""/g' $CHAIN_DIR/config/config.toml | ||
sed -i -e 's#cors_allowed_origins = \[\]#cors_allowed_origins = \["*"\]#g' $CHAIN_DIR/config/config.toml | ||
|
||
|
||
echo "Update client.toml file" | ||
sed -i -e 's#keyring-backend = "os"#keyring-backend = "test"#g' $CHAIN_DIR/config/client.toml | ||
sed -i -e 's#output = "text"#output = "json"#g' $CHAIN_DIR/config/client.toml | ||
sed -i -e "s#chain-id = \"\"#chain-id = \"$CHAIN_ID\"#g" $CHAIN_DIR/config/client.toml | ||
|
||
|
||
echo "Update app.toml file" | ||
sed -i -e "s#minimum-gas-prices = \".*\"#minimum-gas-prices = \"0$DENOM\"#g" $CHAIN_DIR/config/app.toml | ||
sed -i -e "s#pruning = \".*\"#pruning = \"default\"#g" $CHAIN_DIR/config/app.toml | ||
sed -i -e 's#enabled-unsafe-cors = false#enabled-unsafe-cors = true#g' $CHAIN_DIR/config/app.toml | ||
sed -i -e 's#swagger = false#swagger = true#g' $CHAIN_DIR/config/app.toml | ||
sed -i -e 's/enable-unsafe-cors = false/enable-unsafe-cors = true/g' $CHAIN_DIR/config/app.toml | ||
sed -i -e 's/enabled-unsafe-cors = false/enabled-unsafe-cors = true/g' $CHAIN_DIR/config/app.toml | ||
|
||
function get_next_line_number() { | ||
local txt=$1 | ||
local file=$2 | ||
local line_number=$(grep -n "$txt" $file | cut -d: -f1 | head -1) | ||
echo $((line_number + 1)) | ||
} | ||
|
||
line_number=$(get_next_line_number "Enable defines if the API server should be enabled." $CHAIN_DIR/config/app.toml) | ||
sed -i -e "${line_number}s/enable = false/enable = true/g" $CHAIN_DIR/config/app.toml | ||
|
||
line_number=$(get_next_line_number "Address defines the API server to listen on." $CHAIN_DIR/config/app.toml) | ||
sed -i -e "${line_number}s#address = \".*\"#address = \"tcp://0.0.0.0:1317\"#g" $CHAIN_DIR/config/app.toml | ||
|
||
line_number=$(get_next_line_number "Enable defines if the gRPC server should be enabled." $CHAIN_DIR/config/app.toml) | ||
sed -i -e "${line_number}s/enable = false/enable = true/g" $CHAIN_DIR/config/app.toml | ||
|
||
line_number=$(get_next_line_number "Address defines the gRPC server address to bind to." $CHAIN_DIR/config/app.toml) | ||
sed -i -e "${line_number}s#address = \".*\"#address = \"0.0.0.0:9090\"#g" $CHAIN_DIR/config/app.toml | ||
|
||
if [ "$METRICS" == "true" ]; then | ||
line_number=$(get_next_line_number "other sinks such as Prometheus." $CHAIN_DIR/config/app.toml) | ||
sed -i -e "${line_number}s/enabled = false/enabled = true/g" $CHAIN_DIR/config/app.toml | ||
|
||
line_number=$(get_next_line_number "PrometheusRetentionTime, when positive, enables a Prometheus metrics sink." $CHAIN_DIR/config/app.toml) | ||
sed -i -e "${line_number}s/prometheus-retention-time = 0/prometheus-retention-time = 3600/g" $CHAIN_DIR/config/app.toml | ||
fi | ||
|
||
echo "Update consensus params in config.toml" | ||
sed -i -e "s#timeout_propose = \".*\"#timeout_propose = \"$TIMEOUT_PROPOSE\"#g" $CHAIN_DIR/config/config.toml | ||
sed -i -e "s#timeout_propose_delta = \".*\"#timeout_propose_delta = \"$TIMEOUT_PROPOSE_DELTA\"#g" $CHAIN_DIR/config/config.toml | ||
sed -i -e "s#timeout_prevote = \".*\"#timeout_prevote = \"$TIMEOUT_PREVOTE\"#g" $CHAIN_DIR/config/config.toml | ||
sed -i -e "s#timeout_prevote_delta = \".*\"#timeout_prevote_delta = \"$TIMEOUT_PREVOTE_DELTA\"#g" $CHAIN_DIR/config/config.toml | ||
sed -i -e "s#timeout_precommit = \".*\"#timeout_precommit = \"$TIMEOUT_PRECOMMIT\"#g" $CHAIN_DIR/config/config.toml | ||
sed -i -e "s#timeout_precommit_delta = \".*\"#timeout_precommit_delta = \"$TIMEOUT_PRECOMMIT_DELTA\"#g" $CHAIN_DIR/config/config.toml | ||
sed -i -e "s#timeout_commit = \".*\"#timeout_commit = \"$TIMEOUT_COMMIT\"#g" $CHAIN_DIR/config/config.toml | ||
|
||
if [ "$METRICS" == "true" ]; then | ||
sed -i -e "s/prometheus = false/prometheus = true/g" $CHAIN_DIR/config/config.toml | ||
fi |
136 changes: 136 additions & 0 deletions
136
starship/charts/devnet/scripts/dymension/update-genesis.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,136 @@ | ||
#!/bin/bash | ||
|
||
DENOM="${DENOM:=uosmo}" | ||
CHAIN_BIN="${CHAIN_BIN:=osmosisd}" | ||
CHAIN_DIR="${CHAIN_DIR:=$HOME/.osmosisd}" | ||
|
||
set -eux | ||
|
||
ls $CHAIN_DIR/config | ||
|
||
GENESIS_FILE=$CHAIN_DIR/config/genesis.json | ||
|
||
|
||
tmp=$(mktemp) | ||
|
||
set_gov_params() { | ||
echo "setting gov params" | ||
jq '.app_state.gov.deposit_params.min_deposit[0].denom = "adym"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state.gov.deposit_params.min_deposit[0].amount = "1000000"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq -r '.app_state.gov.deposit_params.max_deposit_period |= "30s"' $CHAIN_DIR/config/genesis.json > /tmp/genesis.json; mv /tmp/genesis.json $CHAIN_DIR/config/genesis.json | ||
jq -r '.app_state.gov.voting_params.voting_period |= "30s"' $CHAIN_DIR/config/genesis.json > /tmp/genesis.json; mv /tmp/genesis.json $CHAIN_DIR/config/genesis.json | ||
jq -r '.app_state.gov.tally_params.quorum |= "0.000000000000000000"' $CHAIN_DIR/config/genesis.json > /tmp/genesis.json; mv /tmp/genesis.json $CHAIN_DIR/config/genesis.json | ||
jq -r '.app_state.gov.tally_params.threshold |= "0.000000000000000000"' $CHAIN_DIR/config/genesis.json > /tmp/genesis.json; mv /tmp/genesis.json $CHAIN_DIR/config/genesis.json | ||
jq -r '.app_state.gov.tally_params.veto_threshold |= "0.000000000000000000"' $CHAIN_DIR/config/genesis.json > /tmp/genesis.json; mv /tmp/genesis.json $CHAIN_DIR/config/genesis.json | ||
} | ||
|
||
set_hub_params() { | ||
echo "setting hub params" | ||
sed -i'' -e 's/bond_denom": ".*"/bond_denom": "adym"/' "$GENESIS_FILE" | ||
sed -i'' -e 's/mint_denom": ".*"/mint_denom": "adym"/' "$GENESIS_FILE" | ||
|
||
jq '.app_state.rollapp.params.dispute_period_in_blocks = "50"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
|
||
#increase the tx size cost per byte from 10 to 100 | ||
jq '.app_state.auth.params.tx_size_cost_per_byte = "100"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
|
||
jq -r '.app_state.staking.params.unbonding_time |= "120s"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
|
||
# jail validators faster, and shorten recovery time, no slash for downtime | ||
jq '.app_state.slashing.params.signed_blocks_window = "10000"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state.slashing.params.min_signed_per_window = "0.800000000000000000"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state.slashing.params.downtime_jail_duration = "120s"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state.slashing.params.slash_fraction_downtime = "0.0"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
} | ||
|
||
set_consenus_params() { | ||
# cometbft's updated values | ||
# MaxBytes: 4194304, // four megabytes | ||
# MaxGas: 10000000, // ten million | ||
echo "setting consensus params" | ||
jq '.consensus_params["block"]["max_bytes"] = "4194304"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.consensus_params["block"]["max_gas"] = "10000000"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
} | ||
|
||
set_EVM_params() { | ||
echo "setting EVM params" | ||
jq '.app_state["feemarket"]["params"]["no_base_fee"] = true' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state.evm.params.evm_denom = "adym"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state.evm.params.enable_create = false' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
} | ||
|
||
#Adding a "minute" epoch | ||
set_epochs_params() { | ||
echo "setting epochs params" | ||
jq '.app_state.epochs.epochs += [{ | ||
"identifier": "minute", | ||
"start_time": "0001-01-01T00:00:00Z", | ||
"duration": "60s", | ||
"current_epoch": "0", | ||
"current_epoch_start_time": "0001-01-01T00:00:00Z", | ||
"epoch_counting_started": false, | ||
"current_epoch_start_height": "0" | ||
}]' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
} | ||
|
||
#should be set to days on live net and lockable duration to 2 weeks | ||
set_incentives_params() { | ||
echo "setting incentives params" | ||
jq '.app_state.incentives.params.distr_epoch_identifier = "minute"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state.incentives.lockable_durations = ["60s"]' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
} | ||
|
||
|
||
set_misc_params() { | ||
echo "setting misc params" | ||
jq '.app_state.crisis.constant_fee.denom = "adym"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq -r '.app_state.gamm.params.pool_creation_fee[0].denom = "adym"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state["txfees"]["basedenom"] = "adym"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
jq '.app_state["txfees"]["params"]["epoch_identifier"] = "minute"' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
|
||
jq -r '.app_state.gamm.params.enable_global_pool_fees = true' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
} | ||
|
||
set_bank_denom_metadata() { | ||
echo "setting bank denom params" | ||
jq '.app_state.bank.denom_metadata = [ | ||
{ | ||
"base": "adym", | ||
"denom_units": [ | ||
{ | ||
"aliases": [], | ||
"denom": "adym", | ||
"exponent": 0 | ||
}, | ||
{ | ||
"aliases": [], | ||
"denom": "DYM", | ||
"exponent": 18 | ||
} | ||
], | ||
"description": "Denom metadata for DYM (adym)", | ||
"display": "DYM", | ||
"name": "DYM", | ||
"symbol": "DYM" | ||
} | ||
]' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
} | ||
|
||
set_authorised_deployer_account() { | ||
jq --arg address $1 '.app_state.rollapp.params.deployer_whitelist += [{ "address": $address }]' "$GENESIS_FILE" > "$tmp" && mv "$tmp" "$GENESIS_FILE" | ||
} | ||
|
||
set_consenus_params | ||
set_gov_params | ||
set_hub_params | ||
set_misc_params | ||
set_EVM_params | ||
set_bank_denom_metadata | ||
set_epochs_params | ||
set_incentives_params | ||
|
||
echo "Update genesis.json file with updated local params" | ||
sed -i "s/\"time_iota_ms\": \".*\"/\"time_iota_ms\": \"$TIME_IOTA_MS\"/" $CHAIN_DIR/config/genesis.json | ||
|
||
$CHAIN_BIN tendermint show-node-id | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
chains: | ||
- id: dymension_1100-1 | ||
name: dymension | ||
numValidators: 2 | ||
faucet: | ||
enabled: true | ||
type: starship | ||
ports: | ||
rest: 1313 | ||
rpc: 26653 | ||
exposer: 38083 | ||
- id: cosmoshub-4 | ||
name: cosmoshub | ||
image: ghcr.io/cosmology-tech/starship/gaia:v10.0.1 | ||
numValidators: 1 | ||
ports: | ||
rest: 1317 | ||
rpc: 26657 | ||
exposer: 38087 | ||
faucet: 8007 | ||
|
||
relayers: | ||
- name: dym-cosmos | ||
type: hermes | ||
replicas: 1 | ||
chains: | ||
- dymension_1100-1 | ||
- cosmoshub-4 | ||
|
||
registry: | ||
enabled: true | ||
ports: | ||
rest: 8081 | ||
grpc: 9091 |