More version in --version and less version in --help (#1260)
Long version and copyright banners is probably not what the user is after when typing `--help`
This commit is contained in:
parent
d09e9f1aaf
commit
e898525b16
|
@ -850,6 +850,7 @@ proc start(node: BeaconNode) =
|
||||||
|
|
||||||
info "Starting beacon node",
|
info "Starting beacon node",
|
||||||
version = fullVersionStr,
|
version = fullVersionStr,
|
||||||
|
nim = shortNimBanner(),
|
||||||
timeSinceFinalization =
|
timeSinceFinalization =
|
||||||
int64(finalizedHead.slot.toBeaconTime()) -
|
int64(finalizedHead.slot.toBeaconTime()) -
|
||||||
int64(node.beaconClock.now()),
|
int64(node.beaconClock.now()),
|
||||||
|
|
|
@ -55,8 +55,14 @@ template ctrlCHandling*(extraCode: untyped) =
|
||||||
setControlCHook(controlCHandler)
|
setControlCHook(controlCHandler)
|
||||||
|
|
||||||
template makeBannerAndConfig*(clientId: string, ConfType: type): untyped =
|
template makeBannerAndConfig*(clientId: string, ConfType: type): untyped =
|
||||||
let banner = clientId & "\p" & copyrights & "\p\p" & nimBanner
|
let
|
||||||
ConfType.load(version = banner, copyrightBanner = banner)
|
version = clientId & "\p" & copyrights & "\p\p" &
|
||||||
|
"eth2 specification v" & SPEC_VERSION & "\p\p" &
|
||||||
|
nimBanner
|
||||||
|
# TODO for some reason, copyrights are printed when doing `--help`
|
||||||
|
ConfType.load(
|
||||||
|
version = version,
|
||||||
|
copyrightBanner = clientId) # but a short version string makes more sense...
|
||||||
|
|
||||||
# TODO not sure if this belongs here but it doesn't belong in `time.nim` either
|
# TODO not sure if this belongs here but it doesn't belong in `time.nim` either
|
||||||
proc sleepToSlotOffset*(clock: BeaconClock, extra: chronos.Duration,
|
proc sleepToSlotOffset*(clock: BeaconClock, extra: chronos.Duration,
|
||||||
|
|
|
@ -1,19 +1,16 @@
|
||||||
{.push raises: [Defect].}
|
{.push raises: [Defect].}
|
||||||
|
|
||||||
|
import strutils
|
||||||
|
|
||||||
when not defined(nimscript):
|
when not defined(nimscript):
|
||||||
import times
|
import times
|
||||||
let copyrights* = "Copyright (c) 2019-" & $(now().utc.year) & " Status Research & Development GmbH"
|
let copyrights* = "Copyright (c) 2019-" & $(now().utc.year) & " Status Research & Development GmbH"
|
||||||
|
|
||||||
const
|
const
|
||||||
versionMajor* = 0
|
versionMajor* = 0
|
||||||
versionMinor* = 3
|
versionMinor* = 5
|
||||||
versionBuild* = 0
|
versionBuild* = 0
|
||||||
|
|
||||||
semanticVersion* = 2
|
|
||||||
# Bump this up every time a breaking change is introduced
|
|
||||||
# Clients having different semantic versions won't be able
|
|
||||||
# to join the same testnets.
|
|
||||||
|
|
||||||
useInsecureFeatures* = defined(insecure)
|
useInsecureFeatures* = defined(insecure)
|
||||||
|
|
||||||
gitRevision* = staticExec("git rev-parse --short HEAD")
|
gitRevision* = staticExec("git rev-parse --short HEAD")
|
||||||
|
@ -25,3 +22,18 @@ const
|
||||||
|
|
||||||
fullVersionStr* =
|
fullVersionStr* =
|
||||||
versionAsStr & " (" & gitRevision & ")"
|
versionAsStr & " (" & gitRevision & ")"
|
||||||
|
|
||||||
|
func shortNimBanner*(): string =
|
||||||
|
const gitPrefix = "git hash: "
|
||||||
|
let tmp = splitLines(nimBanner)
|
||||||
|
if tmp.len == 0:
|
||||||
|
return
|
||||||
|
var gitHash = ""
|
||||||
|
for line in tmp:
|
||||||
|
if line.startsWith(gitPrefix) and line.len > 8 + gitPrefix.len:
|
||||||
|
gitHash = line[gitPrefix.len..<gitPrefix.len + 8]
|
||||||
|
|
||||||
|
if gitHash.len > 0:
|
||||||
|
tmp[0] & " (" & gitHash & ")"
|
||||||
|
else:
|
||||||
|
tmp[0]
|
||||||
|
|
130
docs/src/cli.md
130
docs/src/cli.md
|
@ -13,18 +13,8 @@ For example, download a genesis file and then run the following command to start
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
```
|
```
|
||||||
$ ./build/beacon_node --help
|
$ ./beacon_node --help
|
||||||
Nimbus beacon node v0.3.0 (e537ed9
|
Nimbus beacon node v0.3.0 (877a358)
|
||||||
)
|
|
||||||
Copyright (c) 2019-2020 Status Research & Development GmbH
|
|
||||||
|
|
||||||
Nim Compiler Version 1.3.1 [Windows: amd64]
|
|
||||||
Compiled at 2020-04-16
|
|
||||||
Copyright (c) 2006-2020 by Andreas Rumpf
|
|
||||||
|
|
||||||
git hash: b4e9f8e814373fc38741736197d88475663ce758
|
|
||||||
active boot switches: -d:release
|
|
||||||
|
|
||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
|
|
||||||
|
@ -34,24 +24,27 @@ The following options are available:
|
||||||
|
|
||||||
--log-level Sets the log level.
|
--log-level Sets the log level.
|
||||||
--eth1-network The Eth1 network tracked by the beacon node.
|
--eth1-network The Eth1 network tracked by the beacon node.
|
||||||
--quick-start Run in quickstart mode
|
|
||||||
-d, --data-dir The directory where nimbus will store all blockchain data.
|
-d, --data-dir The directory where nimbus will store all blockchain data.
|
||||||
--web3-url URL of the Web3 server to observe Eth1.
|
--web3-url URL of the Web3 server to observe Eth1.
|
||||||
--deposit-contract Address of the deposit contract.
|
--deposit-contract Address of the deposit contract.
|
||||||
-b, --bootstrap-node Specifies one or more bootstrap nodes to use when connecting to the
|
--deposit-contract-block The Eth1 block hash where the deposit contract has been deployed.
|
||||||
network.
|
--non-interactive Do not display interative prompts. Quit on missing configuration.
|
||||||
|
-b, --bootstrap-node Specifies one or more bootstrap nodes to use when connecting to the network.
|
||||||
--bootstrap-file Specifies a line-delimited file of bootstrap Ethereum network addresses.
|
--bootstrap-file Specifies a line-delimited file of bootstrap Ethereum network addresses.
|
||||||
--listen-address Listening address for the Ethereum LibP2P traffic.
|
--listen-address Listening address for the Ethereum LibP2P traffic.
|
||||||
--tcp-port Listening TCP port for Ethereum LibP2P traffic.
|
--tcp-port Listening TCP port for Ethereum LibP2P traffic.
|
||||||
--udp-port Listening UDP port for node discovery.
|
--udp-port Listening UDP port for node discovery.
|
||||||
--max-peers The maximum number of peers to connect to
|
--max-peers The maximum number of peers to connect to.
|
||||||
--nat Specify method to use for determining public address. Must be one of: any,
|
--nat Specify method to use for determining public address. Must be one of: any, none,
|
||||||
none, upnp, pmp, extip:<IP>.
|
upnp, pmp, extip:<IP>.
|
||||||
-v, --validator Path to a validator private key, as generated by makeDeposits.
|
-v, --validator Path to a validator keystore.
|
||||||
|
--validators-dir A directory containing validator keystores.
|
||||||
|
--secrets-dir A directory containing validator keystore passwords.
|
||||||
|
--wallets-dir A directory containing wallet files.
|
||||||
-s, --state-snapshot Json file specifying a recent state snapshot.
|
-s, --state-snapshot Json file specifying a recent state snapshot.
|
||||||
--node-name A name for this node that will appear in the logs. If you set this to
|
--node-name A name for this node that will appear in the logs. If you set this to 'auto', a
|
||||||
'auto', a persistent automatically generated ID will be selected for each
|
persistent automatically generated ID will be selected for each --data-dir
|
||||||
--dataDir folder.
|
folder.
|
||||||
--verify-finalization Specify whether to verify finalization occurs on schedule, for testing.
|
--verify-finalization Specify whether to verify finalization occurs on schedule, for testing.
|
||||||
--stop-at-epoch A positive epoch selects the epoch at which to stop.
|
--stop-at-epoch A positive epoch selects the epoch at which to stop.
|
||||||
--metrics Enable the metrics server.
|
--metrics Enable the metrics server.
|
||||||
|
@ -59,51 +52,92 @@ The following options are available:
|
||||||
--metrics-port Listening HTTP port of the metrics server.
|
--metrics-port Listening HTTP port of the metrics server.
|
||||||
--status-bar Display a status bar at the bottom of the terminal screen.
|
--status-bar Display a status bar at the bottom of the terminal screen.
|
||||||
--status-bar-contents Textual template for the contents of the status bar.
|
--status-bar-contents Textual template for the contents of the status bar.
|
||||||
--rpc Enable the JSON-RPC server
|
--rpc Enable the JSON-RPC server.
|
||||||
--rpc-port HTTP port for the JSON-RPC service.
|
--rpc-port HTTP port for the JSON-RPC service.
|
||||||
--rpc-address Listening address of the RPC server
|
--rpc-address Listening address of the RPC server.
|
||||||
--dump Write SSZ dumps of blocks, attestations and states to data dir
|
--dump Write SSZ dumps of blocks, attestations and states to data dir.
|
||||||
|
|
||||||
Available sub-commands:
|
Available sub-commands:
|
||||||
|
|
||||||
beacon_node importValidator [OPTIONS]...
|
beacon_node_shared_altona_0 createTestnet [OPTIONS]...
|
||||||
|
|
||||||
The following options are available:
|
The following options are available:
|
||||||
|
|
||||||
--keyfile File with validator key to be imported (in hex form).
|
--validators-dir Directory containing validator keystores.
|
||||||
|
--total-validators The number of validator deposits in the newly created chain.
|
||||||
beacon_node createTestnet [OPTIONS]...
|
|
||||||
|
|
||||||
The following options are available:
|
|
||||||
|
|
||||||
-d, --validators-dir Directory containing validator descriptors named 'vXXXXXXX.deposit.json'.
|
|
||||||
--total-validators The number of validators in the newly created chain.
|
|
||||||
--first-validator Index of first validator to add to validator list.
|
--first-validator Index of first validator to add to validator list.
|
||||||
--last-user-validator The last validator index that will free for taking from a testnet
|
--last-user-validator The last validator index that will free for taking from a testnet participant.
|
||||||
participant.
|
|
||||||
--bootstrap-address The public IP address that will be advertised as a bootstrap node for the
|
--bootstrap-address The public IP address that will be advertised as a bootstrap node for the
|
||||||
testnet.
|
testnet.
|
||||||
--bootstrap-port The TCP/UDP port that will be used by the bootstrap node.
|
--bootstrap-port The TCP/UDP port that will be used by the bootstrap node.
|
||||||
-g, --genesis-offset Seconds from now to add to genesis time.
|
--genesis-offset Seconds from now to add to genesis time.
|
||||||
--output-genesis Output file where to write the initial state snapshot.
|
--output-genesis Output file where to write the initial state snapshot.
|
||||||
--with-genesis-root Include a genesis root in 'network.json'.
|
--with-genesis-root Include a genesis root in 'network.json'.
|
||||||
--output-bootstrap-file Output file with list of bootstrap nodes for the network.
|
--output-bootstrap-file Output file with list of bootstrap nodes for the network.
|
||||||
|
|
||||||
beacon_node makeDeposits [OPTIONS]...
|
beacon_node_shared_altona_0 deposits [OPTIONS]... command
|
||||||
|
|
||||||
The following options are available:
|
The following options are available:
|
||||||
|
|
||||||
--quickstart-deposits Number of quick-start deposits to generate.
|
--deposit-private-key Private key of the controlling (sending) account.
|
||||||
--random-deposits Number of secure random deposits to generate.
|
|
||||||
--deposits-dir Folder to write deposits to.
|
|
||||||
--deposit-private-key Private key of the controlling (sending) account
|
|
||||||
--min-delay Minimum possible delay between making two deposits (in seconds)
|
|
||||||
--max-delay Maximum possible delay between making two deposits (in seconds)
|
|
||||||
|
|
||||||
beacon_node query command
|
|
||||||
|
|
||||||
Available sub-commands:
|
Available sub-commands:
|
||||||
|
|
||||||
beacon_node query get <getQueryPath>
|
beacon_node_shared_altona_0 deposits create [OPTIONS]...
|
||||||
<getQueryPath> REST API path to evaluate
|
|
||||||
|
Creates validator keystores and deposits.
|
||||||
|
|
||||||
|
The following options are available:
|
||||||
|
|
||||||
|
--count Number of deposits to generate.
|
||||||
|
--wallet An existing wallet ID. If not specified, a new wallet will be created.
|
||||||
|
--out-deposits-dir Output folder for validator keystores and deposits.
|
||||||
|
--out-secrets-dir Output folder for randomly generated keystore passphrases.
|
||||||
|
--dont-send By default, all created deposits are also immediately sent to the validator
|
||||||
|
deposit contract. You can use this option to prevent this behavior. Use the
|
||||||
|
`deposits send` command to send the deposit transactions at your convenience
|
||||||
|
later.
|
||||||
|
|
||||||
|
beacon_node_shared_altona_0 deposits send [OPTIONS]...
|
||||||
|
|
||||||
|
Sends prepared deposits to the validator deposit contract.
|
||||||
|
|
||||||
|
The following options are available:
|
||||||
|
|
||||||
|
--deposits-dir A folder with validator metadata created by the `deposits create` command.
|
||||||
|
--min-delay Minimum possible delay between making two deposits (in seconds).
|
||||||
|
--max-delay Maximum possible delay between making two deposits (in seconds).
|
||||||
|
|
||||||
|
beacon_node_shared_altona_0 deposits status
|
||||||
|
|
||||||
|
Displays status information about all deposits.
|
||||||
|
|
||||||
|
beacon_node_shared_altona_0 wallets command
|
||||||
|
|
||||||
|
Available sub-commands:
|
||||||
|
|
||||||
|
beacon_node_shared_altona_0 wallets create [OPTIONS]...
|
||||||
|
|
||||||
|
Creates a new EIP-2386 wallet.
|
||||||
|
|
||||||
|
The following options are available:
|
||||||
|
|
||||||
|
--name An easy-to-remember name for the wallet of your choice.
|
||||||
|
--next-account Initial value for the 'nextaccount' property of the wallet.
|
||||||
|
--out Output wallet file.
|
||||||
|
|
||||||
|
beacon_node_shared_altona_0 wallets restore [OPTIONS]...
|
||||||
|
|
||||||
|
Restores a wallet from cold storage.
|
||||||
|
|
||||||
|
The following options are available:
|
||||||
|
|
||||||
|
--name An easy-to-remember name for the wallet of your choice.
|
||||||
|
--deposits Expected number of deposits to recover. If not specified, Nimbus will try to
|
||||||
|
guess the number by inspecting the latest beacon state.
|
||||||
|
--out Output wallet file.
|
||||||
|
|
||||||
|
beacon_node_shared_altona_0 wallets list
|
||||||
|
|
||||||
|
Lists details about all wallets.
|
||||||
```
|
```
|
||||||
|
|
Loading…
Reference in New Issue