Skip to content

Commit

Permalink
Release v3.2 (#82)
Browse files Browse the repository at this point in the history
* Added polygon and mumbai networks support and configured setup script to handle automatic installation

* Updated installer and config validation to check gas balances during installation

* Few bug fixes

---------
Co-authored-by: Iosif Peterfi <[email protected]>
  • Loading branch information
iosifpeterfi committed Oct 18, 2023
1 parent d175f2a commit 825a40c
Show file tree
Hide file tree
Showing 8 changed files with 355 additions and 90 deletions.
47 changes: 40 additions & 7 deletions etny-node-installer.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,29 +16,62 @@ fi
choose_network() {
echo "#############################################"
echo "Please select the network:"
echo "1. bloxberg Mainnet"
echo "2. bloxberg Testnet"
echo "3. Quit"
echo "1. Automatic"
echo " The node will run only on one of the network where it has gas."
echo " The priority order of the networks are: Polygon Mainnet, bloxberg Mainnet"
echo "2. Polygon Mainnet (ECLD)"
echo "3. Polygon Testnet (tECLD)"
echo "4. bloxberg Mainnet (ETNY)"
echo "5. bloxberg Testnet (tETNY)"
echo "6. Quit"
echo "#############################################"

while true; do
read -p "Enter your choice: " choice
case $choice in
1) # Check Ubuntu kernel version
if [ "$os" != 'Ubuntu 20.04' ] && [ "$os" != 'Ubuntu 22.04' ]; then
echo "You need to upgrade your Ubuntu OS to at least version 20.04 or 22.04 to proceed with the Open Beta installation."
echo "You need to upgrade your Ubuntu OS to at least version 20.04 or 22.04 to proceed with the installation."
exit 1
fi
echo "You selected Automatic. This option will set polygon Mainnet if your wallet has MATIC, otherwise will set bloxberg Mainnet."
export NETWORK=AUTO
break
;;
2) # Check Ubuntu kernel version
if [ "$os" != 'Ubuntu 20.04' ] && [ "$os" != 'Ubuntu 22.04' ]; then
echo "You need to upgrade your Ubuntu OS to at least version 20.04 or 22.04 to proceed with the installation."
exit 1
fi
echo "You selected Open Beta."
export NETWORK=OPENBETA
export NETWORK=POLYGON
break
;;
2)
3) # Check Ubuntu kernel version
if [ "$os" != 'Ubuntu 20.04' ] && [ "$os" != 'Ubuntu 22.04' ]; then
echo "You need to upgrade your Ubuntu OS to at least version 20.04 or 22.04 to proceed with the installation."
exit 1
fi
echo "You selected Open Beta."
export NETWORK=MUMBAI
break
;;
4) # Check Ubuntu kernel version
if [ "$os" != 'Ubuntu 20.04' ] && [ "$os" != 'Ubuntu 22.04' ]; then
echo "You need to upgrade your Ubuntu OS to at least version 20.04 or 22.04 to proceed with the installation."
exit 1
fi
echo "You selected Open Beta."
export NETWORK=BLOXBERG
break
;;

