From 685c2c4fd386cee4a7af2a1d8a8708858817d4ab Mon Sep 17 00:00:00 2001 From: Dincho Todorov Date: Fri, 25 Oct 2024 16:39:30 +0300 Subject: [PATCH 1/6] Use latest hyperchains version --- docker-compose.hyperchain.yml | 24 ++++++------ node/hyperchain/accounts.json | 13 +++---- node/hyperchain/aeternity.yaml | 53 ++++++++++++--------------- node/hyperchain/contracts.json | 67 +++++++++------------------------- 4 files changed, 60 insertions(+), 97 deletions(-) diff --git a/docker-compose.hyperchain.yml b/docker-compose.hyperchain.yml index c35d1c1..839133e 100644 --- a/docker-compose.hyperchain.yml +++ b/docker-compose.hyperchain.yml @@ -1,13 +1,14 @@ services: hc_mdw: - image: aeternity/ae_mdw + # image: aeternity/ae_mdw # platform: linux/x86_64 - # image: aeternity/ae_mdw:local - # build: - # context: https://github.com/aeternity/ae_mdw.git#v1.90.0 - # args: - # BUILDKIT_CONTEXT_KEEP_GIT_DIR: 1 - # NODE_VERSION: 7.2.0 + image: aeternity/ae_mdw:local + build: + context: https://github.com/aeternity/ae_mdw.git#master + args: + BUILDKIT_CONTEXT_KEEP_GIT_DIR: 1 + # NODE_VERSION: master + NODE_IMAGE: aeternity/aeternity:master hostname: hc_mdw networks: default: @@ -21,14 +22,15 @@ services: - "23014:23014" #Node's channels default websocket port volumes: - ${PWD}/node/hyperchain/aeternity.yaml:/home/aeternity/aeternity.yaml - - ${PWD}/node/hyperchain/accounts.json:/home/aeternity/node/local/rel/aeternity/data/aecore/.iris/hc_devnet_accounts.json - - ${PWD}/node/hyperchain/contracts.json:/home/aeternity/node/local/rel/aeternity/data/aecore/.iris/hc_devnet_contracts.json + - ${PWD}/node/hyperchain/accounts.json:/home/aeternity/node/local/rel/aeternity/data/aecore/.ceres/hc_devnet_accounts.json + - ${PWD}/node/hyperchain/contracts.json:/home/aeternity/node/local/rel/aeternity/data/aecore/.ceres/hc_devnet_contracts.json - ae_hyperchain_node_db:/home/aeternity/node/local/rel/aeternity/data/mnesia - ae_hyperchain_mdw_db:/home/aeternity/node/local/rel/aeternity/data/mdw.db environment: # workaround TELEMETRY_STATSD_HOST: localhost ENABLE_CONSOLE_LOG: "true" + # LOG_LEVEL: debug AETERNITY_CONFIG: /home/aeternity/aeternity.yaml PORT: 24000 WS_PORT: 24001 @@ -53,7 +55,7 @@ services: NODE_URL: http://hc_mdw:23013/ EPOCH_URL_DEBUG: http://hc_mdw:23113/ EXPLORER_URL: http://localhost:28020 - FAUCET_ACCOUNT_PRIV_KEY: 1327C9AD3650EF196DDF156E8F53FA01294C68D57A1DF5363AAB03EC314C8A270CF6CB1DCC6B8FC14DEF3F66B834D881CFBB5C120934903DCD859FC05675429E + FAUCET_ACCOUNT_PRIV_KEY: EBEAB332C627DC6F79E1D305ABFD448781C0101F3E1A5261B37EC4821702E4032757508127D7A9BA0AC449547085FAF3A18C96903800C0245F0A79949D930792 ports: - "28030:5000" depends_on: @@ -106,7 +108,7 @@ services: ui: platform: linux/x86_64 - image: aeternity/aepp-hyperchain:master + image: public.ecr.aws/aeternity/aepp-hyperchain:master environment: AE_FAUCET_URL: "http://localhost:28030/" AE_WALLET_URL: "http://localhost:28010/" diff --git a/node/hyperchain/accounts.json b/node/hyperchain/accounts.json index 84edcd1..0d885aa 100644 --- a/node/hyperchain/accounts.json +++ b/node/hyperchain/accounts.json @@ -1,8 +1,7 @@ { - "ak_2b8YNe9XoFDJtwaCAc6A4LLLj2sSUNqoJth66xRa87EQPGwxe7": 1000000000000000000000000000000000000000000000000, - "ak_6i9dyDyiXgJZ8CKvDWbPrdzBAHzjkCix26ZasbBaUJyK7yLmu": 3100000000000000000000000000, - "ak_2KAcA2Pp1nrR8Wkt3FtCkReGzAi8vJ9Snxa4PcmrthVx8AhPe8": 3100000000000000000000000000, - "ak_2Q9pmuxKdMmgdjcbQr3BonaucbYGjdeDkqMS2mewMKYgybJ2WJ": 3100000000000000000000000000, - "ak_2PgF7npGXkiAfJjhdkwWj4gnTi9UDwiRhP41Gru5Y9VGwe6bJS": 3100000000000000000000000000, - "ak_ovfcHoShxHfyKhvpwr4PWVhGmYdyhfM3DwAFztwgL886rhVS7": 3100000000000000000000000000 -} + "ak_U3S1Ear6WVsfbwckUrVjU3XKaKuPz8G1p3Tn7XJXVFSeTXUpj": 1000000000000000000000000000000000000000000000000, + "ak_JKv4gPruHmYn4c8T8a7L1w12tn6YfR4tSdXgmmALYgCZEyHLM": 3100000000000000000000000000, + "ak_35dj3xq5XToJX6sjKaE886BLR6kJicqfATgggXKy93brWbYQ7": 3100000000000000000000000000, + "ak_Vi71E49G2jQD3fUdmzHQjG3X5oA844oZKx7QHfDDTm8NhqUaM": 3100000000000000000000000000, + "ak_FFAuLh2W236SfVPg6YasUW9VwzmsshstdHQ1Nx5wGtWaZQQy2": 3100000000000000000000000000 +} \ No newline at end of file diff --git a/node/hyperchain/aeternity.yaml b/node/hyperchain/aeternity.yaml index c9176f4..82d48d3 100644 --- a/node/hyperchain/aeternity.yaml +++ b/node/hyperchain/aeternity.yaml @@ -1,59 +1,54 @@ chain: consensus: '0': - type: 'hyper_chain' config: + child_block_time: 3000 + child_epoch_length: 600 contract_owner: 'ak_11111111111111111111111111111115rHyByZ' election_contract: 'ct_t7ESuRFvGdYHwM6KJhKbSnFUJQhnB9aCFed1RWR89ShNDgwWA' - rewards_contract: 'ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ' - expected_key_block_rate: 30000 - lazy_leader_trigger_time: 5000 parent_chain: - confirmations: 0 - start_height: 10 - producing_commitments: true consensus: - fee: 100000000000000 - amount: 1 network_id: 'devnet' - spend_address: 'ak_2MGLPW2CHTDXJhqFJezqSwYSNwbZokSKkG7wSbGtVmeyjGfHtm' type: 'AE2AE' + parent_epoch_length: 10 polling: - fetch_interval: 250 + fetch_interval: 500 nodes: - - "http://mdw:3013" + - 'http://mdw:3013' + start_height: 10 + rewards_contract: 'ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ' stakers: - hyper_chain_account: - priv: 'f191dcb1fc96fadf6c08677e7a479288977db3feab9375dd39ff85db187d851ab8440e688d6737ae51741b668c97def0bf8eff7159f77b9fd1b5b4f2c614fce4' - pub: 'ak_2Q9pmuxKdMmgdjcbQr3BonaucbYGjdeDkqMS2mewMKYgybJ2WJ' - parent_chain_account: - priv: '91450EFE0516C24476390086426008147CFDEECFE6935FADA1C056C3A5BA73FBB1B577BCD327CB39E55E6C026BD6A74A1B35DE6C0650C4AE51EFAB759E415B66' - pub: 'ak_2MGLPW2CHTDXJhqFJezqSwYSNwbZokSKkG7wSbGtVmeyjGfHtm' + priv: '61784e636987c2e6a508a35f078105f1f380addbc770eb613f704dd8baa24f9704b8fe238454ddae58fc1a5133631b6736d45d988e9c70300907d567a3fa0fd7' + pub: 'ak_35dj3xq5XToJX6sjKaE886BLR6kJicqfATgggXKy93brWbYQ7' - hyper_chain_account: - priv: '38940358aefaeb3c1c5ffc9ec9ed7dd1408c1377ea43cf02b04d72697c96e3ccb72fa51be777030b9163feb913da04e0a444ae0300d4103fa7c5cdd24c76cf23' - pub: 'ak_2PgF7npGXkiAfJjhdkwWj4gnTi9UDwiRhP41Gru5Y9VGwe6bJS' - parent_chain_account: - priv: '91450EFE0516C24476390086426008147CFDEECFE6935FADA1C056C3A5BA73FBB1B577BCD327CB39E55E6C026BD6A74A1B35DE6C0650C4AE51EFAB759E415B66' - pub: 'ak_2MGLPW2CHTDXJhqFJezqSwYSNwbZokSKkG7wSbGtVmeyjGfHtm' + priv: '776e98b16b0f0165b78d3fbbd6938a71cef36479c232a4731b65bab38acdaaa3412fc33de634276ce3e226476308c36cfdfb906776233aec318e8d3bdf6256ab' + pub: 'ak_Vi71E49G2jQD3fUdmzHQjG3X5oA844oZKx7QHfDDTm8NhqUaM' - hyper_chain_account: - priv: 'd9f8966dc27065551c85381e72516769fdfd4c0f3496ffa350d6d8ddea9fabc86a8cb05e195a50004e495495bb9960acdae2ab466239e9b3761b0b722d968297' - pub: 'ak_ovfcHoShxHfyKhvpwr4PWVhGmYdyhfM3DwAFztwgL886rhVS7' - parent_chain_account: - priv: '91450EFE0516C24476390086426008147CFDEECFE6935FADA1C056C3A5BA73FBB1B577BCD327CB39E55E6C026BD6A74A1B35DE6C0650C4AE51EFAB759E415B66' - pub: 'ak_2MGLPW2CHTDXJhqFJezqSwYSNwbZokSKkG7wSbGtVmeyjGfHtm' + priv: 'ee8717e491a973e06730cfcd6d700d41f0c68ca36fd22ad0be7102513b3fca6c2057ee2969052490e3638e8ffb22bdaf5060189125481268611f046f951d4715' + pub: 'ak_FFAuLh2W236SfVPg6YasUW9VwzmsshstdHQ1Nx5wGtWaZQQy2' + type: 'hyperchain' db_direct_access: true hard_forks: - '5': 0 + '6': 0 persist: true + fork_management: network_id: 'hc_devnet' + http: endpoints: dry-run: true + +peers: [] include_default_peers: false + mining: autostart: true beneficiary: 'ak_2b8YNe9XoFDJtwaCAc6A4LLLj2sSUNqoJth66xRa87EQPGwxe7' -peers: [] + logging: level: warning + +metrics: + port: 0 diff --git a/node/hyperchain/contracts.json b/node/hyperchain/contracts.json index 082e219..d656c9f 100644 --- a/node/hyperchain/contracts.json +++ b/node/hyperchain/contracts.json @@ -2,31 +2,31 @@ "contracts": [ { "abi_version": 3, - "vm_version": 7, + "vm_version": 8, "amount": 0, "nonce": 1, "call_data": "cb_KxFE1kQfK58AoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqADl6ZnU=", - "code": "cb_+QZSRgOgdvvkpHbPWIa2rn6cPwLXiASgQgMnyVAe9+7684cw15TAuQYkuQQf/g3YEMwENwA3AAIDEbTVYSIPAm+CJs8BAz/+GNwlLQA3ADcAAgMRtNVhIg8Cb4Imz1kCAi8oiAIHDAYBAz8aCgiIDAMrEa+UJjw/KygIAgIDEcPyLzwPAm+CJs8uKoiIAgEDP/4k0towADcBdzcAAgMRtNVhIg8Cb4ImzxoGigABAz/+MeNBoQI3ATcCRwAHNwAoHAIAKBwAAGUAKBwCABUKhoYBAz/+NyQ2ewA3AQcHDAEABAMRwTkOgP49HoloADcANwlHAAcHZwcnNwJHAAd3d3dnRwAHBwIDEbTVYSIPAm+CJs8MAoIMAoQMAoYMAogMAooMAowMAo4MApAMApInDBIA/kTWRB8ANwJHAAc3ABoOiC8AGg6QLwAaBoIAGgaEAhoOhgAaDopfGg6MXxoOjl8aDpIAAQM//kZaKyYANwAHAgMRtNVhIg8Cb4ImzwECkv5NNUJiADcBRwAHAgMRtNVhIg8Cb4ImzyzYkAAAAP5a2zjeBDcBRwAHAgMRtNVhIg8Cb4ImzwsAHzAABwwG+wNFU3Rha2UgbXVzdCBiZSA+IDALAAIDEVsUB7kPAgYMAgYMAQACAxHUzSn4DwJvgibPFCqSkgYBAgb+WxQHuQI3AQcHIDiSAAcMBhoKBJIMAQACAxG1e2kQFQAWJAAEFwAAAQEA/nIVIDgANwF3NwACAxG01WEiDwJvgibPGgaMAAEDP/6CNkkBADcCRwAHBwIDEbTVYSIPAm+CJs8aCgKQLNoEAgAAIhgEAgcMBvsDRU5vdCBlbm91Z2ggc2hhcmVzDAECAgMR/q3ZFw8CCiA4hAAHDBwGAwwaCg6EWQAUIhAODAEADAIKJwwEDwISLyiIEAcMGAwDAwYDEA8CGDQoEhgtKoiIEBQqhoYKDAM/BgMSDwJvgibPFRoQBAIgOBAABwwaFRqSkgItmpCQABAMAz8GAxYPAm+CJs8BAgorKIgQBgMQFRqSkgIuGpCQAAwDPwYDFmUJAAoMAz8GAxL+r5QmPAI3Avf39wwBAgQDETHjQaH+sy3z3AA3AXc3AAIDEbTVYSIPAm+CJs8aBo4AAQM//rSMFoQANwFHAAcCAxG01WEiDwJvgibPGgoCkCzYAgAABAMR/q3ZF/601WEiAjcANwBVACAgggcMBPsDgU9ubHkgYWxsb3dlZCB0aHJvdWdoIE1haW5TdGFraW5nAQM//rV7aRACNwAHUwAVIIYA/sE5DoACNwEHBxoKAJICAxG1e2kQFiQAABcAAP7D8i88AjcCJ+cANwJ39zcAMwQABwwGNQQAKBwCAigcAAICAA8Cb4ImzzYFAAAGAwABAz/+1M0p+AI3AkcABzcALNoSkAAAFBgSAi0akJAAAQM//v6t2RcCNwEHBwwCkgIDEbV7aRAWBAAXAAC5AfwvFhEN2BDMGXByb2ZpdBEY3CUtSWRpc3RyaWJ1dGVfdW5zdGFrZREk0towIXNldF9uYW1lETHjQaGNLlN0YWtpbmdWYWxpZGF0b3IuZGlzdHJpYnV0ZV9wYXlvdXQRNyQ2e1Vlc3RpbWF0ZV9zdGFrZV9zaGFyZXMRPR6JaCVnZXRfc3RhdGURRNZEHxFpbml0EUZaKyYpYWxsX3NoYXJlcxFNNUJiGXNoYXJlcxFa2zjeFXN0YWtlEVsUB7mJLlN0YWtpbmdWYWxpZGF0b3IuY2FsY3VsYXRlX3NoYXJlcxFyFSA4PXNldF9kZXNjcmlwdGlvbhGCNkkBHXVuc3Rha2URr5QmPBkuXjEzMjERsy3z3DlzZXRfYXZhdGFyX3VybBG0jBaEHWJhbGFuY2URtNVhIn0uU3Rha2luZ1ZhbGlkYXRvci5hc3NlcnRfY2FsbGVyEbV7aRCJLlN0YWtpbmdWYWxpZGF0b3IuY29udHJhY3RfYmFsYW5jZRHBOQ6AhS5TdGFraW5nVmFsaWRhdG9yLmVzdGltYXRlX3NoYXJlcxHD8i88NS5MaXN0LmZvcmVhY2gR1M0p+HEuU3Rha2luZ1ZhbGlkYXRvci5hZGRfc2hhcmVzEf6t2Rd5LlN0YWtpbmdWYWxpZGF0b3Iuc2hhcmVzX3RvX2Flgi8AhTcuMi4xAJykMFs=", + "code": "cb_+QZvRgOgdvvkpHbPWIa2rn6cPwLXiASgQgMnyVAe9+7684cw15TAuQZBuQQf/g3YEMwENwA3AAIDEbTVYSIPAm+CJs8BAz/+GNwlLQA3ADcAAgMRtNVhIg8Cb4Imz1kCAi8oiAIHDAYBAz8aCgiIDAMrEYfv6ew/KygIAgIDEcPyLzwPAm+CJs8uKoiIAgEDP/4k0towADcBdzcAAgMRtNVhIg8Cb4ImzxoGigABAz/+MeNBoQI3ATcCRwAHNwAoHAIAKBwAAGUAKBwCABUKhoYBAz/+NyQ2ewA3AQcHDAEABAMRwTkOgP49HoloADcANwlHAAcHZwcnNwJHAAd3d3dnRwAHBwIDEbTVYSIPAm+CJs8MAoIMAoQMAoYMAogMAooMAowMAo4MApAMApInDBIA/kTWRB8ANwJHAAc3ABoOiC8AGg6QLwAaBoIAGgaEAhoOhgAaDopfGg6MXxoOjl8aDpIAAQM//kZaKyYANwAHAgMRtNVhIg8Cb4ImzwECkv5NNUJiADcBRwAHAgMRtNVhIg8Cb4ImzyzYkAAAAP5a2zjeBDcBRwAHAgMRtNVhIg8Cb4ImzwsAHzAABwwG+wNFU3Rha2UgbXVzdCBiZSA+IDALAAIDEVsUB7kPAgYMAgYMAQACAxHUzSn4DwJvgibPFCqSkgYBAgb+WxQHuQI3AQcHIDiSAAcMBhoKBJIMAQACAxG1e2kQFQAWJAAEFwAAAQEA/nIVIDgANwF3NwACAxG01WEiDwJvgibPGgaMAAEDP/6CNkkBADcCRwAHBwIDEbTVYSIPAm+CJs8aCgKQLNoEAgAAIhgEAgcMBvsDRU5vdCBlbm91Z2ggc2hhcmVzDAECAgMR/q3ZFw8CCiA4hAAHDBwGAwwaCg6EWQAUIhAODAEADAIKJwwEDwISLyiIEAcMGAwDAwYDEA8CGDQoEhgtKoiIEBQqhoYKDAM/BgMSDwJvgibPFRoQBAIgOBAABwwaFRqSkgItmpCQABAMAz8GAxYPAm+CJs8BAgorKIgQBgMQFRqSkgIuGpCQAAwDPwYDFmUJAAoMAz8GAxL+h+/p7AI3Avf39wwBAgQDETHjQaH+sy3z3AA3AXc3AAIDEbTVYSIPAm+CJs8aBo4AAQM//rSMFoQANwFHAAcCAxG01WEiDwJvgibPGgoCkCzYAgAABAMR/q3ZF/601WEiAjcANwBVACAgggcMBPsDgU9ubHkgYWxsb3dlZCB0aHJvdWdoIE1haW5TdGFraW5nAQM//rV7aRACNwAHUwAVIIYA/sE5DoACNwEHBxoKAJICAxG1e2kQFiQAABcAAP7D8i88AjcCJ+cANwJ39zcAMwQABwwGNQQAKBwCAigcAAICAA8Cb4ImzzYFAAAGAwABAz/+1M0p+AI3AkcABzcALNoSkAAAFBgSAi0akJAAAQM//v6t2RcCNwEHBwwCkgIDEbV7aRAWBAAXAAC5AhkvFhEN2BDMGXByb2ZpdBEY3CUtSWRpc3RyaWJ1dGVfdW5zdGFrZREk0towIXNldF9uYW1lETHjQaGNLlN0YWtpbmdWYWxpZGF0b3IuZGlzdHJpYnV0ZV9wYXlvdXQRNyQ2e1Vlc3RpbWF0ZV9zdGFrZV9zaGFyZXMRPR6JaCVnZXRfc3RhdGURRNZEHxFpbml0EUZaKyYpYWxsX3NoYXJlcxFNNUJiGXNoYXJlcxFa2zjeFXN0YWtlEVsUB7mJLlN0YWtpbmdWYWxpZGF0b3IuY2FsY3VsYXRlX3NoYXJlcxFyFSA4PXNldF9kZXNjcmlwdGlvbhGCNkkBHXVuc3Rha2URh+/p7I0uZGlzdHJpYnV0ZV91bnN0YWtlLiVsYW1iZGEuNTAuMzEuMBGzLfPcOXNldF9hdmF0YXJfdXJsEbSMFoQdYmFsYW5jZRG01WEifS5TdGFraW5nVmFsaWRhdG9yLmFzc2VydF9jYWxsZXIRtXtpEIkuU3Rha2luZ1ZhbGlkYXRvci5jb250cmFjdF9iYWxhbmNlEcE5DoCFLlN0YWtpbmdWYWxpZGF0b3IuZXN0aW1hdGVfc2hhcmVzEcPyLzw1Lkxpc3QuZm9yZWFjaBHUzSn4cS5TdGFraW5nVmFsaWRhdG9yLmFkZF9zaGFyZXMR/q3ZF3kuU3Rha2luZ1ZhbGlkYXRvci5zaGFyZXNfdG9fYWWCLwCFOC4wLjAAaMSvuA==", "owner_pubkey": "ak_11111111111111111111111111111115rHyByZ", "pubkey": "ct_KJgjAXMtRF68AbT5A2aC9fTk8PA4WFv26cFSY27fXs6FtYQHK" }, { "abi_version": 3, - "vm_version": 7, + "vm_version": 8, "amount": 0, "nonce": 2, "call_data": "cb_KxFE1kQfe58CoCmQRGuzLDSzySG/5UcFOdoQ1iYy6a6fhJXVahjufrESb4rTwhvOzO2g///AQm+IDeC2s6dj/8AAAAAY4w8Y", - "code": "cb_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BSufap0uTWFpblN0YWtpbmcuYXNzZXJ0X3ZhbGlkYXRvcl9taW5fc3Rha2URDaZWqhkuXjQyMTMRD8HMmkVvbmxpbmVfdmFsaWRhdG9ycxETd9gGOS5MaXN0LnJldmVyc2VfERniRPNpLk1haW5TdGFraW5nLmdldF92YWxpZGF0b3IRHdapihkuXjQyMTcRJVq94hkuXjQyMTYRJrStEDUuTGlzdC5yZXZlcnNlESwmBx51Lk1haW5TdGFraW5nLnZhbGlkYXRvcl9idWNrZXQRMuExUElzZXRfdmFsaWRhdG9yX25hbWUROI4Eb0Vzb3J0ZWRfdmFsaWRhdG9ycxE6XKytiS5NYWluU3Rha2luZy5tYXliZV9zZXRfc3Rha2VfbGltaXQRPR6JaCVnZXRfc3RhdGURQkMxJYkuTWFpblN0YWtpbmcuY2FsY3VsYXRlX3N0YWtlX2xpbWl0EUMMg5iFLk1haW5TdGFraW5nLmFzc2VydF9wcm90b2NvbF9jYWxsEUMj14Flc2V0X3ZhbGlkYXRvcl9kZXNjcmlwdGlvbhFE1kQfEWluaXQRRuSyzSUuTGlzdC5hc2MRTgdf530uTWFpblN0YWtpbmcuYXNzZXJ0X3N0YWtlX2xpbWl0EVX4pRBFLkxpc3QubWVyZ2VfcGFpcnMRWts43hVzdGFrZRFodtbfWS5MaXN0SW50ZXJuYWwuZmxhdF9tYXARacakgZkuTWFpblN0YWtpbmcuZGlzdHJpYnV0ZV91bnN0YWtlX3BheW91dBFuGm1JNW5ld192YWxpZGF0b3IRc7iFpYUuTWFpblN0YWtpbmcuZ2V0X3ZhbGlkYXRvcl9zdGF0ZV8RdGknRRkuXjQyMTQRdwI1JJkuTWFpblN0YWtpbmcuYXNzZXJ0X2FsbG93ZWRfdG9fdW5zdGFrZRGCNkkBHXVuc3Rha2URg/kneZUuTWFpblN0YWtpbmcuYXNzZXJ0X21pbl9wZXJjZW50X3N0YWtlEYlmdIU1c3Rha2luZ19wb3dlchGJ3Aw/US5MaXN0Lm1vbm90b25pY19zdWJzEYsWMYyRLk1haW5TdGFraW5nLmFzc2VydF9zdGFrZXJfbWluX3N0YWtlEYzj+PORLk1haW5TdGFraW5nLmRpc3RyaWJ1dGVfc3Rha2VfcGF5b3V0EY3sy989Lkxpc3QubWVyZ2VfYWxsEZEvuGBZZ2V0X3ZhbGlkYXRvcl9jb250cmFjdBGUOhoVGS5eNDIxOBGXKJ9hSW9mZmxpbmVfdmFsaWRhdG9ycxGlGrHCGXJld2FyZBGyte7rGS5eNDIxNRG1XNR9pS5NYWluU3Rha2luZy5hc3NlcnRfYWxsb3dlZF90b19zZXRfb25saW5lEbfuIzBhc2V0X3ZhbGlkYXRvcl9hdmF0YXJfdXJsEcPyLzw1Lkxpc3QuZm9yZWFjaBHWYaXokS5NYWluU3Rha2luZy5hc3NlcnRfdWtub3duX3ZhbGlkYXRvchHZ59fVTWdldF92YWxpZGF0b3Jfc3RhdGUR23d2ok1pc192YWxpZGF0b3Jfb25saW5lEdv4HGwtLkxpc3QubWVyZ2UR47Nxw2kuTWFpblN0YWtpbmcudmFsaWRhdG9yX2NtcBHlveq2LXNldF9vZmZsaW5lEeYdbuGFLk1haW5TdGFraW5nLm1hcF92YWxpZGF0b3JzX3N0YXRlEeZmJ0kpc2V0X29ubGluZRHu4AmIKS5MaXN0LmRlc2MR8P49fClwb3N0X2VsZWN0EfddwjxxLk1haW5TdGFraW5nLnNldF9zdGFrZV9saW1pdBH4RPxfMWlzX3ZhbGlkYXRvchH8CA0dKS5MaXN0LnNvcnQR/bFcmxkuXjQyMTIR/vYsrC10b3RhbF9zdGFrZYIvAIU3LjIuMQB5Etpw", + "code": "cb_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AX6qB40uc29ydGVkX3ZhbGlkYXRvcnMuJWxhbWJkYS4yNzQuMTUuMBEFK59qnS5NYWluU3Rha2luZy5hc3NlcnRfdmFsaWRhdG9yX21pbl9zdGFrZREPwcyaRW9ubGluZV92YWxpZGF0b3JzERN32AY5Lkxpc3QucmV2ZXJzZV8RGeJE82kuTWFpblN0YWtpbmcuZ2V0X3ZhbGlkYXRvchEmtK0QNS5MaXN0LnJldmVyc2URLCYHHnUuTWFpblN0YWtpbmcudmFsaWRhdG9yX2J1Y2tldBEy4TFQSXNldF92YWxpZGF0b3JfbmFtZRE4jgRvRXNvcnRlZF92YWxpZGF0b3JzETpcrK2JLk1haW5TdGFraW5nLm1heWJlX3NldF9zdGFrZV9saW1pdBE9HoloJWdldF9zdGF0ZRFCQzEliS5NYWluU3Rha2luZy5jYWxjdWxhdGVfc3Rha2VfbGltaXQRQwyDmIUuTWFpblN0YWtpbmcuYXNzZXJ0X3Byb3RvY29sX2NhbGwRQyPXgWVzZXRfdmFsaWRhdG9yX2Rlc2NyaXB0aW9uEUTWRB8RaW5pdBFG5LLNJS5MaXN0LmFzYxFOB1/nfS5NYWluU3Rha2luZy5hc3NlcnRfc3Rha2VfbGltaXQRVfilEEUuTGlzdC5tZXJnZV9wYWlycxFa2zjeFXN0YWtlEWh21t9ZLkxpc3RJbnRlcm5hbC5mbGF0X21hcBFpxqSBmS5NYWluU3Rha2luZy5kaXN0cmlidXRlX3Vuc3Rha2VfcGF5b3V0EW4abUk1bmV3X3ZhbGlkYXRvchFuxRM7cS5wb3N0X2VsZWN0LiVsYW1iZGEuMjU1LjMxLjERczO9M40uc29ydGVkX3ZhbGlkYXRvcnMuJWxhbWJkYS4yNzQuMzAuMRFzuIWlhS5NYWluU3Rha2luZy5nZXRfdmFsaWRhdG9yX3N0YXRlXxF3AjUkmS5NYWluU3Rha2luZy5hc3NlcnRfYWxsb3dlZF90b191bnN0YWtlEX4A3Q3FLk1haW5TdGFraW5nLm1hcF92YWxpZGF0b3JzX3N0YXRlLiVsYW1iZGEuMzM4LjUuMBGCNkkBHXVuc3Rha2URg/kneZUuTWFpblN0YWtpbmcuYXNzZXJ0X21pbl9wZXJjZW50X3N0YWtlEYTuAoaNLm9mZmxpbmVfdmFsaWRhdG9ycy4lbGFtYmRhLjExNC41LjARiWZ0hTVzdGFraW5nX3Bvd2VyEYncDD9RLkxpc3QubW9ub3RvbmljX3N1YnMRimgfHHEucG9zdF9lbGVjdC4lbGFtYmRhLjI0OC4zMS4wEYsWMYyRLk1haW5TdGFraW5nLmFzc2VydF9zdGFrZXJfbWluX3N0YWtlEYzj+PORLk1haW5TdGFraW5nLmRpc3RyaWJ1dGVfc3Rha2VfcGF5b3V0EY3sy989Lkxpc3QubWVyZ2VfYWxsEZEvuGBZZ2V0X3ZhbGlkYXRvcl9jb250cmFjdBGXKJ9hSW9mZmxpbmVfdmFsaWRhdG9ycxGlGrHCGXJld2FyZBG1XNR9pS5NYWluU3Rha2luZy5hc3NlcnRfYWxsb3dlZF90b19zZXRfb25saW5lEbfuIzBhc2V0X3ZhbGlkYXRvcl9hdmF0YXJfdXJsEcGV6mWJLm9ubGluZV92YWxpZGF0b3JzLiVsYW1iZGEuMTEwLjUuMBHD8i88NS5MaXN0LmZvcmVhY2gR1mGl6JEuTWFpblN0YWtpbmcuYXNzZXJ0X3Vrbm93bl92YWxpZGF0b3IR2efX1U1nZXRfdmFsaWRhdG9yX3N0YXRlEdt3dqJNaXNfdmFsaWRhdG9yX29ubGluZRHb+BxsLS5MaXN0Lm1lcmdlEeOzccNpLk1haW5TdGFraW5nLnZhbGlkYXRvcl9jbXAR5b3qti1zZXRfb2ZmbGluZRHmHW7hhS5NYWluU3Rha2luZy5tYXBfdmFsaWRhdG9yc19zdGF0ZRHmZidJKXNldF9vbmxpbmUR7uAJiCkuTGlzdC5kZXNjEfD+PXwpcG9zdF9lbGVjdBH3XcI8cS5NYWluU3Rha2luZy5zZXRfc3Rha2VfbGltaXQR+ET8XzFpc192YWxpZGF0b3IR/AgNHSkuTGlzdC5zb3J0Ef72LKwtdG90YWxfc3Rha2WCLwCFOC4wLjAAEIl4fw==", "owner_pubkey": "ak_11111111111111111111111111111115rHyByZ", "pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ" }, { "abi_version": 3, - "vm_version": 7, + "vm_version": 8, "amount": 0, "nonce": 3, - "call_data": "cb_KxFE1kQfK58CoCwa1XR0IGCPLLSke5feeoiyjmk1qS7sGM/WHuFMzrFoKUhDX0VOVFJPUFki6CEa", - "code": "cb_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", + "call_data": "cb_KxFE1kQfG58CoCwa1XR0IGCPLLSke5feeoiyjmk1qS7sGM/WHuFMzrFo+KLGvw==", + "code": "cb_+QiqRgOgS8PANNT53JAwH62W+FHOZTx+ieRJGCbPZuqO17VaCEXAuQh8uQZX/hN32AYCNwIn5wAn5wAn5wAzBAAHDAQ1BgAANgUAADQZAgACBgMAAQEC/hTIl0IANwNHAJeCBzcAAgMR59HQwA8Cb4ImzxoKAogaCgSKKyoGBIhZACgsAgYoLAAGFAASIAAHDAb7A01UaGlzIGlzIG5vdCB0aGUgZW5kGgoMihQ4AgQrCg4MGgoQihQ4AgYrChIQKCwCDhQSFAQprhYCEhQaDhgvABoKGooUOAIEKwocGgwBAkT+HiMAAgICGgogihoKIoorKCICDAICFDgCAisIIBQ4AgIprAQcHhQ4AgQMAhYUOAIGDAMADAKCAwD8ETiOBG83ACc3AkcAB0T8IwACAgIMA6+CAAEAPwwCFCgsABYUIBQCAxE/ly6aFDgCCC0IGC0ALQAtAC0CihQ6iAICGgaEAAEDP/4be8/7AjcC9/f3DAECBAMRoJ8egP4mtK0QAjcBJ+cAJ+cADAMDDAEABAMRE3fYBv4nB+ufADcBRwA3AAIDEefR0MAPAm+CJs8aBoQAAQM//jF5SM0CNwP39/f3FBQCBAD+PR6JaAA3ADcFRwJHAAcHZwc3BAcHhwI3ADcBl4KHAjcANwEnNwJHAAcMAoIMAoQMAoYMAogMAoonDAoA/j+XLpoCNwQHB4cCNwA3AZeChwI3ADcBJzcCRwAHNwQHB4cCNwA3AZeChwI3ADcBJzcCRwAHDAEADAECDAEEDAEGJwwIAP5E1kQfADcBRwI3AF4ChBoOii8AGgaCABoOhgAaDogAAQM//kfg2YsANwEHNwACAxHn0dDADwJvgibPWQAgMAAHDAb7Az1Pbmx5IGluIGdlbmVzaXMaDgwvAAwDr4IAAQA/DAOvggABAD8MAwIMAwACAxE/ly6aDAMADAMADAKCAwD8ETiOBG83ACc3AkcAB0T8IwACAgIMA6+CAAEAPwwBAAwDAgIDET+XLpoMAwIMAwAMAoIDAPwROI4EbzcAJzcCRwAHRPwjAAICAgwDr4IAAQA/DAEAFDQAAgIDET+XLpoMAwQMAwAMAoIDAPwROI4EbzcAJzcCRwAHRPwjAAICAgwDr4IAAQA/DAEAFhwEABACAxE/ly6aDAMGDAMADAKCAwD8ETiOBG83ACc3AkcAB0T8IwACAgIMA6+CAAEAPwwBABYcBgAQAgMRP5cumi04DAgtAC0ALQAtAooaDogCAQM//l534SUCNwM3Anf35wAn5wHnADMEBAcMBjUEBAwBAigcAgAoHAAAAgAPAQI2BQQEBgMAAQEC/mPUmhQCNwWXQDcCd/cnNwLnAAcHJ+cAJ+cAIDQGAAcMCgYDBB0GAAAMAQQMAgAoHAICKBwAAgIAAgMRuX9Hdw8CAhoJAAATAQY0GQgCCAYDAAwBCAQDESa0rRD+fPWXbgA3AAcaCgCKGgoCiCsoAAIoDAIA/oVuPUkANwEHNwQHB4cCNwA3AZeChwI3ADcBJzcCRwAHGgoAiBU4AAIiBAAHDAoMA38GAwQHDAj7A0lFcG9jaCBub3QgaW4gc2NvcGUrGIoAABoKBIgUOAQEIQQABgME/qACi3gCNwI3Anf3J+cAJ+cBMwQCBwwINgQCDAEAAgMRoAKLeDUEAigcAgAoHAAAAgA0AAABAwP+oJ8egAI3ATcC5wDnAecBKBwCAAD+pDzMVAA3AEcAAQKE/rNa1RIANwAHAQKI/rl/R3cCNwIHJzcC5wAH5wAzBAIHDAwGAwQ1BgACKC4EAAAoLgYCAB4kAAYHDBAzBAIHDA4GAwo1BgoCKC4QAgoVJQAAEDYFAgIGAwD7A01JbmNvbXBsZXRlIHBhdHRlcm5z+wNNSW5jb21wbGV0ZSBwYXR0ZXJucwECBP69sgdGAjcC9/f3PwQCGBAAAP7n0dDAAjcANwB9AFUAIAAHDAT7A3lNdXN0IGJlIGNhbGxlZCBieSB0aGUgcHJvdG9jb2wBAz/+7dkhZQA3AEcCAQKC/vGO+GsANwOXgic3AkcABwcnRwAMAQIMAysRG3vP+z8CAxGgAot4DAMADAMrETF5SM0/AgMRXnfhJQ8CAAwDAwwBBAwBAgwDEb2yB0YMAgAnDAQdBAAEAxFj1JoU/v2DqUcANwA3Agc3BAcHhwI3ADcBl4KHAjcANwEnNwJHAAcaCgKKGgoEiAwCiCsoAgQnDAQAuQIcLxgRE3fYBjkuTGlzdC5yZXZlcnNlXxEUyJdCIXN0ZXBfZW9lERt7z/uNLnZhbGlkYXRvcl9zY2hlZHVsZS4lbGFtYmRhLjk2LjUxLjERJrStEDUuTGlzdC5yZXZlcnNlEScH658Rc3RlcBExeUjNjS52YWxpZGF0b3Jfc2NoZWR1bGUuJWxhbWJkYS45Ni4zNS4wET0eiWglZ2V0X3N0YXRlET+XLpplLkhDRWxlY3Rpb24ubWtfZXBvY2hfaW5mbxFE1kQfEWluaXQRR+DZiy1pbml0X2Vwb2NocxFed+ElLS5MaXN0LmZvbGRsEWPUmhR9LkhDRWxlY3Rpb24udmFsaWRhdG9yX3NjaGVkdWxlXxF89ZduMWVwb2NoX2xlbmd0aBGFbj1JQWVwb2NoX2luZm9fZXBvY2gRoAKLeCUuTGlzdC5tYXARoJ8egCUuUGFpci5zbmQRpDzMVBlsZWFkZXIRs1rVEhVlcG9jaBG5f0d3aS5IQ0VsZWN0aW9uLnBpY2tfdmFsaWRhdG9yEb2yB0aNLnZhbGlkYXRvcl9zY2hlZHVsZS4lbGFtYmRhLjk4LjUxLjIR59HQwIEuSENFbGVjdGlvbi5hc3NlcnRfcHJvdG9jb2xfY2FsbBHt2SFlQXN0YWtpbmdfY29udHJhY3QR8Y74a0l2YWxpZGF0b3Jfc2NoZWR1bGUR/YOpRyllcG9jaF9pbmZvgi8AhTguMC4wANhxiwE=", "owner_pubkey": "ak_11111111111111111111111111111115rHyByZ", "pubkey": "ct_t7ESuRFvGdYHwM6KJhKbSnFUJQhnB9aCFed1RWR89ShNDgwWA" } @@ -36,7 +36,7 @@ "abi_version": 3, "amount": 1000000000000000000000000, "call_data": "cb_KxFuGm1JPyDWziI=", - "caller": "ak_2Q9pmuxKdMmgdjcbQr3BonaucbYGjdeDkqMS2mewMKYgybJ2WJ", + "caller": "ak_35dj3xq5XToJX6sjKaE886BLR6kJicqfATgggXKy93brWbYQ7", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 1, "fee": 1000000000000000, @@ -47,7 +47,7 @@ "abi_version": 3, "amount": 0, "call_data": "cb_KxHmZidJP7W4jFY=", - "caller": "ak_2Q9pmuxKdMmgdjcbQr3BonaucbYGjdeDkqMS2mewMKYgybJ2WJ", + "caller": "ak_35dj3xq5XToJX6sjKaE886BLR6kJicqfATgggXKy93brWbYQ7", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 2, "fee": 1000000000000000, @@ -58,7 +58,7 @@ "abi_version": 3, "amount": 0, "call_data": "cb_KxEy4TFQGzlIb3JyaWJsZSBTcXVpZMbmDtk=", - "caller": "ak_2Q9pmuxKdMmgdjcbQr3BonaucbYGjdeDkqMS2mewMKYgybJ2WJ", + "caller": "ak_35dj3xq5XToJX6sjKaE886BLR6kJicqfATgggXKy93brWbYQ7", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 3, "fee": 1000000000000000, @@ -69,7 +69,7 @@ "abi_version": 3, "amount": 1000000000000000000000000, "call_data": "cb_KxFuGm1JPyDWziI=", - "caller": "ak_2PgF7npGXkiAfJjhdkwWj4gnTi9UDwiRhP41Gru5Y9VGwe6bJS", + "caller": "ak_Vi71E49G2jQD3fUdmzHQjG3X5oA844oZKx7QHfDDTm8NhqUaM", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 1, "fee": 1000000000000000, @@ -80,7 +80,7 @@ "abi_version": 3, "amount": 0, "call_data": "cb_KxHmZidJP7W4jFY=", - "caller": "ak_2PgF7npGXkiAfJjhdkwWj4gnTi9UDwiRhP41Gru5Y9VGwe6bJS", + "caller": "ak_Vi71E49G2jQD3fUdmzHQjG3X5oA844oZKx7QHfDDTm8NhqUaM", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 2, "fee": 1000000000000000, @@ -91,7 +91,7 @@ "abi_version": 3, "amount": 0, "call_data": "cb_KxEy4TFQG0FUZXJyaWJsZSBPc3RyaWNoUPGRWQ==", - "caller": "ak_2PgF7npGXkiAfJjhdkwWj4gnTi9UDwiRhP41Gru5Y9VGwe6bJS", + "caller": "ak_Vi71E49G2jQD3fUdmzHQjG3X5oA844oZKx7QHfDDTm8NhqUaM", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 3, "fee": 1000000000000000, @@ -102,7 +102,7 @@ "abi_version": 3, "amount": 1000000000000000000000000, "call_data": "cb_KxFuGm1JPyDWziI=", - "caller": "ak_ovfcHoShxHfyKhvpwr4PWVhGmYdyhfM3DwAFztwgL886rhVS7", + "caller": "ak_FFAuLh2W236SfVPg6YasUW9VwzmsshstdHQ1Nx5wGtWaZQQy2", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 1, "fee": 1000000000000000, @@ -113,7 +113,7 @@ "abi_version": 3, "amount": 0, "call_data": "cb_KxHmZidJP7W4jFY=", - "caller": "ak_ovfcHoShxHfyKhvpwr4PWVhGmYdyhfM3DwAFztwgL886rhVS7", + "caller": "ak_FFAuLh2W236SfVPg6YasUW9VwzmsshstdHQ1Nx5wGtWaZQQy2", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 2, "fee": 1000000000000000, @@ -124,40 +124,7 @@ "abi_version": 3, "amount": 0, "call_data": "cb_KxEy4TFQG1lVbmludGVyZXN0ZWQgUm91bmR3b3Jt+lLBnw==", - "caller": "ak_ovfcHoShxHfyKhvpwr4PWVhGmYdyhfM3DwAFztwgL886rhVS7", - "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", - "nonce": 3, - "fee": 1000000000000000, - "gas": 1000000, - "gas_price": 1000000000 - }, - { - "abi_version": 3, - "amount": 1000000000000000000000000, - "call_data": "cb_KxFuGm1JPyDWziI=", - "caller": "ak_2KAcA2Pp1nrR8Wkt3FtCkReGzAi8vJ9Snxa4PcmrthVx8AhPe8", - "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", - "nonce": 1, - "fee": 1000000000000000, - "gas": 1000000, - "gas_price": 1000000000 - }, - { - "abi_version": 3, - "amount": 0, - "call_data": "cb_KxEy4TFQG1VBZXRlcm5pdHkgQlJJIEFjY291bnTYY3Ho", - "caller": "ak_2KAcA2Pp1nrR8Wkt3FtCkReGzAi8vJ9Snxa4PcmrthVx8AhPe8", - "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", - "nonce": 2, - "fee": 1000000000000000, - "gas": 1000000, - "gas_price": 1000000000 - }, - { - "abi_version": 3, - "amount": 0, - "call_data": "cb_KxG37iMwG+lodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMjE5ODkyMzQ/cz0yMDAmdj00gb6p5A==", - "caller": "ak_2KAcA2Pp1nrR8Wkt3FtCkReGzAi8vJ9Snxa4PcmrthVx8AhPe8", + "caller": "ak_FFAuLh2W236SfVPg6YasUW9VwzmsshstdHQ1Nx5wGtWaZQQy2", "contract_pubkey": "ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ", "nonce": 3, "fee": 1000000000000000, @@ -165,4 +132,4 @@ "gas_price": 1000000000 } ] -} +} \ No newline at end of file From f874fcd7f0b6cd357ae88111180034ee430fcb44 Mon Sep 17 00:00:00 2001 From: Dincho Todorov Date: Mon, 28 Oct 2024 18:57:49 +0200 Subject: [PATCH 2/6] Enable hyperchain HTTP endpoints --- node/hyperchain/aeternity.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/node/hyperchain/aeternity.yaml b/node/hyperchain/aeternity.yaml index 82d48d3..4bef4b9 100644 --- a/node/hyperchain/aeternity.yaml +++ b/node/hyperchain/aeternity.yaml @@ -27,6 +27,7 @@ chain: - hyper_chain_account: priv: 'ee8717e491a973e06730cfcd6d700d41f0c68ca36fd22ad0be7102513b3fca6c2057ee2969052490e3638e8ffb22bdaf5060189125481268611f046f951d4715' pub: 'ak_FFAuLh2W236SfVPg6YasUW9VwzmsshstdHQ1Nx5wGtWaZQQy2' + staking_contract: 'ct_LRbi65kmLtE7YMkG6mvG5TxAXTsPJDZjAtsPuaXtRyPA7gnfJ' type: 'hyperchain' db_direct_access: true hard_forks: @@ -38,6 +39,7 @@ fork_management: http: endpoints: + hyperchain: true dry-run: true peers: [] From 8e02a10227e8e46d1743629c045c19a6d52238c9 Mon Sep 17 00:00:00 2001 From: Dincho Todorov Date: Mon, 28 Oct 2024 19:08:24 +0200 Subject: [PATCH 3/6] Switch mdw log level to warning --- docker-compose.full.yml | 6 ++++-- docker-compose.hyperchain.yml | 9 +++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/docker-compose.full.yml b/docker-compose.full.yml index 4cf30ec..af9d203 100644 --- a/docker-compose.full.yml +++ b/docker-compose.full.yml @@ -48,9 +48,11 @@ services: - ae_mdw_node_db:/home/aeternity/node/local/rel/aeternity/data/mnesia - ae_mdw_db:/home/aeternity/node/local/rel/aeternity/data/mdw.db environment: - # workaround - TELEMETRY_STATSD_HOST: localhost + # mdw configuration + ENABLE_TELEMETRY: "false" ENABLE_CONSOLE_LOG: "true" + LOG_LEVEL: warning + # node configuration AETERNITY_CONFIG: /home/aeternity/aeternity.yaml AE__MINING__AUTOSTART: "false" AE__HTTP__CORS__ALLOW_DOMAINS: '["*"]' diff --git a/docker-compose.hyperchain.yml b/docker-compose.hyperchain.yml index 839133e..c28221b 100644 --- a/docker-compose.hyperchain.yml +++ b/docker-compose.hyperchain.yml @@ -27,13 +27,14 @@ services: - ae_hyperchain_node_db:/home/aeternity/node/local/rel/aeternity/data/mnesia - ae_hyperchain_mdw_db:/home/aeternity/node/local/rel/aeternity/data/mdw.db environment: - # workaround - TELEMETRY_STATSD_HOST: localhost + # mdw configuration + ENABLE_TELEMETRY: "false" ENABLE_CONSOLE_LOG: "true" - # LOG_LEVEL: debug - AETERNITY_CONFIG: /home/aeternity/aeternity.yaml + LOG_LEVEL: warning PORT: 24000 WS_PORT: 24001 + # node configuration + AETERNITY_CONFIG: /home/aeternity/aeternity.yaml AE__HTTP__EXTERNAL__PORT: 23013 AE__HTTP__INTERNAL__PORT: 23113 AE__WEBSOCKET__CHANNEL__PORT: 23014 From addf9cb6fa5ba71b8c5e59a182453143a3f569de Mon Sep 17 00:00:00 2001 From: Dincho Todorov Date: Tue, 29 Oct 2024 14:38:29 +0200 Subject: [PATCH 4/6] Expose hc_mdw sync port to the host --- docker-compose.hyperchain.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/docker-compose.hyperchain.yml b/docker-compose.hyperchain.yml index c28221b..84f678b 100644 --- a/docker-compose.hyperchain.yml +++ b/docker-compose.hyperchain.yml @@ -15,11 +15,12 @@ services: aliases: - "hc-mdw.local.gd" ports: - - "24000:24000" #MDW's default port - - "24001:24001" #MDW's websocket default port - - "23113:23113" #Node's default internal API port - - "23013:23013" #Node's default external API port - - "23014:23014" #Node's channels default websocket port + - "24000:24000" #MDW's port + - "24001:24001" #MDW's websocket port + - "23113:23113" #Node's internal API port + - "23013:23013" #Node's external API port + - "23014:23014" #Node's channels websocket port + - "23015:23015" #Node's sync port volumes: - ${PWD}/node/hyperchain/aeternity.yaml:/home/aeternity/aeternity.yaml - ${PWD}/node/hyperchain/accounts.json:/home/aeternity/node/local/rel/aeternity/data/aecore/.ceres/hc_devnet_accounts.json @@ -38,6 +39,7 @@ services: AE__HTTP__EXTERNAL__PORT: 23013 AE__HTTP__INTERNAL__PORT: 23113 AE__WEBSOCKET__CHANNEL__PORT: 23014 + AE__SYNC__PORT: 23015 AE__HTTP__CORS__ALLOW_DOMAINS: '["*"]' healthcheck: test: ["CMD", "curl", "-f", "http://localhost:24000/status"] From 68c8a758145ba4aeb4744628f8d903e996763890 Mon Sep 17 00:00:00 2001 From: Dincho Todorov Date: Tue, 29 Oct 2024 15:29:03 +0200 Subject: [PATCH 5/6] Add static peer keys for hc_mdw --- docker-compose.hyperchain.yml | 1 + node/hyperchain/keys/peer_key | 1 + node/hyperchain/keys/peer_key.pub | 2 ++ 3 files changed, 4 insertions(+) create mode 100644 node/hyperchain/keys/peer_key create mode 100644 node/hyperchain/keys/peer_key.pub diff --git a/docker-compose.hyperchain.yml b/docker-compose.hyperchain.yml index 84f678b..d73f33e 100644 --- a/docker-compose.hyperchain.yml +++ b/docker-compose.hyperchain.yml @@ -25,6 +25,7 @@ services: - ${PWD}/node/hyperchain/aeternity.yaml:/home/aeternity/aeternity.yaml - ${PWD}/node/hyperchain/accounts.json:/home/aeternity/node/local/rel/aeternity/data/aecore/.ceres/hc_devnet_accounts.json - ${PWD}/node/hyperchain/contracts.json:/home/aeternity/node/local/rel/aeternity/data/aecore/.ceres/hc_devnet_contracts.json + - ${PWD}/node/hyperchain/keys:/home/aeternity/node/local/rel/aeternity/data/aecore/keys - ae_hyperchain_node_db:/home/aeternity/node/local/rel/aeternity/data/mnesia - ae_hyperchain_mdw_db:/home/aeternity/node/local/rel/aeternity/data/mdw.db environment: diff --git a/node/hyperchain/keys/peer_key b/node/hyperchain/keys/peer_key new file mode 100644 index 0000000..35a6430 --- /dev/null +++ b/node/hyperchain/keys/peer_key @@ -0,0 +1 @@ +2š½\ÝáF{D0”Ù!µÙòÝ A ^ÖRÃÍMc¸If \ No newline at end of file diff --git a/node/hyperchain/keys/peer_key.pub b/node/hyperchain/keys/peer_key.pub new file mode 100644 index 0000000..8493097 --- /dev/null +++ b/node/hyperchain/keys/peer_key.pub @@ -0,0 +1,2 @@ +™ÚH<Ï3¤äXä<Þ +;Êa«êÙ|ó9Ö ”¿£ åÚ \ No newline at end of file From 343ce97ef3a9af035a5c63f48c9f3061b33ff74b Mon Sep 17 00:00:00 2001 From: Dincho Todorov Date: Mon, 4 Nov 2024 18:59:42 +0200 Subject: [PATCH 6/6] Use v0.3 of HC UI --- docker-compose.hyperchain.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.hyperchain.yml b/docker-compose.hyperchain.yml index d73f33e..b45c8b9 100644 --- a/docker-compose.hyperchain.yml +++ b/docker-compose.hyperchain.yml @@ -112,7 +112,7 @@ services: ui: platform: linux/x86_64 - image: public.ecr.aws/aeternity/aepp-hyperchain:master + image: public.ecr.aws/aeternity/aepp-hyperchain:v0.3 environment: AE_FAUCET_URL: "http://localhost:28030/" AE_WALLET_URL: "http://localhost:28010/"