mirror of
https://github.com/0glabs/0g-storage-node.git
synced 2024-12-24 07:15:17 +00:00
Supports 0gchain in python test framework. (#66)
This commit is contained in:
parent
2262bc3fb9
commit
b17fd117fd
93
tests/config/0gchain-init-genesis.sh
Normal file
93
tests/config/0gchain-init-genesis.sh
Normal file
@ -0,0 +1,93 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
BINARY=$(cd $(dirname ${BASH_SOURCE[0]})/../tmp; pwd)/0gchaind
|
||||
ROOT_DIR=${1:-.}
|
||||
NUM_NODES=${2:-3}
|
||||
P2P_PORT_START=${3:-26656}
|
||||
CHAIN_ID=zgchainpy_9000-777
|
||||
|
||||
# install jq if not unavailable
|
||||
jq --version >/dev/null 2>&1 || sudo snap install jq -y
|
||||
|
||||
mkdir -p $ROOT_DIR
|
||||
|
||||
# Init configs
|
||||
for ((i=0; i<$NUM_NODES; i++)) do
|
||||
$BINARY init node$i --home $ROOT_DIR/node$i --chain-id $CHAIN_ID
|
||||
|
||||
# Change genesis.json
|
||||
GENESIS=$ROOT_DIR/node$i/config/genesis.json
|
||||
TMP_GENESIS=$ROOT_DIR/node$i/config/tmp_genesis.json
|
||||
|
||||
# Replace stake with neuron
|
||||
sed -in-place='' 's/stake/ua0gi/g' "$GENESIS"
|
||||
|
||||
# Replace the default evm denom of aphoton with neuron
|
||||
sed -in-place='' 's/aphoton/neuron/g' "$GENESIS"
|
||||
|
||||
cat $GENESIS | jq '.consensus_params.block.max_gas = "25000000"' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
|
||||
# Zero out the total supply so it gets recalculated during InitGenesis
|
||||
cat $GENESIS | jq '.app_state.bank.supply = []' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
|
||||
# Disable fee market
|
||||
cat $GENESIS | jq '.app_state.feemarket.params.no_base_fee = true' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
|
||||
# Disable london fork
|
||||
cat $GENESIS | jq '.app_state.evm.params.chain_config.london_block = null' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
cat $GENESIS | jq '.app_state.evm.params.chain_config.arrow_glacier_block = null' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
cat $GENESIS | jq '.app_state.evm.params.chain_config.gray_glacier_block = null' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
cat $GENESIS | jq '.app_state.evm.params.chain_config.merge_netsplit_block = null' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
cat $GENESIS | jq '.app_state.evm.params.chain_config.shanghai_block = null' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
cat $GENESIS | jq '.app_state.evm.params.chain_config.cancun_block = null' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
|
||||
# cat $GENESIS | jq '.app_state["staking"]["params"]["bond_denom"]="a0gi"' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
# cat $GENESIS | jq '.app_state["gov"]["params"]["min_deposit"][0]["denom"]="a0gi"' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
|
||||
cat "$GENESIS" | jq '.app_state["staking"]["params"]["max_validators"]=125' >"$TMP_GENESIS" && mv "$TMP_GENESIS" "$GENESIS"
|
||||
cat "$GENESIS" | jq '.app_state["slashing"]["params"]["signed_blocks_window"]="1000"' >"$TMP_GENESIS" && mv "$TMP_GENESIS" "$GENESIS"
|
||||
|
||||
cat "$GENESIS" | jq '.app_state["consensus_params"]["block"]["time_iota_ms"]="3000"' >"$TMP_GENESIS" && mv "$TMP_GENESIS" "$GENESIS"
|
||||
|
||||
# Change app.toml
|
||||
APP_TOML=$ROOT_DIR/node$i/config/app.toml
|
||||
sed -i 's/minimum-gas-prices = "0ua0gi"/minimum-gas-prices = "1000000000neuron"/' $APP_TOML
|
||||
sed -i '/\[grpc\]/,/^\[/ s/enable = true/enable = false/' $APP_TOML
|
||||
sed -i '/\[grpc-web\]/,/^\[/ s/enable = true/enable = false/' $APP_TOML
|
||||
sed -i '/\[json-rpc\]/,/^\[/ s/enable = false/enable = true/' $APP_TOML
|
||||
|
||||
# Change config.toml
|
||||
CONFIG_TOML=$ROOT_DIR/node$i/config/config.toml
|
||||
sed -i '/seeds = /c\seeds = ""' $CONFIG_TOML
|
||||
sed -i 's/addr_book_strict = true/addr_book_strict = false/' $CONFIG_TOML
|
||||
done
|
||||
|
||||
# Update persistent_peers in config.toml
|
||||
for ((i=1; i<$NUM_NODES; i++)) do
|
||||
PERSISTENT_NODES=""
|
||||
for ((j=0; j<$i; j++)) do
|
||||
if [[ $j -gt 0 ]]; then PERSISTENT_NODES=$PERSISTENT_NODES,; fi
|
||||
NODE_ID=`$BINARY tendermint show-node-id --home $ROOT_DIR/node$j`
|
||||
P2P_PORT=$(($P2P_PORT_START+$j))
|
||||
PERSISTENT_NODES=$PERSISTENT_NODES$NODE_ID@127.0.0.1:$P2P_PORT
|
||||
done
|
||||
sed -i "/persistent_peers = /c\persistent_peers = \"$PERSISTENT_NODES\"" $ROOT_DIR/node$i/config/config.toml
|
||||
done
|
||||
|
||||
# Create genesis with a single validator
|
||||
$BINARY keys add val0 --keyring-backend test --home $ROOT_DIR/node0
|
||||
$BINARY add-genesis-account val0 15000000000000000000ua0gi --keyring-backend test --home $ROOT_DIR/node0
|
||||
|
||||
# add genesis account for tests, see GENESIS_PRIV_KEY and GENESIS_PRIV_KEY1 in node_config.py
|
||||
$BINARY add-genesis-account 0g1l0j9dqdvd3fatfqywhm4y6avrln4jracmt6ztf 40000000000000000000ua0gi --home $ROOT_DIR/node0
|
||||
$BINARY add-genesis-account 0g1pemg6y3etj9tlhkl0vdwkrw36f74u2nl8sjw7g 40000000000000000000ua0gi --home $ROOT_DIR/node0
|
||||
|
||||
mkdir -p $ROOT_DIR/gentxs
|
||||
$BINARY gentx val0 10000000000000000000ua0gi --keyring-backend test --home $ROOT_DIR/node0 --output-document $ROOT_DIR/gentxs/node0.json
|
||||
$BINARY collect-gentxs --home $ROOT_DIR/node0 --gentx-dir $ROOT_DIR/gentxs
|
||||
$BINARY validate-genesis --home $ROOT_DIR/node0
|
||||
for ((i=1; i<$NUM_NODES; i++)) do
|
||||
cp $ROOT_DIR/node0/config/genesis.json $ROOT_DIR/node$i/config/genesis.json
|
||||
done
|
@ -1,63 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
EVMOSD=$(cd $(dirname ${BASH_SOURCE[0]})/../tmp; pwd)/evmosd
|
||||
ROOT_DIR=${1:-.}
|
||||
NUM_NODES=${2:-3}
|
||||
P2P_PORT_START=${3:-26656}
|
||||
CHAIN_ID=evmospy_9000-777
|
||||
|
||||
# install jq if not unavailable
|
||||
jq --version >/dev/null 2>&1 || sudo snap install jq -y
|
||||
|
||||
mkdir -p $ROOT_DIR
|
||||
|
||||
# Init configs
|
||||
for ((i=0; i<$NUM_NODES; i++)) do
|
||||
$EVMOSD init node$i --home $ROOT_DIR/node$i --chain-id $CHAIN_ID
|
||||
|
||||
# Change parameter token denominations to aevmos
|
||||
GENESIS=$ROOT_DIR/node$i/config/genesis.json
|
||||
TMP_GENESIS=$ROOT_DIR/node$i/config/tmp_genesis.json
|
||||
cat $GENESIS | jq '.app_state["staking"]["params"]["bond_denom"]="aevmos"' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
cat $GENESIS | jq '.app_state["gov"]["params"]["min_deposit"][0]["denom"]="aevmos"' >$TMP_GENESIS && mv $TMP_GENESIS $GENESIS
|
||||
|
||||
# Change app.toml
|
||||
APP_TOML=$ROOT_DIR/node$i/config/app.toml
|
||||
sed -i 's/minimum-gas-prices = "0aevmos"/minimum-gas-prices = "1aevmos"/' $APP_TOML
|
||||
sed -i '/\[json-rpc\]/,/^\[/ s/enable = false/enable = true/' $APP_TOML
|
||||
|
||||
# Change config.toml
|
||||
CONFIG_TOML=$ROOT_DIR/node$i/config/config.toml
|
||||
sed -i '/seeds = /c\seeds = ""' $CONFIG_TOML
|
||||
sed -i 's/addr_book_strict = true/addr_book_strict = false/' $CONFIG_TOML
|
||||
done
|
||||
|
||||
# Update persistent_peers in config.toml
|
||||
for ((i=1; i<$NUM_NODES; i++)) do
|
||||
PERSISTENT_NODES=""
|
||||
for ((j=0; j<$i; j++)) do
|
||||
if [[ $j -gt 0 ]]; then PERSISTENT_NODES=$PERSISTENT_NODES,; fi
|
||||
NODE_ID=`$EVMOSD tendermint show-node-id --home $ROOT_DIR/node$j`
|
||||
P2P_PORT=$(($P2P_PORT_START+$j))
|
||||
PERSISTENT_NODES=$PERSISTENT_NODES$NODE_ID@127.0.0.1:$P2P_PORT
|
||||
done
|
||||
sed -i "/persistent_peers = /c\persistent_peers = \"$PERSISTENT_NODES\"" $ROOT_DIR/node$i/config/config.toml
|
||||
done
|
||||
|
||||
# Create genesis with a single validator
|
||||
$EVMOSD keys add val0 --keyring-backend test --home $ROOT_DIR/node0
|
||||
$EVMOSD add-genesis-account val0 1000000000evmos --keyring-backend test --home $ROOT_DIR/node0
|
||||
|
||||
# add genesis account for tests, see GENESIS_PRIV_KEY and GENESIS_PRIV_KEY1 in node_config.py
|
||||
$EVMOSD add-genesis-account evmos1l0j9dqdvd3fatfqywhm4y6avrln4jracaapkme 1000000000evmos --home $ROOT_DIR/node0
|
||||
$EVMOSD add-genesis-account evmos1pemg6y3etj9tlhkl0vdwkrw36f74u2nlpxf6wc 1000000000evmos --home $ROOT_DIR/node0
|
||||
|
||||
mkdir -p $ROOT_DIR/gentxs
|
||||
$EVMOSD gentx val0 500000000evmos --keyring-backend test --home $ROOT_DIR/node0 --output-document $ROOT_DIR/gentxs/node0.json
|
||||
$EVMOSD collect-gentxs --home $ROOT_DIR/node0 --gentx-dir $ROOT_DIR/gentxs
|
||||
$EVMOSD validate-genesis --home $ROOT_DIR/node0
|
||||
for ((i=1; i<$NUM_NODES; i++)) do
|
||||
cp $ROOT_DIR/node0/config/genesis.json $ROOT_DIR/node$i/config/genesis.json
|
||||
done
|
@ -27,7 +27,7 @@ from test_framework.contracts import load_contract_metadata
|
||||
class BlockChainNodeType(Enum):
|
||||
Conflux = 0
|
||||
BSC = 1
|
||||
Evmos = 2
|
||||
ZG = 2
|
||||
|
||||
def block_time(self):
|
||||
if self == BlockChainNodeType.Conflux:
|
||||
@ -363,4 +363,4 @@ class BlockchainNode(TestNode):
|
||||
w3.eth.wait_for_transaction_receipt(tx_hash)
|
||||
|
||||
def start(self):
|
||||
super().start(self.blockchain_node_type == BlockChainNodeType.BSC)
|
||||
super().start(self.blockchain_node_type == BlockChainNodeType.BSC or self.blockchain_node_type == BlockChainNodeType.ZG)
|
||||
|
@ -18,7 +18,7 @@ from test_framework.contract_proxy import FlowContractProxy, MineContractProxy,
|
||||
from test_framework.zgs_node import ZgsNode
|
||||
from test_framework.blockchain_node import BlockChainNodeType
|
||||
from test_framework.conflux_node import ConfluxNode, connect_sample_nodes
|
||||
from test_framework.evmos_node import EvmosNode, evmos_init_genesis
|
||||
from test_framework.zg_node import ZGNode, zg_node_init_genesis
|
||||
from utility.utils import PortMin, is_windows_platform, wait_until
|
||||
from utility.build_binary import build_cli
|
||||
|
||||
@ -35,7 +35,7 @@ TEST_EXIT_FAILED = 1
|
||||
|
||||
|
||||
class TestFramework:
|
||||
def __init__(self, blockchain_node_type=BlockChainNodeType.Evmos):
|
||||
def __init__(self, blockchain_node_type=BlockChainNodeType.ZG):
|
||||
if "http_proxy" in os.environ:
|
||||
del os.environ["http_proxy"]
|
||||
|
||||
@ -62,8 +62,8 @@ class TestFramework:
|
||||
self.__default_geth_binary__ = os.path.join(
|
||||
tests_dir, "tmp", "geth" + binary_ext
|
||||
)
|
||||
self.__default_evmos_binary__ = os.path.join(
|
||||
tests_dir, "tmp", "evmosd" + binary_ext
|
||||
self.__default_zg_binary__ = os.path.join(
|
||||
tests_dir, "tmp", "0gchaind" + binary_ext
|
||||
)
|
||||
self.__default_zgs_node_binary__ = os.path.join(
|
||||
root_dir, "target", "release", "zgs_node" + binary_ext
|
||||
@ -73,9 +73,9 @@ class TestFramework:
|
||||
)
|
||||
|
||||
def __setup_blockchain_node(self):
|
||||
if self.blockchain_node_type == BlockChainNodeType.Evmos:
|
||||
evmos_init_genesis(self.blockchain_binary, self.root_dir, self.num_blockchain_nodes)
|
||||
self.log.info("Evmos genesis initialized for %s nodes" % self.num_blockchain_nodes)
|
||||
if self.blockchain_node_type == BlockChainNodeType.ZG:
|
||||
zg_node_init_genesis(self.blockchain_binary, self.root_dir, self.num_blockchain_nodes)
|
||||
self.log.info("0gchain genesis initialized for %s nodes" % self.num_blockchain_nodes)
|
||||
|
||||
for i in range(self.num_blockchain_nodes):
|
||||
if i in self.blockchain_node_configs:
|
||||
@ -103,8 +103,8 @@ class TestFramework:
|
||||
self.contract_path,
|
||||
self.log,
|
||||
)
|
||||
elif self.blockchain_node_type == BlockChainNodeType.Evmos:
|
||||
node = EvmosNode(
|
||||
elif self.blockchain_node_type == BlockChainNodeType.ZG:
|
||||
node = ZGNode(
|
||||
i,
|
||||
self.root_dir,
|
||||
self.blockchain_binary,
|
||||
@ -161,9 +161,9 @@ class TestFramework:
|
||||
# The default is `dev` mode with auto mining, so it's not guaranteed that blocks
|
||||
# can be synced in time for `sync_blocks` to pass.
|
||||
# sync_blocks(self.blockchain_nodes)
|
||||
elif self.blockchain_node_type == BlockChainNodeType.Evmos:
|
||||
elif self.blockchain_node_type == BlockChainNodeType.ZG:
|
||||
# wait for the first block
|
||||
self.log.debug("Wait 3 seconds for evmos node to generate first block")
|
||||
self.log.debug("Wait 3 seconds for 0gchain node to generate first block")
|
||||
time.sleep(3)
|
||||
for node in self.blockchain_nodes:
|
||||
wait_until(lambda: node.net_peerCount() == self.num_blockchain_nodes - 1)
|
||||
@ -227,9 +227,9 @@ class TestFramework:
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--evmos-binary",
|
||||
dest="evmos",
|
||||
default=self.__default_evmos_binary__,
|
||||
"--zg-binary",
|
||||
dest="zg",
|
||||
default=self.__default_zg_binary__,
|
||||
type=str,
|
||||
)
|
||||
|
||||
@ -458,8 +458,8 @@ class TestFramework:
|
||||
self.blockchain_binary = os.path.abspath(self.options.conflux)
|
||||
elif self.blockchain_node_type == BlockChainNodeType.BSC:
|
||||
self.blockchain_binary = os.path.abspath(self.options.bsc)
|
||||
elif self.blockchain_node_type == BlockChainNodeType.Evmos:
|
||||
self.blockchain_binary = os.path.abspath(self.options.evmos)
|
||||
elif self.blockchain_node_type == BlockChainNodeType.ZG:
|
||||
self.blockchain_binary = os.path.abspath(self.options.zg)
|
||||
else:
|
||||
raise NotImplementedError
|
||||
|
||||
|
@ -4,41 +4,41 @@ import tempfile
|
||||
|
||||
from test_framework.blockchain_node import BlockChainNodeType, BlockchainNode
|
||||
from utility.utils import blockchain_rpc_port, arrange_port
|
||||
from utility.build_binary import build_evmos
|
||||
from utility.build_binary import build_zg
|
||||
|
||||
EVMOS_PORT_CATEGORY_WS = 0
|
||||
EVMOS_PORT_CATEGORY_P2P = 1
|
||||
EVMOS_PORT_CATEGORY_RPC = 2
|
||||
EVMOS_PORT_CATEGORY_PPROF = 3
|
||||
ZGNODE_PORT_CATEGORY_WS = 0
|
||||
ZGNODE_PORT_CATEGORY_P2P = 1
|
||||
ZGNODE_PORT_CATEGORY_RPC = 2
|
||||
ZGNODE_PORT_CATEGORY_PPROF = 3
|
||||
|
||||
def evmos_init_genesis(binary: str, root_dir: str, num_nodes: int):
|
||||
def zg_node_init_genesis(binary: str, root_dir: str, num_nodes: int):
|
||||
assert num_nodes > 0, "Invalid number of blockchain nodes: %s" % num_nodes
|
||||
|
||||
if not os.path.exists(binary):
|
||||
build_evmos(os.path.dirname(binary))
|
||||
build_zg(os.path.dirname(binary))
|
||||
|
||||
shell_script = os.path.join(
|
||||
os.path.dirname(os.path.realpath(__file__)), # test_framework folder
|
||||
"..", "config", "evmos-init-genesis.sh"
|
||||
"..", "config", "0gchain-init-genesis.sh"
|
||||
)
|
||||
|
||||
evmosd_dir = os.path.join(root_dir, "evmosd")
|
||||
os.mkdir(evmosd_dir)
|
||||
zgchaind_dir = os.path.join(root_dir, "0gchaind")
|
||||
os.mkdir(zgchaind_dir)
|
||||
|
||||
log_file = tempfile.NamedTemporaryFile(dir=evmosd_dir, delete=False, prefix="init_genesis_", suffix=".log")
|
||||
p2p_port_start = arrange_port(EVMOS_PORT_CATEGORY_P2P, 0)
|
||||
log_file = tempfile.NamedTemporaryFile(dir=zgchaind_dir, delete=False, prefix="init_genesis_", suffix=".log")
|
||||
p2p_port_start = arrange_port(ZGNODE_PORT_CATEGORY_P2P, 0)
|
||||
|
||||
ret = subprocess.run(
|
||||
args=["bash", shell_script, evmosd_dir, str(num_nodes), str(p2p_port_start)],
|
||||
args=["bash", shell_script, zgchaind_dir, str(num_nodes), str(p2p_port_start)],
|
||||
stdout=log_file,
|
||||
stderr=log_file,
|
||||
)
|
||||
|
||||
log_file.close()
|
||||
|
||||
assert ret.returncode == 0, "Failed to init evmos genesis, see more details in log file: %s" % log_file.name
|
||||
assert ret.returncode == 0, "Failed to init 0gchain genesis, see more details in log file: %s" % log_file.name
|
||||
|
||||
class EvmosNode(BlockchainNode):
|
||||
class ZGNode(BlockchainNode):
|
||||
def __init__(
|
||||
self,
|
||||
index,
|
||||
@ -49,7 +49,7 @@ class EvmosNode(BlockchainNode):
|
||||
log,
|
||||
rpc_timeout=10,
|
||||
):
|
||||
data_dir = os.path.join(root_dir, "evmosd", "node" + str(index))
|
||||
data_dir = os.path.join(root_dir, "0gchaind", "node" + str(index))
|
||||
rpc_url = "http://127.0.0.1:%s" % blockchain_rpc_port(index)
|
||||
|
||||
super().__init__(
|
||||
@ -60,7 +60,7 @@ class EvmosNode(BlockchainNode):
|
||||
{},
|
||||
contract_path,
|
||||
log,
|
||||
BlockChainNodeType.Evmos,
|
||||
BlockChainNodeType.ZG,
|
||||
rpc_timeout,
|
||||
)
|
||||
|
||||
@ -71,13 +71,13 @@ class EvmosNode(BlockchainNode):
|
||||
# overwrite json rpc http port: 8545
|
||||
"--json-rpc.address", "127.0.0.1:%s" % blockchain_rpc_port(index),
|
||||
# overwrite json rpc ws port: 8546
|
||||
"--json-rpc.ws-address", "127.0.0.1:%s" % arrange_port(EVMOS_PORT_CATEGORY_WS, index),
|
||||
"--json-rpc.ws-address", "127.0.0.1:%s" % arrange_port(ZGNODE_PORT_CATEGORY_WS, index),
|
||||
# overwrite p2p port: 26656
|
||||
"--p2p.laddr", "tcp://127.0.0.1:%s" % arrange_port(EVMOS_PORT_CATEGORY_P2P, index),
|
||||
"--p2p.laddr", "tcp://127.0.0.1:%s" % arrange_port(ZGNODE_PORT_CATEGORY_P2P, index),
|
||||
# overwrite rpc port: 26657
|
||||
"--rpc.laddr", "tcp://127.0.0.1:%s" % arrange_port(EVMOS_PORT_CATEGORY_RPC, index),
|
||||
"--rpc.laddr", "tcp://127.0.0.1:%s" % arrange_port(ZGNODE_PORT_CATEGORY_RPC, index),
|
||||
# overwrite pprof port: 6060
|
||||
"--rpc.pprof_laddr", "127.0.0.1:%s" % arrange_port(EVMOS_PORT_CATEGORY_PPROF, index),
|
||||
"--rpc.pprof_laddr", "127.0.0.1:%s" % arrange_port(ZGNODE_PORT_CATEGORY_PPROF, index),
|
||||
]
|
||||
|
||||
for k, v in updated_config.items():
|
@ -13,10 +13,10 @@ GITHUB_DOWNLOAD_URL="https://api.github.com/repos/0glabs/0g-storage-node/release
|
||||
|
||||
CONFLUX_BINARY = "conflux.exe" if is_windows_platform() else "conflux"
|
||||
BSC_BINARY = "geth.exe" if is_windows_platform() else "geth"
|
||||
EVMOS_BINARY = "evmosd.exe" if is_windows_platform() else "evmosd"
|
||||
ZG_BINARY = "0gchaind.exe" if is_windows_platform() else "0gchaind"
|
||||
CLIENT_BINARY = "0g-storage-client.exe" if is_windows_platform() else "0g-storage-client"
|
||||
|
||||
EVMOS_GIT_REV = "2ef76f6c9bdd73cd15dabd7397492dbebc311f98"
|
||||
ZG_GIT_REV = "7bc25a060fab9c17bc9942b6747cd07a668d3042" # v0.1.0
|
||||
CLI_GIT_REV = "1d09ec4f0b9c27428b2357de46b66e8c231b74df"
|
||||
|
||||
@unique
|
||||
@ -60,13 +60,13 @@ def build_bsc(dir: str) -> BuildBinaryResult:
|
||||
|
||||
return result
|
||||
|
||||
def build_evmos(dir: str) -> BuildBinaryResult:
|
||||
# Download or build evmos binary if absent
|
||||
def build_zg(dir: str) -> BuildBinaryResult:
|
||||
# Download or build 0gchain binary if absent
|
||||
result = __download_from_github(
|
||||
dir=dir,
|
||||
binary_name=EVMOS_BINARY,
|
||||
binary_name=ZG_BINARY,
|
||||
github_url=GITHUB_DOWNLOAD_URL,
|
||||
asset_name=__asset_name(EVMOS_BINARY, zip=True),
|
||||
asset_name=__asset_name(ZG_BINARY, zip=True),
|
||||
)
|
||||
|
||||
if result == BuildBinaryResult.AlreadyExists or result == BuildBinaryResult.Installed:
|
||||
@ -74,10 +74,10 @@ def build_evmos(dir: str) -> BuildBinaryResult:
|
||||
|
||||
return __build_from_github(
|
||||
dir=dir,
|
||||
binary_name=EVMOS_BINARY,
|
||||
github_url="https://github.com/0glabs/0g-evmos.git",
|
||||
git_rev=EVMOS_GIT_REV,
|
||||
build_cmd="make install; cp $(go env GOPATH)/bin/evmosd .",
|
||||
binary_name=ZG_BINARY,
|
||||
github_url="https://github.com/0glabs/0g-chain.git",
|
||||
git_rev=ZG_GIT_REV,
|
||||
build_cmd="make install; cp $(go env GOPATH)/bin/0gchaind .",
|
||||
compiled_relative_path=[],
|
||||
)
|
||||
|
||||
|
@ -6,7 +6,7 @@ import sys
|
||||
|
||||
from concurrent.futures import ProcessPoolExecutor
|
||||
|
||||
from utility.build_binary import build_conflux, build_bsc, build_evmos, build_cli
|
||||
from utility.build_binary import build_conflux, build_bsc, build_zg, build_cli
|
||||
|
||||
DEFAULT_PORT_MIN = 11000
|
||||
DEFAULT_PORT_MAX = 65535
|
||||
@ -62,7 +62,7 @@ def run_all(test_dir: str, test_subdirs: list[str]=[], slow_tests: set[str]={},
|
||||
# Build blockchain binaries if absent
|
||||
build_conflux(tmp_dir)
|
||||
build_bsc(tmp_dir)
|
||||
build_evmos(tmp_dir)
|
||||
build_zg(tmp_dir)
|
||||
build_cli(tmp_dir)
|
||||
|
||||
start_time = time.time()
|
||||
|
Loading…
Reference in New Issue
Block a user