Add Holesky (#977)

This commit is contained in:
0xadams.eth 2023-11-12 22:00:47 +01:00 committed by GitHub
parent a5bbb7d8ee
commit a2ab9da785
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 260 additions and 1 deletions

View File

@ -35,7 +35,7 @@ the rest of coins were implemented by the community.
Testnets for some coins are also supported, for example:
- Bitcoin Testnet, Bitcoin Cash Testnet, ZCash Testnet, Ethereum Testnets (Goerli, Sepolia)
- Bitcoin Testnet, Bitcoin Cash Testnet, ZCash Testnet, Ethereum Testnets (Goerli, Sepolia, Holesky)
List of all implemented coins is in [the registry of ports](/docs/ports.md).

View File

@ -77,6 +77,8 @@ func init() {
BlockChainFactories["Ethereum Testnet Goerli Archive"] = eth.NewEthereumRPC
BlockChainFactories["Ethereum Testnet Sepolia"] = eth.NewEthereumRPC
BlockChainFactories["Ethereum Testnet Sepolia Archive"] = eth.NewEthereumRPC
BlockChainFactories["Ethereum Testnet Holesky"] = eth.NewEthereumRPC
BlockChainFactories["Ethereum Testnet Holesky Archive"] = eth.NewEthereumRPC
BlockChainFactories["Bcash"] = bch.NewBCashRPC
BlockChainFactories["Bcash Testnet"] = bch.NewBCashRPC
BlockChainFactories["Bgold"] = btg.NewBGoldRPC

View File

@ -34,6 +34,8 @@ const (
TestNetGoerli Network = 5
// TestNetSepolia is Sepolia test network
TestNetSepolia Network = 11155111
// TestNetHolesky is Holesky test network
TestNetHolesky Network = 17000
)
// Configuration represents json config file
@ -147,6 +149,9 @@ func (b *EthereumRPC) Initialize() error {
case TestNetSepolia:
b.Testnet = true
b.Network = "sepolia"
case TestNetHolesky:
b.Testnet = true
b.Network = "holesky"
default:
return errors.Errorf("Unknown network id %v", id)
}

View File

@ -0,0 +1,70 @@
{
"coin": {
"name": "Ethereum Testnet Holesky",
"shortcut": "hSEP",
"label": "Ethereum Holesky",
"alias": "ethereum_testnet_holesky"
},
"ports": {
"backend_rpc": 18016,
"backend_message_queue": 0,
"backend_p2p": 48316,
"backend_http": 18116,
"backend_authrpc": 18516,
"blockbook_internal": 19016,
"blockbook_public": 19116
},
"ipc": {
"rpc_url_template": "ws://127.0.0.1:{{.Ports.BackendRPC}}",
"rpc_timeout": 25
},
"backend": {
"package_name": "backend-ethereum-testnet-holesky",
"package_revision": "satoshilabs-1",
"system_user": "ethereum",
"version": "1.12.0-e501b3b0",
"binary_url": "https://gethstore.blob.core.windows.net/builds/geth-linux-amd64-1.12.0-e501b3b0.tar.gz",
"verification_type": "gpg",
"verification_source": "https://gethstore.blob.core.windows.net/builds/geth-linux-amd64-1.12.0-e501b3b0.tar.gz.asc",
"extract_command": "tar -C backend --strip 1 -xf",
"exclude_files": [],
"exec_command_template": "/bin/sh -c '{{.Env.BackendInstallPath}}/{{.Coin.Alias}}/geth --holesky --syncmode full --txlookuplimit 0 --ipcdisable --cache 1024 --nat none --datadir {{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend --port {{.Ports.BackendP2P}} --ws --ws.addr 127.0.0.1 --ws.port {{.Ports.BackendRPC}} --ws.origins \"*\" --ws.api \"eth,net,web3,debug,txpool\" --http --http.port {{.Ports.BackendHttp}} -http.addr 127.0.0.1 --http.corsdomain \"*\" --http.vhosts \"*\" --http.api \"eth,net,web3,debug,txpool\" --authrpc.port {{.Ports.BackendAuthRpc}} 2>>{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log'",
"logrotate_files_template": "{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log",
"postinst_script_template": "",
"service_type": "simple",
"service_additional_params_template": "",
"protect_memory": true,
"mainnet": false,
"server_config_file": "",
"client_config_file": "",
"platforms": {
"arm64": {
"binary_url": "https://gethstore.blob.core.windows.net/builds/geth-linux-arm64-1.12.0-e501b3b0.tar.gz",
"verification_source": "https://gethstore.blob.core.windows.net/builds/geth-linux-arm64-1.12.0-e501b3b0.tar.gz.asc"
}
}
},
"blockbook": {
"package_name": "blockbook-ethereum-testnet-holesky",
"system_user": "blockbook-ethereum",
"internal_binding_template": ":{{.Ports.BlockbookInternal}}",
"public_binding_template": ":{{.Ports.BlockbookPublic}}",
"explorer_url": "",
"additional_params": "",
"block_chain": {
"parse": true,
"mempool_workers": 8,
"mempool_sub_workers": 2,
"block_addresses_to_keep": 3000,
"additional_params": {
"consensusNodeVersion": "http://localhost:17516/eth/v1/node/version",
"mempoolTxTimeoutHours": 12,
"queryBackendOnMempoolResync": false
}
}
},
"meta": {
"package_maintainer": "IT",
"package_maintainer_email": "it@satoshilabs.com"
}
}

View File

@ -0,0 +1,76 @@
{
"coin": {
"name": "Ethereum Testnet Holesky Archive",
"shortcut": "hSEP",
"label": "Ethereum Holesky",
"alias": "ethereum_testnet_holesky_archive"
},
"ports": {
"backend_rpc": 18036,
"backend_message_queue": 0,
"backend_p2p": 48336,
"backend_http": 18136,
"backend_torrent": 18136,
"backend_authrpc": 18536,
"blockbook_internal": 19036,
"blockbook_public": 19136
},
"ipc": {
"rpc_url_template": "ws://127.0.0.1:{{.Ports.BackendRPC}}",
"rpc_timeout": 25
},
"backend": {
"package_name": "backend-ethereum-testnet-holesky-archive",
"package_revision": "satoshilabs-1",
"system_user": "ethereum",
"version": "2.53.2",
"binary_url": "https://github.com/ledgerwatch/erigon/releases/download/v2.53.2/erigon_2.53.2_linux_amd64.tar.gz",
"verification_type": "sha256",
"verification_source": "dd88dcce57c659a88696dd361780906fddd5968621eb0518f57b4e07f80cb3e6",
"extract_command": "tar -C backend -xf",
"exclude_files": [],
"exec_command_template": "/bin/sh -c '{{.Env.BackendInstallPath}}/{{.Coin.Alias}}/erigon --chain holesky --snap.keepblocks --db.size.limit 15TB --prune c --prune.c.older 1000000 -torrent.download.rate 32mb --nat none --datadir {{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/erigon --port {{.Ports.BackendP2P}} --ws --http --http.port {{.Ports.BackendRPC}} --http.addr 127.0.0.1 --http.corsdomain \"*\" --http.vhosts \"*\" --http.api \"eth,net,web3,debug,txpool\" --authrpc.port {{.Ports.BackendAuthRpc}} --private.api.addr \"\" --torrent.port {{.Ports.BackendHttp}} --log.dir.path {{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend --log.dir.prefix {{.Coin.Alias}}'",
"logrotate_files_template": "{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log",
"postinst_script_template": "",
"service_type": "simple",
"service_additional_params_template": "",
"protect_memory": true,
"mainnet": false,
"server_config_file": "",
"client_config_file": "",
"platforms": {
"arm64": {
"binary_url": "https://github.com/ledgerwatch/erigon/releases/download/v2.53.2/erigon_2.53.2_linux_arm64.tar.gz",
"verification_source": "2492d160c34b88041c5dcdcef43e7213e99d8f2a1e112de2c5966b226ce6a4e4"
}
}
},
"blockbook": {
"package_name": "blockbook-ethereum-testnet-holesky-archive",
"system_user": "blockbook-ethereum",
"internal_binding_template": ":{{.Ports.BlockbookInternal}}",
"public_binding_template": ":{{.Ports.BlockbookPublic}}",
"explorer_url": "",
"additional_params": "-workers=16",
"block_chain": {
"parse": true,
"mempool_workers": 8,
"mempool_sub_workers": 2,
"block_addresses_to_keep": 3000,
"additional_params": {
"consensusNodeVersion": "http://localhost:17536/eth/v1/node/version",
"address_aliases": true,
"mempoolTxTimeoutHours": 12,
"processInternalTransactions": true,
"queryBackendOnMempoolResync": false,
"fiat_rates-disabled": "coingecko",
"fiat_rates_params": "{\"coin\": \"ethereum\",\"platformIdentifier\": \"ethereum\",\"platformVsCurrency\": \"eth\",\"periodSeconds\": 900}",
"fourByteSignatures": "https://www.4byte.directory/api/v1/signatures/"
}
}
},
"meta": {
"package_maintainer": "IT",
"package_maintainer_email": "it@satoshilabs.com"
}
}

View File

@ -0,0 +1,52 @@
{
"coin": {
"name": "Ethereum Testnet Holesky Archive",
"shortcut": "hSEP",
"label": "Ethereum Holesky",
"alias": "ethereum_testnet_holesky_archive_consensus",
"execution_alias": "ethereum_testnet_holesky_archive"
},
"ports": {
"backend_rpc": 18036,
"backend_message_queue": 0,
"backend_p2p": 48336,
"backend_http": 18136,
"backend_authrpc": 18536,
"blockbook_internal": 19036,
"blockbook_public": 19136
},
"ipc": {
"rpc_url_template": "ws://127.0.0.1:{{.Ports.BackendRPC}}",
"rpc_timeout": 25
},
"backend": {
"package_name": "backend-ethereum-testnet-holesky-archive-consensus",
"package_revision": "satoshilabs-1",
"system_user": "ethereum",
"version": "4.1.1",
"binary_url": "https://github.com/prysmaticlabs/prysm/releases/download/v4.1.1/beacon-chain-v4.1.1-linux-amd64",
"verification_type": "sha256",
"verification_source": "108feeca273432fcb0e968d1fc3dab38a412650c591440733cad73e3140d02b5",
"extract_command": "mv ${ARCHIVE} backend/beacon-chain && chmod +x backend/beacon-chain && echo",
"exclude_files": [],
"exec_command_template": "/bin/sh -c '{{.Env.BackendInstallPath}}/{{.Coin.Alias}}/beacon-chain --holesky --accept-terms-of-use --execution-endpoint=http://localhost:{{.Ports.BackendAuthRpc}} --grpc-gateway-port=17536 --rpc-port=17537 --monitoring-port=17538 --p2p-tcp-port=13636 --p2p-udp-port=12636 --datadir={{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend --jwt-secret={{.Env.BackendDataPath}}/ethereum_testnet_holesky_archive/backend/erigon/jwt.hex --genesis-state={{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/genesis.ssz 2>>{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log'",
"logrotate_files_template": "{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log",
"postinst_script_template": "wget https://github.com/eth-clients/holesky/raw/main/custom_config_data/genesis.ssz -O {{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/genesis.ssz",
"service_type": "simple",
"service_additional_params_template": "",
"protect_memory": true,
"mainnet": false,
"server_config_file": "",
"client_config_file": "",
"platforms": {
"arm64": {
"binary_url": "https://github.com/prysmaticlabs/prysm/releases/download/v4.1.1/beacon-chain-v4.1.1-linux-arm64",
"verification_source": "68db674c5ab36957b08e335c0d417ce2279ea1dca690ce302f73b156a7dbafbb"
}
}
},
"meta": {
"package_maintainer": "IT",
"package_maintainer_email": "it@satoshilabs.com"
}
}

View File

@ -0,0 +1,52 @@
{
"coin": {
"name": "Ethereum Testnet Holesky",
"shortcut": "hSEP",
"label": "Ethereum Holesky",
"alias": "ethereum_testnet_holesky_consensus",
"execution_alias": "ethereum_testnet_holesky"
},
"ports": {
"backend_rpc": 18016,
"backend_message_queue": 0,
"backend_p2p": 48316,
"backend_http": 18116,
"backend_authrpc": 18516,
"blockbook_internal": 19016,
"blockbook_public": 19116
},
"ipc": {
"rpc_url_template": "ws://127.0.0.1:{{.Ports.BackendRPC}}",
"rpc_timeout": 25
},
"backend": {
"package_name": "backend-ethereum-testnet-holesky-consensus",
"package_revision": "satoshilabs-1",
"system_user": "ethereum",
"version": "4.1.1",
"binary_url": "https://github.com/prysmaticlabs/prysm/releases/download/v4.1.1/beacon-chain-v4.1.1-linux-amd64",
"verification_type": "sha256",
"verification_source": "108feeca273432fcb0e968d1fc3dab38a412650c591440733cad73e3140d02b5",
"extract_command": "mv ${ARCHIVE} backend/beacon-chain && chmod +x backend/beacon-chain && echo",
"exclude_files": [],
"exec_command_template": "/bin/sh -c '{{.Env.BackendInstallPath}}/{{.Coin.Alias}}/beacon-chain --holesky --accept-terms-of-use --execution-endpoint=http://localhost:{{.Ports.BackendAuthRpc}} --grpc-gateway-port=17516 --rpc-port=17517 --monitoring-port=17518 --p2p-tcp-port=13516 --p2p-udp-port=12516 --datadir={{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend --jwt-secret={{.Env.BackendDataPath}}/ethereum_testnet_holesky/backend/geth/jwtsecret --genesis-state={{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/genesis.ssz 2>>{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log'",
"logrotate_files_template": "{{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/{{.Coin.Alias}}.log",
"postinst_script_template": "wget https://github.com/eth-clients/holesky/raw/main/custom_config_data/genesis.ssz -O {{.Env.BackendDataPath}}/{{.Coin.Alias}}/backend/genesis.ssz",
"service_type": "simple",
"service_additional_params_template": "",
"protect_memory": true,
"mainnet": false,
"server_config_file": "",
"client_config_file": "",
"platforms": {
"arm64": {
"binary_url": "https://github.com/prysmaticlabs/prysm/releases/download/v4.1.1/beacon-chain-v4.1.1-linux-arm64",
"verification_source": "68db674c5ab36957b08e335c0d417ce2279ea1dca690ce302f73b156a7dbafbb"
}
}
},
"meta": {
"package_maintainer": "IT",
"package_maintainer_email": "it@satoshilabs.com"
}
}

View File

@ -54,6 +54,7 @@
| Avalanche | 9198 | 9098 | 8098 | 38398 p2p |
| Avalanche Archive | 9199 | 9099 | 8099 | 38399 p2p |
| Ethereum Testnet Goerli Archive | 19106 | 19006 | 18006 | 18106 http, 18506 authrpc, 48306 p2p |
| Ethereum Testnet Holesky | 19116 | 19016 | 18016 | 18116 http, 18516 authrpc, 48316 p2p |
| Bitcoin Signet | 19120 | 19020 | 18020 | 48320 |
| Bitcoin Regtest | 19121 | 19021 | 18021 | 48321 |
| Ethereum Testnet Goerli | 19126 | 19026 | 18026 | 18126 http, 18526 authrpc, 48326 p2p |
@ -63,6 +64,7 @@
| Dash Testnet | 19133 | 19033 | 18033 | 48333 |
| Litecoin Testnet | 19134 | 19034 | 18034 | 48334 |
| Bitcoin Gold Testnet | 19135 | 19035 | 18035 | 48335 |
| Ethereum Testnet Holesky Archive | 19136 | 19036 | 18036 | 18136 http, 18536 authrpc, 48336 p2p |
| Dogecoin Testnet | 19138 | 19038 | 18038 | 48338 |
| Vertcoin Testnet | 19140 | 19040 | 18040 | 48340 |
| Monacoin Testnet | 19141 | 19041 | 18041 | 48341 |