5)
echo "You selected Testnet."
export NETWORK=TESTNET
break
;;
3)
6)
echo "Quitting..."
exit 0
;;
Expand Down
36 changes: 28 additions & 8 deletions node/.env
Original file line number Diff line number Diff line change
@@ -1,19 +1,39 @@
HTTP_PROVIDER=https://bloxberg.ethernity.cloud
CONTRACT_ADDRESS=0x549A6E06BB2084100148D50F51CF77a3436C3Ae7
BLOXBERG_IMAGE_REGISTRY=0x15D73a742529C3fb11f3FA32EF7f0CC3870ACA31
TESTNET_IMAGE_REGISTRY=0x15D73a742529C3fb11f3FA32EF7f0CC3870ACA31
POLYGON_IMAGE_REGISTRY=0x689f3806874d3c8A973f419a4eB24e6fBA7E830F
MUMBAI_IMAGE_REGISTRY=0xeFA33c3976f31961285Ae4f5D10188616C912728
BLOXBERG_CONTRACT_ADDRESS=0x549A6E06BB2084100148D50F51CF77a3436C3Ae7
TESTNET_CONTRACT_ADDRESS=0x02882F03097fE8cD31afbdFbB5D72a498B41112c
HEARTBEAT_CONTRACT_ADDRESS=0x5c190f7253930C473822AcDED40B2eF1936B4075
POLYGON_CONTRACT_ADDRESS=0x439945BE73fD86fcC172179021991E96Beff3Cc4
MUMBAI_CONTRACT_ADDRESS=0x1F0eb3359B91AC7F7d73FE509A2F36333531Ae72
BLOXBERG_HEARTBEAT_CONTRACT_ADDRESS=0x5c190f7253930C473822AcDED40B2eF1936B4075
TESTNET_HEARTBEAT_CONTRACT_ADDRESS=0x9B105aefF69Cd26050798d575db17ffc2eAC4E4d
POLYGON_HEARTBEAT_CONTRACT_ADDRESS=0x2baddae93fdb8fae61a60587b789f27bf407406f
MUMBAI_HEARTBEAT_CONTRACT_ADDRESS=0xa7E43a269E3307cf9d246b07df2B89CAA1b4C42F
BLOXBERG_RPC_URL=https://bloxberg.ethernity.cloud
TESTNET_RPC_URL=https://bloxberg.ethernity.cloud
POLYGON_RPC_URL=https://polygon-rpc.com
MUMBAI_RPC_URL=https://polygon-mumbai.blockpi.network/v1/rpc/public
BLOXBERG_CHAIN_ID=8995
TESTNET_CHAIN_ID=8995
POLYGON_CHAIN_ID=137
MUMBAI_CHAIN_ID=80001
BLOXBERG_GAS_PRICE_MEASURE=mwei
TESTNET_GAS_PRICE_MEASURE=mwei
POLYGON_GAS_PRICE_MEASURE=gwei
MUMBAI_GAS_PRICE_MEASURE=gwei
BLOXBERG_TASK_EXECUTION_PRICE_DEFAULT=3
TESTNET_TASK_EXECUTION_PRICE_DEFAULT=3
POLYGON_TASK_EXECUTION_PRICE_DEFAULT=3000000000000000000
MUMBAI_TASK_EXECUTION_PRICE_DEFAULT=3000000000000000000


IPFS_HOST=ipfs.ethernity.cloud
CLIENT_CONNECT_URL=/ip4/127.0.0.1/tcp/5001/http
CLIENT_BOOTSTRAP_URL=/ip4/%s/tcp/4001/ipfs/QmRBc1eBt4hpJQUqHqn6eA8ixQPD3LFcUDsn6coKBQtia5

CHAIN_ID=8995
GAS_LIMIT=1000000
GAS_PRICE_VALUE=1
GAS_PRICE_MEASURE=mwei
TESTNET_GAS_PRICE_MEASURE=mwei
GAS_PRICE_VALUE=2

LOG_LEVEL=info
CONTRACT_CALL_FREQUENCY=43200
TASK_EXECUTION_PRICE_DEFAULT=3
47 changes: 35 additions & 12 deletions node/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,38 +25,61 @@ def onImportError():
if os.path.exists('.env'):
load_dotenv('.env')

http_provider = os.environ.get('HTTP_PROVIDER')
ipfs_default = os.environ.get('IPFS_HOST')
client_connect_url_default = os.environ.get('CLIENT_CONNECT_URL')
client_bootstrap_url = os.environ.get('CLIENT_BOOTSTRAP_URL')
chain_id = int(os.environ.get('CHAIN_ID'))
gas_limit = int(os.environ.get('GAS_LIMIT'))
gas_price_value = os.environ.get('GAS_PRICE_VALUE')
task_price_default = os.environ.get('TASK_EXECUTION_PRICE_DEFAULT')

