Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2543e1b04d |
+50
-35
@@ -1,49 +1,64 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# haqq entrypoint — family C, cosmos app with built-in EVM JSON-RPC (C2).
|
|
||||||
# Uses the shared cometbft-common.sh helpers and injects official mainnet seeds.
|
|
||||||
set -e
|
|
||||||
. /usr/local/bin/cometbft-common.sh
|
|
||||||
|
|
||||||
HOME_DIR="/root/.haqqd"
|
set -e # Exit on failure
|
||||||
CONFIG_DIR="$HOME_DIR/config"
|
|
||||||
CHAINID="${CHAINID:-haqq_11235-1}"
|
|
||||||
CHAINNAME="${CHAINNAME:-mainnet}"
|
|
||||||
API="${API:-eth,txpool,net,debug,web3}"
|
|
||||||
GENESIS_URL="${GENESIS_URL:-https://raw.githubusercontent.com/haqq-network/${CHAINNAME}/master/genesis.json}"
|
|
||||||
ADDRBOOK_URL="${ADDRBOOK_URL:-https://raw.githubusercontent.com/haqq-network/${CHAINNAME}/master/addrbook.json}"
|
|
||||||
|
|
||||||
# Official HAQQ mainnet seeds
|
echo "MONIKER: $MONIKER"
|
||||||
SEEDS="861e5892470275a394ebab407e8d62b1931843d3@192.248.181.17:26656,e1b058e5cfa2b836ddaa496b10911da62dcf182e@haqq-seed-de.allnodes.me:26656,e726816f42831689eab9378d5d577f1d06d25716@haqq-seed-us.allnodes.me:26656,0533e20e65912f72f2ad88a4c91eefbc634212d7@haqq-sync.rpc.p2p.world:26656,c45991e0098b9cacb8603caf4e1cdb7e6e5f87c0@eu.seed.haqq.network:26656,e37cb47590ba46b503269ef255873e9698244d8b@us.seed.haqq.network:26656,c593e93e1fb8be8b48d4e7bab514a227aa620bf8@as.seed.haqq.network:26656,0265238d4845e041868d610c100b88f485eeddfb@rpc.haqq.nodestake.top:666"
|
|
||||||
|
|
||||||
ct_apk curl
|
CHAINID=${CHAINID:-haqq_11235-1}
|
||||||
|
CHAINNAME=${CHAINNAME:-mainnet}
|
||||||
|
API=${API:-eth,net,web3}
|
||||||
|
|
||||||
if haqqd init "$MONIKER" --chain-id "$CHAINID" --home "$HOME_DIR"; then
|
CONFIG_DIR="/root/.haqqd/config"
|
||||||
ct_log "fresh init; fetching config"
|
|
||||||
ct_fetch "$GENESIS_URL" "$CONFIG_DIR/genesis.json" required
|
# Create config directory
|
||||||
ct_fetch "$ADDRBOOK_URL" "$CONFIG_DIR/addrbook.json" optional
|
mkdir -p "$CONFIG_DIR"
|
||||||
ct_localize_home "$CONFIG_DIR"
|
|
||||||
ct_set_min_gas_prices "$CONFIG_DIR/app.toml" "0.01hqq"
|
P2P_STRING="tcp:\\/\\/0\\.0\\.0\\.0\\:${P2P_PORT:-10465}"
|
||||||
|
NAT_STRING="${IP}:${P2P_PORT:-10465}"
|
||||||
|
|
||||||
|
env
|
||||||
|
|
||||||
|
# this goes first because it won't overwrite shit
|
||||||
|
apk add curl
|
||||||
|
if [ $? -ne 0 ]; then exit 1; fi
|
||||||
|
|
||||||
|
if haqqd init ${MONIKER} --chain-id ${CHAINID} --home /root/.haqqd/; then
|
||||||
|
# Define variables
|
||||||
|
GENESIS_URL="https://raw.githubusercontent.com/haqq-network/${CHAINNAME}/master/genesis.json"
|
||||||
|
ADDRESSBOOK_URL="https://raw.githubusercontent.com/haqq-network/${CHAINNAME}/master/addrbook.json"
|
||||||
|
|
||||||
|
# Download config files
|
||||||
|
curl -sL "$GENESIS_URL" -o "$CONFIG_DIR/genesis.json"
|
||||||
|
curl -sL "$ADDRESSBOOK_URL" -o "$CONFIG_DIR/addressbook.json"
|
||||||
|
|
||||||
|
# somehow it's better to make home static to /root
|
||||||
|
sed -i 's|~/|/root/|g' "$CONFIG_DIR/config.toml"
|
||||||
|
sed -i 's|~/|/root/|g' "$CONFIG_DIR/app.toml"
|
||||||
else
|
else
|
||||||
ct_log "already initialized, continuing"
|
echo "Already initialized, continuing!" >&2
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Enable JSON-RPC with correct settings
|
|
||||||
sed -i "/^\[json-rpc\]/,/^\[/{s|^enable = .*|enable = true|}" "$CONFIG_DIR/app.toml"
|
# apply a port change to the config
|
||||||
|
sed -i "/^\[p2p\]/,/^\[/{s|^laddr = .*|laddr = \"$P2P_STRING\"|}" "$CONFIG_DIR/config.toml"
|
||||||
|
#sed -i "s/^laddr = \".*\"/laddr = \"$P2P_STRING\"/" "$CONFIG_DIR/config.toml"
|
||||||
|
sed -i "/^\[p2p\]/,/^\[/{s|^external_address = .*|external_address = \"$NAT_STRING\"|}" "$CONFIG_DIR/config.toml"
|
||||||
|
|
||||||
|
#sed -i 's/minimum-gas-prices = ""/minimum-gas-prices = "0.01hqq"/g' $CONFIG_DIR/app.toml
|
||||||
|
|
||||||
|
sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" $CONFIG_DIR/app.toml
|
||||||
|
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $CONFIG_DIR/app.toml
|
||||||
|
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"19\"/" $CONFIG_DIR/app.toml
|
||||||
|
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $CONFIG_DIR/config.toml
|
||||||
|
|
||||||
sed -i "/^\[json-rpc\]/,/^\[/{s|^address = .*|address = \"0.0.0.0:8545\"|}" "$CONFIG_DIR/app.toml"
|
sed -i "/^\[json-rpc\]/,/^\[/{s|^address = .*|address = \"0.0.0.0:8545\"|}" "$CONFIG_DIR/app.toml"
|
||||||
sed -i "/^\[json-rpc\]/,/^\[/{s|^ws-address = .*|ws-address = \"0.0.0.0:8546\"|}" "$CONFIG_DIR/app.toml"
|
sed -i "/^\[json-rpc\]/,/^\[/{s|^ws-address = .*|ws-address = \"0.0.0.0:8546\"|}" "$CONFIG_DIR/app.toml"
|
||||||
sed -i "/^\[json-rpc\]/,/^\[/{s|^metrics-address = .*|metrics-address = \"0.0.0.0:6065\"|}" "$CONFIG_DIR/app.toml"
|
sed -i "/^\[json-rpc\]/,/^\[/{s|^metrics-address = .*|metrics-address = \"0.0.0.0:6065\"|}" "$CONFIG_DIR/app.toml"
|
||||||
sed -i "/^\[json-rpc\]/,/^\[/{s|^api = .*|api = \"$API\"|}" "$CONFIG_DIR/app.toml"
|
sed -i "/^\[json-rpc\]/,/^\[/{s|^api = .*|api = \"$API\"|}" "$CONFIG_DIR/app.toml"
|
||||||
|
|
||||||
# Pruning + indexing settings
|
# Update moniker if set
|
||||||
sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" "$CONFIG_DIR/app.toml"
|
if [ -n "$MONIKER" ] && [ -f "$CONFIG_DIR/config.toml" ]; then
|
||||||
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" "$CONFIG_DIR/app.toml"
|
sed -i "s/^moniker = \".*\"/moniker = \"$MONIKER\"/" "$CONFIG_DIR/config.toml"
|
||||||
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"19\"/" "$CONFIG_DIR/app.toml"
|
fi
|
||||||
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" "$CONFIG_DIR/config.toml"
|
|
||||||
|
|
||||||
# P2P: bind 0.0.0.0, advertise IP + port, inject official seeds
|
exec haqqd start --chain-id ${CHAINID} $@
|
||||||
ct_patch_p2p "$CONFIG_DIR/config.toml" "$IP" "${P2P_PORT:-10465}"
|
|
||||||
ct_merge_seeds "$CONFIG_DIR/config.toml" "$SEEDS"
|
|
||||||
ct_set_moniker "$CONFIG_DIR/config.toml" "$MONIKER"
|
|
||||||
ct_seed_priv_validator_state "$HOME_DIR"
|
|
||||||
|
|
||||||
exec haqqd start --chain-id "$CHAINID" "$@"
|
|
||||||
|
|||||||
@@ -8,20 +8,13 @@ RUN chmod +x /usr/local/bin/init.sh
|
|||||||
|
|
||||||
ARG ZERO_GRAVITY_VERSION
|
ARG ZERO_GRAVITY_VERSION
|
||||||
ARG ZERO_GRAVITY_CHAIN_SPEC
|
ARG ZERO_GRAVITY_CHAIN_SPEC
|
||||||
RUN if [ "${ZERO_GRAVITY_CHAIN_SPEC}" = "aristotle" ]; then \
|
# Use 0gchain-NG for all current 0G networks (mainnet and testnets)
|
||||||
curl -sL https://github.com/0gfoundation/0gchain-Aristotle/releases/download/${ZERO_GRAVITY_VERSION}/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}.tar.gz -o /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}.tar.gz; \
|
RUN curl -sL https://github.com/0gfoundation/0gchain-NG/releases/download/v${ZERO_GRAVITY_VERSION}/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}.tar.gz -o /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}.tar.gz
|
||||||
else \
|
|
||||||
curl -sL https://github.com/0gfoundation/0gchain-NG/releases/download/v${ZERO_GRAVITY_VERSION}/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}.tar.gz -o /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}.tar.gz; \
|
|
||||||
fi
|
|
||||||
RUN tar -xzf /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}.tar.gz -C /tmp
|
RUN tar -xzf /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}.tar.gz -C /tmp
|
||||||
RUN if [ "${ZERO_GRAVITY_CHAIN_SPEC}" = "galileo" ]; then \
|
RUN mkdir -p /0g && \
|
||||||
mv /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}/rpc /0g; \
|
|
||||||
else \
|
|
||||||
mkdir -p /0g && \
|
|
||||||
cp -a /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}/* /0g/ 2>/dev/null || true; \
|
cp -a /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}/* /0g/ 2>/dev/null || true; \
|
||||||
cp -a /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}/.[^.]* /0g/ 2>/dev/null || true; \
|
cp -a /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}/.[^.]* /0g/ 2>/dev/null || true; \
|
||||||
rm -rf /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}; \
|
rm -rf /tmp/${ZERO_GRAVITY_CHAIN_SPEC}-v${ZERO_GRAVITY_VERSION}
|
||||||
fi
|
|
||||||
|
|
||||||
RUN chmod +x /0g/bin/0gchaind
|
RUN chmod +x /0g/bin/0gchaind
|
||||||
RUN chmod +x /0g/bin/geth
|
RUN chmod +x /0g/bin/geth
|
||||||
|
|||||||
Reference in New Issue
Block a user