validators add
lceth validators add [flags]
Options
-o, --operator-idx int Required operator index on OperatorRegistry contract
-d, --deposit-data string JSON deposit data file listing validator keys to be added
-i, --deposit-input string Hex input of deposit transaction listing validator keys to be added
--from address Optional account used to sign the transaction.
Expects an 0x prefixed Ethereum address (default 0x0000000000000000000000000000000000000000)
-n, --nonce bigInt Optional nonce to use for the transaction, if not set then use pending nonce.
Expects either a decimal or an hex encoded value with 0x prefix
-v, --value bigInt Optional funds to transfer along the transaction in Wei, if not set then no funds are transferred
Expects either a decimal or an hex encoded value with 0x prefix (default 0x0)
-p, --gas-price bigInt Optional gas price to use for the transaction execution in Wei. If not set then uses gas price oracle
Expects either a decimal or an hex encoded value with 0x prefix
-f, --gas-fee-cap bigInt Optional gas fee cap to use for the EIP-1559 transaction execution in Wei. If not set then uses gas price oracle
Expects either a decimal or an hex encoded value with 0x prefix
-t, --gas-tip-cap bigInt Optional gas priority tip fee cap to use for the EIP-1559 transaction execution in Wei. If not set then uses gas price oracle
Expects either a decimal or an hex encoded value with 0x prefix
-l, --gas-limit uint Optional gas limit to set for the transaction execution. If not set then estimate gas
Expects either a decimal or an hex encoded value with 0x prefix
--send If set then performs all transaction steps and send the transaction to the network
--no-sign If set then performs all transaction steps and stop before signing the transaction
-h, --help help for add
Options inherited from parent commands
--allowlist-addr string Address of the Allowlist contract [env: ALLOWLIST_ADDR]
--beacon-deployment-block string deployment block beacon deposit contract [env: BEACON_DEPLOYMENT_BLOCK]
--beacon-deposit-addr string Address of the Beacon Deposit contract [env: BEACON_DEPOSIT_ADDR]
--deployment-block uint Deployment block of the contracts [env: DEPLOYMENT_BLOCK]
--el-fee-recipient-addr string Address of the Execution Layer fee recipient contract [env: EL_FEE_RECIPIENT_ADDR]
--eth-el-addr string JSON-RPC address of the Ethereum execution layer node to connect to [env: ETH_EL_ADDR]
--healthz-addr string healthz entrypoint address:port [env: HEALTHZ_ADDR] (default ":8081")
--keystore-password string Password used to encrypt key files [env: KEYSTORE_PASSWORD]
--keystore-path string Directory where to store keys [env: KEYSTORE_PATH]
--kms-key-id string KMS key ID used to sign and submit transactions [env: KMS_KEY_ID]
--log-format string Log output format (text or json) [env: LOG_FORMAT] (default "text")
--log-level string Log output level [env: LOG_LEVEL] (default "info")
--operators-registry-addr string Address of the Operators Registry contract [env: OPERATORS_REGISTRY_ADDR]
--oracle-addr string Address of the Oracle contract [env: ORACLE_ADDR]
--redeem-manager-addr string Address of the RedeemManager contract [env: REDEEM_MANAGER_ADDR]
--river-addr string Address of the River contract [env: RIVER_ADDR]
--server-addr string Server entrypoint address:port [env: SERVER_ADDR] (default ":8080")
--tlc-addr string Address of the TLC contract [env: TLC_ADDR]
--withdraw-addr string Address of the Withdraw contract [env: WITHDRAW_ADDR]
--wls-eth-addr string Address of the WlsEth contract [env: WLSETH_ADDR]
Example Usage
Signing with encrypted geth keystore
% lceth validators add --operator-idx 0
--deposit-data ~/Downloads/deposit-data.json
--from 0x24f3b2bc10e59c6c2fb4cd1e706e51b977cf4754
--operators-registry-addr 0xAF73C9D8Eb11F54930746e1fC0E68ca3574AE485
--river-addr 0x4558cffD081638E8E791C4183b77d6Fe80E7dF4c
--withdraw-addr 0xd22445dFeB2e394d097DbfBa94270d1E0868d5AE
--redeem-manager-addr 0x33993476440bE94Ef664a7069cd52b928168f053
--oracle-addr 0xdc9fA1e97FF3c097EE47141517479E344f21d1Fc
--el-fee-recipient-addr 0xC26615450c5B81b73D59fE00CCACF47f4C364BC2
--beacon-deposit-addr 0x4242424242424242424242424242424242424242
--deployment-block 2439806
--block-log-fetch-step 10000
--eth-el-addr <ETH_RPC_URL>
--keystore-password <PASSWORD>
--keystore-path ./data/keystore/
--skip-check-duplicates
--send
INFO[0000] initialization succeeded addr.allowlist=0x1C8d258846f5e3EaCC0885AD265Fb505c69B600f addr.beacon-deposit=0x4242424242424242424242424242424242424242 addr.el-fee-recipient=0xC26615450c5B81b73D59fE00CCACF47f4C364BC2 addr.operators-registry=0xAF73C9D8Eb11F54930746e1fC0E68ca3574AE485 addr.oracle=0xdc9fA1e97FF3c097EE47141517479E344f21d1Fc addr.river=0x4558cffD081638E8E791C4183b77d6Fe80E7dF4c addr.tlc=0x0000000000000000000000000000000000000000 addr.withdraw=0xd22445dFeB2e394d097DbfBa94270d1E0868d5AE addr.wlseth=0x21ae523bf67C81c8e4F640d8f76F9c7B77eCc0bf beacon-deployment.block=0 chain.id=17000 deployment.block=2439806
INFO[0000] configuring geth keystore keystore-path=./data/keystore/
INFO[0000] set signer address address=0x24f3b2BC10E59C6c2Fb4CD1e706e51B977CF4754
INFO[0000] reading deposit data file file=/Users/alexandermackay/Downloads/deposit-data.json version=v0.30.0-6-ga1a1339
INFO[0000] found deposit data keys=2 version=v0.30.0-6-ga1a1339
INFO[0000] adding 2 validators in 1 txs version=v0.30.0-6-ga1a1339
INFO[0000] creating tx 1/1 with 2 validators version=v0.30.0-6-ga1a1339
INFO[0000] validate deposit data... expected.amount=32000000000 expected.fork_version=0x01017000 expected.withdrawal_credentials=0x010000000000000000000000d22445dfeb2e394d097dbfba94270d1e0868d5ae
INFO[0000] valid deposit data
INFO[0001] tx 1/1 sent tx_hash=0xda143c3f1a90b4455e2913c2195eebfba53eadf9f90202116ab2bee51df2d55b version=v0.30.0-6-ga1a1339
INFO[0006] waiting for tx 1/1 to be confirmed timeElapsed=5.00078575s tx_hash=0xda143c3f1a90b4455e2913c2195eebfba53eadf9f90202116ab2bee51df2d55b version=v0.30.0-6-ga1a1339
INFO[0006] tx 1/1 confirmed successfully tx_hash=0xda143c3f1a90b4455e2913c2195eebfba53eadf9f90202116ab2bee51df2d55b version=v0.30.0-6-ga1a1339
https://holesky.etherscan.io/tx/0xda143c3f1a90b4455e2913c2195eebfba53eadf9f90202116ab2bee51df2d55b
Signing with AWS KMS ECDSA key
% lceth validators add --operator-idx 0
--deposit-data ~/Downloads/deposit-data.json
--from 0x348d29b8bfa00ee5d62aa8d4205d72bad1c3cb7c
--operators-registry-addr 0xAF73C9D8Eb11F54930746e1fC0E68ca3574AE485
--river-addr 0x4558cffD081638E8E791C4183b77d6Fe80E7dF4c
--withdraw-addr 0xd22445dFeB2e394d097DbfBa94270d1E0868d5AE
--redeem-manager-addr 0x33993476440bE94Ef664a7069cd52b928168f053
--oracle-addr 0xdc9fA1e97FF3c097EE47141517479E344f21d1Fc
--el-fee-recipient-addr 0xC26615450c5B81b73D59fE00CCACF47f4C364BC2
--beacon-deposit-addr 0x4242424242424242424242424242424242424242
--deployment-block 2439806
--block-log-fetch-step 10000
--eth-el-addr <ETH_RPC_URL>
--kms-key-id <KMS_KEY_ID>
--skip-check-duplicates
--send
SEE ALSO
lceth validators - Methods to manage validators on OperatorsRegistry contract
Last updated