@chainsafe/lodestar 1.11.0-dev.bbadfed24a → 1.11.0-dev.cac8bfad70
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.git-data.json +1 -1
- package/README.md +1 -1
- package/lib/applyPreset.js +2 -4
- package/lib/applyPreset.js.map +1 -1
- package/lib/cmds/beacon/handler.d.ts +3 -2
- package/lib/cmds/beacon/handler.js +7 -8
- package/lib/cmds/beacon/handler.js.map +1 -1
- package/lib/cmds/beacon/initBeaconState.js +2 -2
- package/lib/cmds/beacon/initBeaconState.js.map +1 -1
- package/lib/cmds/beacon/initPeerIdAndEnr.d.ts +1 -1
- package/lib/cmds/beacon/initPeerIdAndEnr.js +6 -7
- package/lib/cmds/beacon/initPeerIdAndEnr.js.map +1 -1
- package/lib/cmds/beacon/paths.js +3 -4
- package/lib/cmds/beacon/paths.js.map +1 -1
- package/lib/cmds/bootnode/handler.d.ts +19 -0
- package/lib/cmds/bootnode/handler.js +164 -0
- package/lib/cmds/bootnode/handler.js.map +1 -0
- package/lib/cmds/bootnode/index.d.ts +5 -0
- package/lib/cmds/bootnode/index.js +9 -0
- package/lib/cmds/bootnode/index.js.map +1 -0
- package/lib/cmds/bootnode/options.d.ts +25 -0
- package/lib/cmds/bootnode/options.js +82 -0
- package/lib/cmds/bootnode/options.js.map +1 -0
- package/lib/cmds/dev/handler.js +3 -4
- package/lib/cmds/dev/handler.js.map +1 -1
- package/lib/cmds/dev/options.d.ts +2 -0
- package/lib/cmds/index.js +2 -0
- package/lib/cmds/index.js.map +1 -1
- package/lib/cmds/validator/handler.js +7 -9
- package/lib/cmds/validator/handler.js.map +1 -1
- package/lib/cmds/validator/keymanager/decryptKeystoreDefinitions.js +4 -4
- package/lib/cmds/validator/keymanager/decryptKeystoreDefinitions.js.map +1 -1
- package/lib/cmds/validator/keymanager/decryptKeystores/poolSize.js +1 -2
- package/lib/cmds/validator/keymanager/decryptKeystores/poolSize.js.map +1 -1
- package/lib/cmds/validator/keymanager/impl.js +10 -13
- package/lib/cmds/validator/keymanager/impl.js.map +1 -1
- package/lib/cmds/validator/keymanager/server.js +2 -3
- package/lib/cmds/validator/keymanager/server.js.map +1 -1
- package/lib/cmds/validator/paths.js +1 -2
- package/lib/cmds/validator/paths.js.map +1 -1
- package/lib/cmds/validator/signers/index.js +3 -3
- package/lib/cmds/validator/signers/index.js.map +1 -1
- package/lib/cmds/validator/slashingProtection/export.js +1 -2
- package/lib/cmds/validator/slashingProtection/export.js.map +1 -1
- package/lib/cmds/validator/slashingProtection/import.js +1 -2
- package/lib/cmds/validator/slashingProtection/import.js.map +1 -1
- package/lib/cmds/validator/voluntaryExit.js +3 -2
- package/lib/cmds/validator/voluntaryExit.js.map +1 -1
- package/lib/config/beaconParams.js +2 -4
- package/lib/config/beaconParams.js.map +1 -1
- package/lib/config/peerId.d.ts +1 -1
- package/lib/networks/chiado.d.ts +2 -2
- package/lib/networks/chiado.js +2 -2
- package/lib/networks/chiado.js.map +1 -1
- package/lib/networks/gnosis.d.ts +2 -2
- package/lib/networks/gnosis.js +7 -2
- package/lib/networks/gnosis.js.map +1 -1
- package/lib/networks/goerli.d.ts +3 -3
- package/lib/networks/goerli.js +11 -3
- package/lib/networks/goerli.js.map +1 -1
- package/lib/networks/index.js +1 -1
- package/lib/networks/index.js.map +1 -1
- package/lib/networks/mainnet.d.ts +2 -2
- package/lib/networks/mainnet.js +14 -12
- package/lib/networks/mainnet.js.map +1 -1
- package/lib/networks/ropsten.d.ts +2 -2
- package/lib/networks/ropsten.js +2 -2
- package/lib/networks/ropsten.js.map +1 -1
- package/lib/networks/sepolia.d.ts +2 -2
- package/lib/networks/sepolia.js +5 -2
- package/lib/networks/sepolia.js.map +1 -1
- package/lib/options/beaconNodeOptions/builder.js +1 -2
- package/lib/options/beaconNodeOptions/builder.js.map +1 -1
- package/lib/options/beaconNodeOptions/chain.d.ts +1 -0
- package/lib/options/beaconNodeOptions/chain.js +8 -0
- package/lib/options/beaconNodeOptions/chain.js.map +1 -1
- package/lib/options/beaconNodeOptions/eth1.js +1 -2
- package/lib/options/beaconNodeOptions/eth1.js.map +1 -1
- package/lib/options/beaconNodeOptions/index.d.ts +2 -0
- package/lib/options/beaconNodeOptions/network.d.ts +2 -0
- package/lib/options/beaconNodeOptions/network.js +20 -15
- package/lib/options/beaconNodeOptions/network.js.map +1 -1
- package/lib/options/beaconNodeOptions/sync.js +1 -2
- package/lib/options/beaconNodeOptions/sync.js.map +1 -1
- package/lib/util/ethers.js +4 -4
- package/lib/util/ethers.js.map +1 -1
- package/lib/util/format.d.ts +0 -1
- package/lib/util/format.js +0 -10
- package/lib/util/format.js.map +1 -1
- package/lib/util/gitData/index.js +4 -6
- package/lib/util/gitData/index.js.map +1 -1
- package/lib/util/jwt.js +1 -2
- package/lib/util/jwt.js.map +1 -1
- package/lib/util/logger.js +3 -5
- package/lib/util/logger.js.map +1 -1
- package/lib/util/proposerConfig.js +7 -7
- package/lib/util/proposerConfig.js.map +1 -1
- package/package.json +21 -20
package/.git-data.json
CHANGED
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://discord.gg/aMxzVcr)
|
|
4
4
|
[](https://github.com/ethereum/consensus-specs/releases/tag/v1.1.10)
|
|
5
|
-

|
|
6
6
|

|
|
7
7
|
|
|
8
8
|
> This package is part of [ChainSafe's Lodestar](https://lodestar.chainsafe.io) project
|
package/lib/applyPreset.js
CHANGED
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
//
|
|
13
13
|
// Running this file allows us to keep a static export strategy while NOT requiring users to
|
|
14
14
|
// set LODESTAR_PRESET manually every time.
|
|
15
|
-
var _a;
|
|
16
15
|
// IMPORTANT: only import Lodestar code here which does not import any other Lodestar libraries
|
|
17
16
|
import { setActivePreset, presetFromJson, PresetName } from "@lodestar/params/setPreset";
|
|
18
17
|
import { readFile } from "./util/file.js";
|
|
@@ -50,7 +49,7 @@ else if (process.argv[2] === "dev") {
|
|
|
50
49
|
if (presetFile) {
|
|
51
50
|
// Override the active preset with custom values from file
|
|
52
51
|
// Do not modify the preset to use as a base by passing null
|
|
53
|
-
setActivePreset(null, presetFromJson(
|
|
52
|
+
setActivePreset(null, presetFromJson(readFile(presetFile) ?? {}));
|
|
54
53
|
}
|
|
55
54
|
/**
|
|
56
55
|
* Valid syntax
|
|
@@ -60,11 +59,10 @@ if (presetFile) {
|
|
|
60
59
|
function valueOfArg(argName) {
|
|
61
60
|
// Syntax `--preset minimal`
|
|
62
61
|
// process.argv = ["--preset", "minimal"];
|
|
63
|
-
var _a;
|
|
64
62
|
{
|
|
65
63
|
const index = process.argv.indexOf(`--${argName}`);
|
|
66
64
|
if (index > -1) {
|
|
67
|
-
return
|
|
65
|
+
return process.argv[index + 1] ?? "";
|
|
68
66
|
}
|
|
69
67
|
}
|
|
70
68
|
// Syntax `--preset=minimal`
|
package/lib/applyPreset.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applyPreset.js","sourceRoot":"","sources":["../src/applyPreset.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,EAAE;AACF,eAAe;AACf,EAAE;AACF,yGAAyG;AACzG,sDAAsD;AACtD,EAAE;AACF,qGAAqG;AACrG,+DAA+D;AAC/D,kEAAkE;AAClE,kEAAkE;AAClE,EAAE;AACF,4FAA4F;AAC5F,2CAA2C
|
|
1
|
+
{"version":3,"file":"applyPreset.js","sourceRoot":"","sources":["../src/applyPreset.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,EAAE;AACF,eAAe;AACf,EAAE;AACF,yGAAyG;AACzG,sDAAsD;AACtD,EAAE;AACF,qGAAqG;AACrG,+DAA+D;AAC/D,kEAAkE;AAClE,kEAAkE;AAClE,EAAE;AACF,4FAA4F;AAC5F,2CAA2C;AAE3C,+FAA+F;AAC/F,OAAO,EAAC,eAAe,EAAE,cAAc,EAAE,UAAU,EAAC,MAAM,4BAA4B,CAAC;AACvF,OAAO,EAAC,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAExC,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;AACtC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;AACpC,MAAM,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;AAE5C,+BAA+B;AAC/B,IAAI,MAAM,EAAE;IACV,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,MAAM,CAAC;CACtC;AAED,8FAA8F;KACzF,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE;IACpC,QAAQ;CACT;AAED,8BAA8B;KACzB,IAAI,OAAO,EAAE;IAChB,IAAI,OAAO,KAAK,KAAK,EAAE;QACrB,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,SAAS,CAAC;QACxC,8DAA8D;QAC9D,gEAAgE;QAChE,eAAe,CAAC,UAAU,CAAC,OAAO,EAAE,EAAC,uBAAuB,EAAE,IAAI,EAAC,CAAC,CAAC;KACtE;SAAM,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,QAAQ,EAAE;QACvD,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,QAAQ,CAAC;KACxC;CACF;AAED,mEAAmE;KAC9D,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;IAClC,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,SAAS,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAC;IACrC,8DAA8D;IAC9D,gEAAgE;IAChE,eAAe,CAAC,UAAU,CAAC,OAAO,EAAE,EAAC,uBAAuB,EAAE,IAAI,EAAC,CAAC,CAAC;CACtE;AAED,IAAI,UAAU,EAAE;IACd,0DAA0D;IAC1D,4DAA4D;IAC5D,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;CACnE;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,OAAe;IACjC,4BAA4B;IAC5B,0CAA0C;IAE1C;QACE,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC;QACnD,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;SACtC;KACF;IAED,4BAA4B;IAC5B;QACE,MAAM,MAAM,GAAG,KAAK,OAAO,GAAG,CAAC;QAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,IAAI,IAAI,EAAE;YACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAClC;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ChainForkConfig } from "@lodestar/config";
|
|
2
2
|
import { LoggerNode } from "@lodestar/logger/node";
|
|
3
3
|
import { GlobalArgs } from "../../options/index.js";
|
|
4
|
+
import { LogArgs } from "../../options/logOptions.js";
|
|
4
5
|
import { BeaconArgs } from "./options.js";
|
|
5
6
|
/**
|
|
6
7
|
* Runs a beacon node.
|
|
@@ -19,8 +20,8 @@ export declare function beaconHandlerInit(args: BeaconArgs & GlobalArgs): Promis
|
|
|
19
20
|
network: string;
|
|
20
21
|
version: string;
|
|
21
22
|
commit: string;
|
|
22
|
-
peerId: import("@libp2p/interface
|
|
23
|
+
peerId: import("@libp2p/interface/dist/src/peer-id/index.js").PeerId;
|
|
23
24
|
logger: LoggerNode;
|
|
24
25
|
}>;
|
|
25
|
-
export declare function initLogger(args:
|
|
26
|
+
export declare function initLogger(args: LogArgs & Pick<GlobalArgs, "dataDir">, dataDir: string, config: ChainForkConfig, fileName?: string): LoggerNode;
|
|
26
27
|
//# sourceMappingURL=handler.d.ts.map
|
|
@@ -68,9 +68,8 @@ export async function beaconHandler(args) {
|
|
|
68
68
|
const { persistInvalidSszObjectsDir } = args;
|
|
69
69
|
const pruneInvalidSSZObjectsInterval = persistInvalidSszObjectsDir
|
|
70
70
|
? setInterval(() => {
|
|
71
|
-
var _a;
|
|
72
71
|
try {
|
|
73
|
-
pruneOldFilesInDir(persistInvalidSszObjectsDir, (
|
|
72
|
+
pruneOldFilesInDir(persistInvalidSszObjectsDir, (args.persistInvalidSszObjectsRetentionHours ?? DEFAULT_RETENTION_SSZ_OBJECTS_HOURS) * HOURS_TO_MS);
|
|
74
73
|
}
|
|
75
74
|
catch (e) {
|
|
76
75
|
logger.warn("Error pruning invalid SSZ objects", { persistInvalidSszObjectsDir }, e);
|
|
@@ -125,7 +124,6 @@ export async function beaconHandler(args) {
|
|
|
125
124
|
/** Separate function to simplify unit testing of options merging */
|
|
126
125
|
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
127
126
|
export async function beaconHandlerInit(args) {
|
|
128
|
-
var _a, _b, _c;
|
|
129
127
|
const { config, network } = getBeaconConfigFromArgs(args);
|
|
130
128
|
const beaconNodeOptions = new BeaconNodeOptions(parseBeaconNodeArgs(args));
|
|
131
129
|
const { version, commit } = getVersionData();
|
|
@@ -137,9 +135,10 @@ export async function beaconHandlerInit(args) {
|
|
|
137
135
|
beaconNodeOptions.set({ metrics: { metadata: { version, commit, network } } });
|
|
138
136
|
// Add detailed version string for API node/version endpoint
|
|
139
137
|
beaconNodeOptions.set({ api: { version } });
|
|
140
|
-
//
|
|
141
|
-
const
|
|
142
|
-
|
|
138
|
+
// Combine bootnodes from different sources
|
|
139
|
+
const bootnodes = (beaconNodeOptions.get().network?.discv5?.bootEnrs ?? []).concat(args.bootnodesFile ? readBootnodes(args.bootnodesFile) : [], isKnownNetworkName(network) ? await getNetworkBootnodes(network) : []);
|
|
140
|
+
// Deduplicate and set combined bootnodes
|
|
141
|
+
beaconNodeOptions.set({ network: { discv5: { bootEnrs: [...new Set(bootnodes)] } } });
|
|
143
142
|
// Set known depositContractDeployBlock
|
|
144
143
|
if (isKnownNetworkName(network)) {
|
|
145
144
|
const { depositContractDeployBlock } = getNetworkData(network);
|
|
@@ -162,8 +161,8 @@ export async function beaconHandlerInit(args) {
|
|
|
162
161
|
const options = beaconNodeOptions.getWithDefaults();
|
|
163
162
|
return { config, options, beaconPaths, network, version, commit, peerId, logger };
|
|
164
163
|
}
|
|
165
|
-
export function initLogger(args, dataDir, config) {
|
|
166
|
-
const defaultLogFilepath = path.join(dataDir,
|
|
164
|
+
export function initLogger(args, dataDir, config, fileName = "beacon.log") {
|
|
165
|
+
const defaultLogFilepath = path.join(dataDir, fileName);
|
|
167
166
|
const logger = getNodeLogger(parseLoggerArgs(args, { defaultLogFilepath }, config));
|
|
168
167
|
try {
|
|
169
168
|
cleanOldLogFiles(args, { defaultLogFilepath });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/beacon/handler.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;AACrC,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAkB,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAa,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAa,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAC,iBAAiB,EAAE,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAC,mBAAmB,EAAE,cAAc,EAAE,kBAAkB,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EACL,kBAAkB,EAClB,KAAK,EACL,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/beacon/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,7 +108,7 @@ async function readWSState(lastDbState, wssOpts, chainForkConfig, db, logger) {
|
|
|
108
108
|
const stateBytes = await downloadOrLoadFile(checkpointState);
|
|
109
109
|
const wsState = getStateTypeFromBytes(chainForkConfig, stateBytes).deserializeToViewDU(stateBytes);
|
|
110
110
|
const config = createBeaconConfig(chainForkConfig, wsState.genesisValidatorsRoot);
|
|
111
|
-
const store = lastDbState
|
|
111
|
+
const store = lastDbState ?? wsState;
|
|
112
112
|
const checkpoint = wssCheckpoint ? getCheckpointFromArg(wssCheckpoint) : getCheckpointFromState(wsState);
|
|
113
113
|
return initAndVerifyWeakSubjectivityState(config, db, logger, store, wsState, checkpoint);
|
|
114
114
|
}
|
|
@@ -130,7 +130,7 @@ async function fetchWSStateFromBeaconApi(lastDbState, wssOpts, chainForkConfig,
|
|
|
130
130
|
}
|
|
131
131
|
const { wsState, wsCheckpoint } = await fetchWeakSubjectivityState(chainForkConfig, logger, wssOpts);
|
|
132
132
|
const config = createBeaconConfig(chainForkConfig, wsState.genesisValidatorsRoot);
|
|
133
|
-
const store = lastDbState
|
|
133
|
+
const store = lastDbState ?? wsState;
|
|
134
134
|
return initAndVerifyWeakSubjectivityState(config, db, logger, store, wsState, wsCheckpoint);
|
|
135
135
|
}
|
|
136
136
|
//# sourceMappingURL=initBeaconState.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initBeaconState.js","sourceRoot":"","sources":["../../../src/cmds/beacon/initBeaconState.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"initBeaconState.js","sourceRoot":"","sources":["../../../src/cmds/beacon/initBeaconState.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,14 +43,13 @@ export function isLocalMultiAddr(multiaddr) {
|
|
|
43
43
|
return false;
|
|
44
44
|
}
|
|
45
45
|
export function overwriteEnrWithCliArgs(enr, args, logger) {
|
|
46
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
47
46
|
const { port, discoveryPort, port6, discoveryPort6 } = parseListenArgs(args);
|
|
48
|
-
enr.ip =
|
|
49
|
-
enr.tcp =
|
|
50
|
-
enr.udp =
|
|
51
|
-
enr.ip6 =
|
|
52
|
-
enr.tcp6 =
|
|
53
|
-
enr.udp6 =
|
|
47
|
+
enr.ip = args["enr.ip"] ?? enr.ip;
|
|
48
|
+
enr.tcp = args["enr.tcp"] ?? port ?? enr.tcp;
|
|
49
|
+
enr.udp = args["enr.udp"] ?? discoveryPort ?? enr.udp;
|
|
50
|
+
enr.ip6 = args["enr.ip6"] ?? enr.ip6;
|
|
51
|
+
enr.tcp6 = args["enr.tcp6"] ?? port6 ?? enr.tcp6;
|
|
52
|
+
enr.udp6 = args["enr.udp6"] ?? discoveryPort6 ?? enr.udp6;
|
|
54
53
|
function testMultiaddrForLocal(mu, ip4) {
|
|
55
54
|
const isLocal = isLocalMultiAddr(mu);
|
|
56
55
|
if (args.nat) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initPeerIdAndEnr.js","sourceRoot":"","sources":["../../../src/cmds/beacon/initPeerIdAndEnr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAC,uBAAuB,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAEvE,OAAO,EAAC,YAAY,EAAE,UAAU,EAAC,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAC,eAAe,EAAC,MAAM,4CAA4C,CAAC;AAG3E;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAgC;IAC/D,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IAE7B,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;IAC1C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;QACtD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;KAC1C;IAED,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,MAAM,GAAY,MAAM,KAAK,CAAC,CAAC;IACrC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAExB,IAAI,CAAC,EAAE,EAAE;QACP,OAAO,KAAK,CAAC;KACd;IAED,MAAM,KAAK,GAAG,MAAM;QAClB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAC1B,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;aAC1B,IAAI,CAAC,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,iBAAiB,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;QACzD,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,IAAI,EAAE,EAAE;YACtD,2FAA2F;YAC3F,gDAAgD;YAChD,iFAAiF;YACjF,8EAA8E;YAC9E,IAAI,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,gBAAgB,CAAC,OAAO,KAAK,KAAK,EAAE;gBAClG,OAAO,IAAI,CAAC;aACb;SACF;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,GAAgB,EAAE,IAAgB,EAAE,MAAc
|
|
1
|
+
{"version":3,"file":"initPeerIdAndEnr.js","sourceRoot":"","sources":["../../../src/cmds/beacon/initPeerIdAndEnr.ts"],"names":[],"mappings":"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"}
|
package/lib/cmds/beacon/paths.js
CHANGED
|
@@ -16,14 +16,13 @@ import { getGlobalPaths } from "../../paths/global.js";
|
|
|
16
16
|
export function getBeaconPaths(
|
|
17
17
|
// Using Pick<GlobalArgs, "dataDir"> make changes in GlobalArgs throw a type error here
|
|
18
18
|
args, network) {
|
|
19
|
-
var _a, _b, _c;
|
|
20
19
|
// Compute global paths first
|
|
21
20
|
const globalPaths = getGlobalPaths(args, network);
|
|
22
21
|
const dataDir = globalPaths.dataDir;
|
|
23
22
|
const beaconDir = dataDir;
|
|
24
|
-
const dbDir =
|
|
25
|
-
const persistInvalidSszObjectsDir =
|
|
26
|
-
const peerStoreDir =
|
|
23
|
+
const dbDir = args.dbDir ?? path.join(beaconDir, "chain-db");
|
|
24
|
+
const persistInvalidSszObjectsDir = args.persistInvalidSszObjectsDir ?? path.join(beaconDir, "invalidSszObjects");
|
|
25
|
+
const peerStoreDir = args.peerStoreDir ?? path.join(beaconDir, "peerstore");
|
|
27
26
|
return {
|
|
28
27
|
...globalPaths,
|
|
29
28
|
beaconDir,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/cmds/beacon/paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAC,cAAc,EAAc,MAAM,uBAAuB,CAAC;AAgBlE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc;AAC5B,uFAAuF;AACvF,IAAsD,EACtD,OAAe
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/cmds/beacon/paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAC,cAAc,EAAc,MAAM,uBAAuB,CAAC;AAgBlE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc;AAC5B,uFAAuF;AACvF,IAAsD,EACtD,OAAe;IAEf,6BAA6B;IAC7B,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAElD,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;IACpC,MAAM,SAAS,GAAG,OAAO,CAAC;IAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC7D,MAAM,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAClH,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAE5E,OAAO;QACL,GAAG,WAAW;QACd,SAAS;QACT,KAAK;QACL,2BAA2B;QAC3B,YAAY;KACb,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC,EAAC,OAAO,EAAE,UAAU,EAAC,EAAE,UAAU,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { GlobalArgs } from "../../options/index.js";
|
|
2
|
+
import { BootnodeArgs } from "./options.js";
|
|
3
|
+
/**
|
|
4
|
+
* Runs a bootnode.
|
|
5
|
+
*/
|
|
6
|
+
export declare function bootnodeHandler(args: BootnodeArgs & GlobalArgs): Promise<void>;
|
|
7
|
+
/** Separate function to simplify unit testing of options merging */
|
|
8
|
+
export declare function bootnodeHandlerInit(args: BootnodeArgs & GlobalArgs): Promise<{
|
|
9
|
+
discv5Args: import("@lodestar/beacon-node/lib/network/discv5/types.js").LodestarDiscv5Opts;
|
|
10
|
+
metricsArgs: import("@lodestar/beacon-node/lib/metrics/options.js").MetricsOptions;
|
|
11
|
+
bootnodeDir: string;
|
|
12
|
+
network: string;
|
|
13
|
+
version: string;
|
|
14
|
+
commit: string;
|
|
15
|
+
peerId: import("@libp2p/interface/dist/src/peer-id/index.js").PeerId;
|
|
16
|
+
enr: import("@chainsafe/discv5").SignableENR;
|
|
17
|
+
logger: import("@lodestar/logger/lib/node.js").LoggerNode;
|
|
18
|
+
}>;
|
|
19
|
+
//# sourceMappingURL=handler.d.ts.map
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { multiaddr } from "@multiformats/multiaddr";
|
|
3
|
+
import { Discv5, ENR } from "@chainsafe/discv5";
|
|
4
|
+
import { ErrorAborted } from "@lodestar/utils";
|
|
5
|
+
import { RegistryMetricCreator, getHttpMetricsServer } from "@lodestar/beacon-node";
|
|
6
|
+
import { getBeaconConfigFromArgs } from "../../config/index.js";
|
|
7
|
+
import { getNetworkBootnodes, isKnownNetworkName, readBootnodes } from "../../networks/index.js";
|
|
8
|
+
import { onGracefulShutdown, mkdir, writeFile600Perm } from "../../util/index.js";
|
|
9
|
+
import { getVersionData } from "../../util/version.js";
|
|
10
|
+
import { initPeerIdAndEnr } from "../beacon/initPeerIdAndEnr.js";
|
|
11
|
+
import { parseArgs as parseMetricsArgs } from "../../options/beaconNodeOptions/metrics.js";
|
|
12
|
+
import { parseArgs as parseNetworkArgs } from "../../options/beaconNodeOptions/network.js";
|
|
13
|
+
import { getBeaconPaths } from "../beacon/paths.js";
|
|
14
|
+
import { initLogger } from "../beacon/handler.js";
|
|
15
|
+
/**
|
|
16
|
+
* Runs a bootnode.
|
|
17
|
+
*/
|
|
18
|
+
export async function bootnodeHandler(args) {
|
|
19
|
+
const { discv5Args, metricsArgs, bootnodeDir, network, version, commit, peerId, enr, logger } = await bootnodeHandlerInit(args);
|
|
20
|
+
const abortController = new AbortController();
|
|
21
|
+
const bindAddrs = discv5Args.bindAddrs;
|
|
22
|
+
logger.info("Lodestar Bootnode", { network, version, commit });
|
|
23
|
+
logger.info("Bind address", bindAddrs);
|
|
24
|
+
logger.info("Advertised address", {
|
|
25
|
+
ip4: enr.getLocationMultiaddr("udp4")?.toString(),
|
|
26
|
+
ip6: enr.getLocationMultiaddr("udp6")?.toString(),
|
|
27
|
+
});
|
|
28
|
+
logger.info("Identity", { peerId: peerId.toString(), nodeId: enr.nodeId });
|
|
29
|
+
logger.info("ENR", { enr: enr.encodeTxt() });
|
|
30
|
+
// bootnode setup
|
|
31
|
+
try {
|
|
32
|
+
let metricsRegistry;
|
|
33
|
+
let metricsServer;
|
|
34
|
+
if (metricsArgs.enabled) {
|
|
35
|
+
metricsRegistry = new RegistryMetricCreator();
|
|
36
|
+
metricsRegistry.static({
|
|
37
|
+
name: "bootnode_version",
|
|
38
|
+
help: "Bootnode version",
|
|
39
|
+
value: { version, commit, network },
|
|
40
|
+
});
|
|
41
|
+
metricsServer = await getHttpMetricsServer(metricsArgs, { register: metricsRegistry, logger });
|
|
42
|
+
}
|
|
43
|
+
const discv5 = Discv5.create({
|
|
44
|
+
enr,
|
|
45
|
+
peerId,
|
|
46
|
+
bindAddrs: {
|
|
47
|
+
ip4: (bindAddrs.ip4 ? multiaddr(bindAddrs.ip4) : undefined),
|
|
48
|
+
ip6: bindAddrs.ip6 ? multiaddr(bindAddrs.ip6) : undefined,
|
|
49
|
+
},
|
|
50
|
+
config: { enrUpdate: !enr.ip && !enr.ip6 },
|
|
51
|
+
metricsRegistry,
|
|
52
|
+
});
|
|
53
|
+
// If there are any bootnodes, add them to the routing table
|
|
54
|
+
for (const bootEnrStr of Array.from(new Set(discv5Args.bootEnrs).values())) {
|
|
55
|
+
const bootEnr = ENR.decodeTxt(bootEnrStr);
|
|
56
|
+
logger.info("Adding bootnode", {
|
|
57
|
+
ip4: bootEnr.getLocationMultiaddr("udp4")?.toString(),
|
|
58
|
+
ip6: bootEnr.getLocationMultiaddr("udp6")?.toString(),
|
|
59
|
+
peerId: (await bootEnr.peerId()).toString(),
|
|
60
|
+
nodeId: enr.nodeId,
|
|
61
|
+
});
|
|
62
|
+
discv5.addEnr(bootEnr);
|
|
63
|
+
}
|
|
64
|
+
// start the server
|
|
65
|
+
await discv5.start();
|
|
66
|
+
// if there are peers in the local routing table, establish a session by running a query
|
|
67
|
+
if (discv5.kadValues().length) {
|
|
68
|
+
void discv5.findRandomNode();
|
|
69
|
+
}
|
|
70
|
+
discv5.on("multiaddrUpdated", (addr) => {
|
|
71
|
+
logger.info("Advertised socket address updated", { addr: addr.toString() });
|
|
72
|
+
});
|
|
73
|
+
// respond with metrics every 10 seconds
|
|
74
|
+
const printInterval = setInterval(() => {
|
|
75
|
+
let ip4Only = 0;
|
|
76
|
+
let ip6Only = 0;
|
|
77
|
+
let ip4ip6 = 0;
|
|
78
|
+
let unreachable = 0;
|
|
79
|
+
for (const kadEnr of discv5.kadValues()) {
|
|
80
|
+
const hasIp4 = kadEnr.getLocationMultiaddr("udp4");
|
|
81
|
+
const hasIp6 = kadEnr.getLocationMultiaddr("udp6");
|
|
82
|
+
if (hasIp4 && hasIp6) {
|
|
83
|
+
ip4ip6++;
|
|
84
|
+
}
|
|
85
|
+
else if (hasIp4) {
|
|
86
|
+
ip4Only++;
|
|
87
|
+
}
|
|
88
|
+
else if (hasIp6) {
|
|
89
|
+
ip6Only++;
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
unreachable++;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
logger.info("Server metrics", {
|
|
96
|
+
connectedPeers: discv5.connectedPeerCount,
|
|
97
|
+
activeSessions: discv5.sessionService.sessionsSize(),
|
|
98
|
+
ip4Nodes: ip4Only,
|
|
99
|
+
ip6Nodes: ip6Only,
|
|
100
|
+
ip4AndIp6Nodes: ip4ip6,
|
|
101
|
+
unreachableNodes: unreachable,
|
|
102
|
+
});
|
|
103
|
+
}, 10000);
|
|
104
|
+
// Intercept SIGINT signal, to perform final ops before exiting
|
|
105
|
+
onGracefulShutdown(async () => {
|
|
106
|
+
if (args.persistNetworkIdentity) {
|
|
107
|
+
try {
|
|
108
|
+
const enrPath = path.join(bootnodeDir, "enr");
|
|
109
|
+
writeFile600Perm(enrPath, enr.encodeTxt());
|
|
110
|
+
}
|
|
111
|
+
catch (e) {
|
|
112
|
+
logger.warn("Unable to persist enr", {}, e);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
abortController.abort();
|
|
116
|
+
}, logger.info.bind(logger));
|
|
117
|
+
abortController.signal.addEventListener("abort", async () => {
|
|
118
|
+
try {
|
|
119
|
+
discv5.removeAllListeners();
|
|
120
|
+
clearInterval(printInterval);
|
|
121
|
+
await metricsServer?.close();
|
|
122
|
+
await discv5.stop();
|
|
123
|
+
logger.debug("Bootnode closed");
|
|
124
|
+
}
|
|
125
|
+
catch (e) {
|
|
126
|
+
logger.error("Error closing bootnode", {}, e);
|
|
127
|
+
// Must explicitly exit process due to potential active handles
|
|
128
|
+
process.exit(1);
|
|
129
|
+
}
|
|
130
|
+
}, { once: true });
|
|
131
|
+
}
|
|
132
|
+
catch (e) {
|
|
133
|
+
if (e instanceof ErrorAborted) {
|
|
134
|
+
logger.info(e.message); // Let the user know the abort was received but don't print as error
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
throw e;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
/** Separate function to simplify unit testing of options merging */
|
|
142
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
143
|
+
export async function bootnodeHandlerInit(args) {
|
|
144
|
+
const { config, network } = getBeaconConfigFromArgs(args);
|
|
145
|
+
const { version, commit } = getVersionData();
|
|
146
|
+
const beaconPaths = getBeaconPaths(args, network);
|
|
147
|
+
// Use a separate directory to store bootnode enr + peer-id
|
|
148
|
+
const bootnodeDir = path.join(beaconPaths.dataDir, "bootnode");
|
|
149
|
+
const { discv5: discv5Args } = parseNetworkArgs(args);
|
|
150
|
+
const metricsArgs = parseMetricsArgs(args);
|
|
151
|
+
if (!discv5Args) {
|
|
152
|
+
// Unreachable because bootnode requires discv5 to be enabled - duh
|
|
153
|
+
throw new Error("unreachable - bootnode requires discv5 to be enabled");
|
|
154
|
+
}
|
|
155
|
+
// initialize directories
|
|
156
|
+
mkdir(beaconPaths.dataDir);
|
|
157
|
+
mkdir(bootnodeDir);
|
|
158
|
+
// Fetch extra bootnodes
|
|
159
|
+
discv5Args.bootEnrs = (discv5Args.bootEnrs ?? []).concat(args.bootnodesFile ? readBootnodes(args.bootnodesFile) : [], isKnownNetworkName(network) ? await getNetworkBootnodes(network) : []);
|
|
160
|
+
const logger = initLogger(args, beaconPaths.dataDir, config, "bootnode.log");
|
|
161
|
+
const { peerId, enr } = await initPeerIdAndEnr(args, bootnodeDir, logger);
|
|
162
|
+
return { discv5Args, metricsArgs, bootnodeDir, network, version, commit, peerId, enr, logger };
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/bootnode/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { bootnodeOptions } from "./options.js";
|
|
2
|
+
import { bootnodeHandler } from "./handler.js";
|
|
3
|
+
export const bootnode = {
|
|
4
|
+
command: "bootnode",
|
|
5
|
+
describe: "Run a discv5 bootnode. This will NOT perform any beacon node functions, rather, it will run a discv5 service that allows nodes on the network to discover one another.",
|
|
6
|
+
options: bootnodeOptions,
|
|
7
|
+
handler: bootnodeHandler,
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cmds/bootnode/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,eAAe,EAAe,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAE7C,MAAM,CAAC,MAAM,QAAQ,GAAyC;IAC5D,OAAO,EAAE,UAAU;IACnB,QAAQ,EACN,wKAAwK;IAC1K,OAAO,EAAE,eAAkD;IAC3D,OAAO,EAAE,eAAe;CACzB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Options } from "yargs";
|
|
2
|
+
import { LogArgs } from "../../options/logOptions.js";
|
|
3
|
+
import { CliCommandOptions } from "../../util/index.js";
|
|
4
|
+
import { MetricsArgs } from "../../options/beaconNodeOptions/metrics.js";
|
|
5
|
+
type BootnodeExtraArgs = {
|
|
6
|
+
listenAddress?: string;
|
|
7
|
+
port?: number;
|
|
8
|
+
listenAddress6?: string;
|
|
9
|
+
port6?: number;
|
|
10
|
+
bootnodes?: string[];
|
|
11
|
+
bootnodesFile?: string;
|
|
12
|
+
persistNetworkIdentity?: boolean;
|
|
13
|
+
"enr.ip"?: string;
|
|
14
|
+
"enr.ip6"?: string;
|
|
15
|
+
"enr.udp"?: number;
|
|
16
|
+
"enr.udp6"?: number;
|
|
17
|
+
nat?: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare const bootnodeExtraOptions: CliCommandOptions<BootnodeExtraArgs>;
|
|
20
|
+
export type BootnodeArgs = BootnodeExtraArgs & LogArgs & MetricsArgs;
|
|
21
|
+
export declare const bootnodeOptions: {
|
|
22
|
+
[k: string]: Options;
|
|
23
|
+
};
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=options.d.ts.map
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { logOptions } from "../../options/logOptions.js";
|
|
2
|
+
import { options as metricsOptions } from "../../options/beaconNodeOptions/metrics.js";
|
|
3
|
+
import { defaultListenAddress, defaultP2pPort, defaultP2pPort6 } from "../../options/beaconNodeOptions/network.js";
|
|
4
|
+
export const bootnodeExtraOptions = {
|
|
5
|
+
listenAddress: {
|
|
6
|
+
type: "string",
|
|
7
|
+
description: "The IPv4 address to listen for discv5 connections",
|
|
8
|
+
defaultDescription: defaultListenAddress,
|
|
9
|
+
group: "network",
|
|
10
|
+
},
|
|
11
|
+
port: {
|
|
12
|
+
alias: "discoveryPort",
|
|
13
|
+
description: "The UDP port to listen on",
|
|
14
|
+
type: "number",
|
|
15
|
+
defaultDescription: String(defaultP2pPort),
|
|
16
|
+
group: "network",
|
|
17
|
+
},
|
|
18
|
+
listenAddress6: {
|
|
19
|
+
type: "string",
|
|
20
|
+
description: "The IPv6 address to listen for discv5 connections",
|
|
21
|
+
group: "network",
|
|
22
|
+
},
|
|
23
|
+
port6: {
|
|
24
|
+
alias: "discoveryPort6",
|
|
25
|
+
description: "The UDP port to listen on",
|
|
26
|
+
type: "number",
|
|
27
|
+
defaultDescription: String(defaultP2pPort6),
|
|
28
|
+
group: "network",
|
|
29
|
+
},
|
|
30
|
+
bootnodes: {
|
|
31
|
+
type: "array",
|
|
32
|
+
description: "Additional bootnodes for discv5 discovery",
|
|
33
|
+
defaultDescription: JSON.stringify([]),
|
|
34
|
+
// Each bootnode entry could be comma separated, just deserialize it into a single array
|
|
35
|
+
// as comma separated entries are generally most friendly in ansible kind of setups, i.e.
|
|
36
|
+
// [ "en1", "en2,en3" ] => [ 'en1', 'en2', 'en3' ]
|
|
37
|
+
coerce: (args) => args.map((item) => item.split(",")).flat(1),
|
|
38
|
+
group: "network",
|
|
39
|
+
},
|
|
40
|
+
bootnodesFile: {
|
|
41
|
+
description: "Additional bootnodes for discv5 discovery file path",
|
|
42
|
+
type: "string",
|
|
43
|
+
group: "network",
|
|
44
|
+
},
|
|
45
|
+
persistNetworkIdentity: {
|
|
46
|
+
description: "Whether to reuse the same peer-id across restarts",
|
|
47
|
+
default: true,
|
|
48
|
+
type: "boolean",
|
|
49
|
+
group: "network",
|
|
50
|
+
},
|
|
51
|
+
"enr.ip": {
|
|
52
|
+
description: "Override ENR IP entry",
|
|
53
|
+
type: "string",
|
|
54
|
+
group: "enr",
|
|
55
|
+
},
|
|
56
|
+
"enr.udp": {
|
|
57
|
+
description: "Override ENR UDP entry",
|
|
58
|
+
type: "number",
|
|
59
|
+
group: "enr",
|
|
60
|
+
},
|
|
61
|
+
"enr.ip6": {
|
|
62
|
+
description: "Override ENR IPv6 entry",
|
|
63
|
+
type: "string",
|
|
64
|
+
group: "enr",
|
|
65
|
+
},
|
|
66
|
+
"enr.udp6": {
|
|
67
|
+
description: "Override ENR (IPv6-specific) UDP entry",
|
|
68
|
+
type: "number",
|
|
69
|
+
group: "enr",
|
|
70
|
+
},
|
|
71
|
+
nat: {
|
|
72
|
+
type: "boolean",
|
|
73
|
+
description: "Allow ENR configuration of non-local addresses",
|
|
74
|
+
group: "enr",
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
export const bootnodeOptions = {
|
|
78
|
+
...bootnodeExtraOptions,
|
|
79
|
+
...logOptions,
|
|
80
|
+
...metricsOptions,
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/bootnode/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAc,OAAO,IAAI,cAAc,EAAC,MAAM,4CAA4C,CAAC;AAClG,OAAO,EAAC,oBAAoB,EAAE,cAAc,EAAE,eAAe,EAAC,MAAM,4CAA4C,CAAC;AAiBjH,MAAM,CAAC,MAAM,oBAAoB,GAAyC;IACxE,aAAa,EAAE;QACb,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,mDAAmD;QAChE,kBAAkB,EAAE,oBAAoB;QACxC,KAAK,EAAE,SAAS;KACjB;IAED,IAAI,EAAE;QACJ,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,2BAA2B;QACxC,IAAI,EAAE,QAAQ;QACd,kBAAkB,EAAE,MAAM,CAAC,cAAc,CAAC;QAC1C,KAAK,EAAE,SAAS;KACjB;IAED,cAAc,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,mDAAmD;QAChE,KAAK,EAAE,SAAS;KACjB;IAED,KAAK,EAAE;QACL,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,2BAA2B;QACxC,IAAI,EAAE,QAAQ;QACd,kBAAkB,EAAE,MAAM,CAAC,eAAe,CAAC;QAC3C,KAAK,EAAE,SAAS;KACjB;IAED,SAAS,EAAE;QACT,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,2CAA2C;QACxD,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACtC,wFAAwF;QACxF,yFAAyF;QACzF,kDAAkD;QAClD,MAAM,EAAE,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACvE,KAAK,EAAE,SAAS;KACjB;IAED,aAAa,EAAE;QACb,WAAW,EAAE,qDAAqD;QAClE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,SAAS;KACjB;IAED,sBAAsB,EAAE;QACtB,WAAW,EAAE,mDAAmD;QAChE,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;KACjB;IAED,QAAQ,EAAE;QACR,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IACD,SAAS,EAAE;QACT,WAAW,EAAE,wBAAwB;QACrC,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IACD,SAAS,EAAE;QACT,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IACD,UAAU,EAAE;QACV,WAAW,EAAE,wCAAwC;QACrD,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IACD,GAAG,EAAE;QACH,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,gDAAgD;QAC7D,KAAK,EAAE,KAAK;KACb;CACF,CAAC;AAIF,MAAM,CAAC,MAAM,eAAe,GAA2B;IACrD,GAAG,oBAAoB;IACvB,GAAG,UAAU;IACb,GAAG,cAAc;CAClB,CAAC"}
|