openbeta_gas_price_measure = os.environ.get('GAS_PRICE_MEASURE')
testnet_gas_price_measure = os.environ.get('TESTNET_GAS_PRICE_MEASURE')
bloxberg_rpc_url = os.environ.get('BLOXBERG_RPC_URL');
bloxberg_chain_id = os.environ.get('BLOXBERG_CHAIN_ID');
bloxberg_contract_address = os.environ.get('BLOXBERG_CONTRACT_ADDRESS');
bloxberg_heartbeat_address = os.environ.get('BLOXBERG_HEARTBEAT_CONTRACT_ADDRESS');
bloxberg_image_registry_address = os.environ.get('BLOXBERG_IMAGE_REGISTRY');
bloxberg_gas_price_measure = os.environ.get('BLOXBERG_GAS_PRICE_MEASURE')
bloxberg_task_execution_price_default = os.environ.get('BLOXBERG_TASK_EXECUTION_PRICE_DEFAULT');

openbeta_contract_address = os.environ.get('CONTRACT_ADDRESS');
testnet_rpc_url = os.environ.get('TESTNET_RPC_URL');
testnet_chain_id = os.environ.get('TESTNET_CHAIN_ID');
testnet_contract_address = os.environ.get('TESTNET_CONTRACT_ADDRESS');

openbeta_heartbeat_address = os.environ.get('HEARTBEAT_CONTRACT_ADDRESS');
testnet_heartbeat_address = os.environ.get('TESTNET_HEARTBEAT_CONTRACT_ADDRESS');

network_default = "OPENBETA"
testnet_image_registry_address = os.environ.get('TESTNET_IMAGE_REGISTRY');
testnet_gas_price_measure = os.environ.get('TESTNET_GAS_PRICE_MEASURE')
testnet_task_execution_price_default = os.environ.get('TESTNET_TASK_EXECUTION_PRICE_DEFAULT');

polygon_rpc_url = os.environ.get('POLYGON_RPC_URL');
polygon_chain_id = os.environ.get('POLYGON_CHAIN_ID');
polygon_contract_address = os.environ.get('POLYGON_CONTRACT_ADDRESS');
polygon_heartbeat_address = os.environ.get('POLYGON_HEARTBEAT_CONTRACT_ADDRESS');
polygon_image_registry_address = os.environ.get('POLYGON_IMAGE_REGISTRY');
polygon_gas_price_measure = os.environ.get('POLYGON_GAS_PRICE_MEASURE')
polygon_task_execution_price_default = os.environ.get('POLYGON_TASK_EXECUTION_PRICE_DEFAULT');

mumbai_rpc_url = os.environ.get('MUMBAI_RPC_URL');
mumbai_chain_id = os.environ.get('MUMBAI_CHAIN_ID');
mumbai_contract_address = os.environ.get('MUMBAI_CONTRACT_ADDRESS');
mumbai_heartbeat_address = os.environ.get('MUMBAI_HEARTBEAT_CONTRACT_ADDRESS');
mumbai_image_registry_address = os.environ.get('MUMBAI_IMAGE_REGISTRY');
mumbai_gas_price_measure = os.environ.get('MUMBAI_GAS_PRICE_MEASURE')
mumbai_task_execution_price_default = os.environ.get('MUMBAI_TASK_EXECUTION_PRICE_DEFAULT');


network_default = "BLOXBERG"
task_price_default = 3
network = None
heart_beat_address = None
gas_price_measure = None

image_registry_address = None

# constants
image_registry_address = '0x15D73a742529C3fb11f3FA32EF7f0CC3870ACA31'
abi_filepath = os.path.dirname(os.path.realpath(__file__)) + '/docker/pox.abi'
image_registry_abi_filepath = os.path.dirname(os.path.realpath(__file__)) + '/image_registry.abi'
heart_beat_abi_filepath = os.path.dirname(os.path.realpath(__file__)) + '/heart_beat.abi'
auto_update_file_path = os.path.dirname(os.path.realpath(__file__)) + '/auto_update.etny'
heart_beat_log_file_path = os.path.dirname(os.path.realpath(__file__)) + '/heartbeat.etny'
uuid_filepath = expanduser("~") + "/opt/etny/node/UUID"
network_cache_limit = 1
network_cache_filepath = os.path.dirname(os.path.realpath(__file__)) + '/network_cache.txt'
orders_cache_limit = 10000000
orders_cache_filepath = os.path.dirname(os.path.realpath(__file__)) + '/orders_cache.txt'
ipfs_cache_limit = 10000000
Expand Down
Loading

0 comments on commit 825a40c

Please sign in to comment.