voluntary-exit
Create and sign a voluntary exit for the specified validator or set of validators.
This subcommand can be run as a separate Teku process.
To submit a voluntary exit, you must have a running beacon node with the REST API enabled.
beacon-node-api-endpoint
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --beacon-node-api-endpoint=<ENDPOINT>
teku voluntary-exit --beacon-node-api-endpoint=http://192.138.10.12
TEKU_BEACON_NODE_ENDPOINT=http://192.138.10.12
beacon-node-api-endpoint: "http://192.138.10.12"
Endpoint of the beacon node's REST API. The default is http://127.0.0.1:5051
.
config-file
- Syntax
- Example
- Environment variable
teku voluntary-exit --config-file=<FILE>
teku voluntary-exit --config-file=/home/me/me_node/config.yaml
TEKU_CONFIG_FILE=/home/me/me_node/config.yaml
Path to the YAML configuration file. The default is none
.
confirmation-enabled
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --confirmation-enabled=<BOOLEAN>
teku voluntary-exit --confirmation-enabled=false
TEKU_CONFIRMATION_ENABLED=false
confirmation-enabled: false
Specify whether to request confirmation when exiting a validator. The default is true
.
If you set --confirmation-enabled
to false
, exits are generated immediately without any prompt.
epoch
- Syntax
- Example
- Environment variable
teku voluntary-exit --epoch=<EPOCH>
teku voluntary-exit --epoch=24500
TEKU_EPOCH=24500
Earliest epoch that the voluntary exit can be processed. The specified epoch can be a past epoch, or current epoch. You cannot specify a future epoch. The default is the current epoch.
If there is a high number of validators that are queued to exit, then the validator exit may be processed at a later epoch.
include-keymanager-keys
- Syntax
- Example
teku voluntary-exit --include-keymanager-keys=<BOOLEAN>
teku voluntary-exit --include-keymanager-keys=true
Include validator keys managed using the key manager APIs. The default is false
.
network
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --network=<NETWORK>
teku voluntary-exit --network=mainnet
TEKU_NETWORK=mainnet
network: "mainnet"
Predefined network configuration. There is no default value, because Teku reads the network specification from the Beacon API unless specified.
save-exits-path
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --save-exits-path=<PATH>
teku voluntary-exit --save-exits-path=signedExitsPath
TEKU_SAVE_EXITS_PATH=signedExitsPath
save-exits-path: "signedExitsPath"
Path at which to save the generated exit messages. This option creates but doesn't submit an exit. It doesn't validate the exit epoch, and doesn't publish the exit messages.
validator-keys
- Syntax
- Example for directory
- Example for file
- Environment variable
- Configuration file
teku voluntary-exit --validator-keys=<KEY_DIR>:<PASS_DIR> | <KEY_FILE>:<PASS_FILE>[,<KEY_DIR>:<PASS_DIR> | <KEY_FILE>:<PASS_FILE>...]...
teku voluntary-exit --validator-keys=/home/validator/keys:home/validator/passwords
teku voluntary-exit --validator-keys=/home/validator/keys/validator_217179e.json:/home/validator/passwords/validator_217179e.txt
TEKU_VALIDATOR_KEYS=/home/validator/keys:home/validator/passwords
validator-keys: "/home/validator/keys:home/validator/passwords"
Directory or file to load the encrypted keystores and passwords of the validators that you wish to exit. Keystore files must use the .json
file extension, and password files must use the .txt
file extension.
When specifying directories, Teku expects to find identically named keystore and password files. For example validator_217179e.json
and validator_217179e.txt
.
When specifying file names, Teku expects that the files exist.
The path separator is operating system dependent, and should be ;
in Windows rather than :
.
validator-public-keys
- Syntax
- Example
teku voluntary-exit --validator-public-keys=<PUBKEY>[,<PUBKEY>...]...
teku voluntary-exit --validator-public-keys=0xc7931ac6937f6c776d8dfe84918f7b26d986f2e45af5869085839b8817db2705,0x179a0e2768621eede9ce961cf8ee4f0ece5be9a1795c294269b69b85c765f3cc
Restrict the exit command to a specified list of public keys. When the parameter is not used, all keys will be exited.
validators-external-signer-keystore
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --validators-external-signer-keystore=<FILE>
teku voluntary-exit --validators-external-signer-keystore=teku_client_keystore.p12
TEKU_VALIDATORS_EXTERNAL_KEYSTORE=teku_client_keystore.p12
validators-external-signer-keystore: "teku_client_keystore.p12"
The keystore that Teku presents to the external signer for TLS authentication. Teku can use PKCS12 or JKS keystore types.
Use the PKCS12 keystore type if connecting to Web3Signer.
validators-external-signer-keystore-password-file
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --validators-external-signer-keystore-password-file=<FILE>
teku voluntary-exit --validators-external-signer-keystore-password-file=keystore_pass.txt
TEKU_VALIDATORS_EXTERNAL_KEYSTORE_PASSWORD_FILE=keystore_pass.txt
validators-external-signer-keystore-password-file: "keystore_pass.txt"
Password file used to decrypt the keystore.
validators-external-signer-public-keys
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --validators-external-signer-public-keys=<KEY>[,<KEY>...]
teku voluntary-exit --validators-external-signer-public-keys=0xa99a...e44c,0xb89b...4a0b
TEKU_VALIDATORS_EXTERNAL_SIGNER_PUBLIC_KEYS=0xa99a...e44c,0xb89b...4a0b
validators-external-signer-public-keys: ["0xa99a...e44c","0xb89b...4a0b"]
List of public keys of validators that you wish to voluntarily exit when using an external signer (for example, Web3Signer).
Use the URL to load the public keys from a remote service. For example:
teku voluntary-exit --validators-external-signer-public-keys=http://localhost:9900/api/v1/eth2/publicKeys
Use the value external-signer
to load all public keys managed by the external signer. Teku automatically queries the external signer's public keys endpoint.
teku voluntary-exit --validators-external-signer-public-keys=external-signer
validators-external-signer-timeout
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --validators-external-signer-timeout=<INTEGER>
teku voluntary-exit --validators-external-signer-timeout=2000
TEKU_VALIDATORS_EXTERNAL_SIGNER_TIMEOUT=2000
validators-external-signer-timeout: 2000
Timeout in milliseconds for requests to the external signer. The default is 5000.
validators-external-signer-truststore
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --validators-external-signer-truststore=<FILE>
teku voluntary-exit --validators-external-signer-truststore=websigner_truststore.p12
TEKU_VALIDATORS_EXTERNAL_TRUSTSTORE=websigner_truststore.p12
validators-external-signer-truststore: "websigner_truststore.p12"
PKCS12 or JKS keystore used to trust external signer's self-signed certificate or CA certificate which signs the external signer's certificate.
validators-external-signer-truststore-password-file
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --validators-external-signer-truststore-password-file=<FILE>
teku voluntary-exit --validators-external-signer-truststore-password-file=truststore_pass.txt
TEKU_VALIDATORS_EXTERNAL_TRUSTSTORE_PASSWORD_FILE=truststore_pass.txt
validators-external-signer-truststore-password-file: "truststore_pass.txt"
Password file used to decrypt the keystore.
validators-external-signer-url
- Syntax
- Example
- Environment variable
- Configuration file
teku voluntary-exit --validators-external-signer-url=<URL>
teku voluntary-exit --validators-external-signer-url=http://localhost:9000
TEKU_VALIDATORS_EXTERNAL_SIGNER_URL=http://localhost:9000
validators-external-signer-url: "http://localhost:9000"
URL of the external signer (for example, Web3Signer).