From 29c8bc4d935a191776fe00052c1a4bbea93cffda Mon Sep 17 00:00:00 2001 From: Cayman Date: Fri, 8 Sep 2023 15:19:55 -0400 Subject: [PATCH] chore: more cleanup --- .../cli/src/cmds/beacon/initPeerIdAndEnr.ts | 47 ++++++++++++------- 1 file changed, 29 insertions(+), 18 deletions(-) diff --git a/packages/cli/src/cmds/beacon/initPeerIdAndEnr.ts b/packages/cli/src/cmds/beacon/initPeerIdAndEnr.ts index 65c040e88c72..37c5d766d7a3 100644 --- a/packages/cli/src/cmds/beacon/initPeerIdAndEnr.ts +++ b/packages/cli/src/cmds/beacon/initPeerIdAndEnr.ts @@ -66,13 +66,19 @@ function maybeUpdateEnr => { + ): Promise<{peerId: PeerId; enr: SignableENR; newEnr: boolean}> => { let peerId: PeerId; let enr: SignableENR; @@ -139,7 +158,7 @@ export async function initPeerIdAndEnr( peerId = await readPeerId(peerIdFile); } catch (e) { logger.warn("Unable to read peerIdFile, creating a new peer id"); - return {...(await newPeerIdAndENR()), usePersisted: false}; + return {...(await newPeerIdAndENR()), newEnr: true}; } // attempt to read stored enr try { @@ -147,37 +166,29 @@ export async function initPeerIdAndEnr( } catch (e) { logger.warn("Unable to decode stored local ENR, creating a new ENR"); enr = SignableENR.createV4(createKeypairFromPeerId(peerId)); - return {peerId, enr, usePersisted: false}; + return {peerId, enr, newEnr: true}; } // check stored peer id against stored enr if (!peerId.equals(await enr.peerId())) { logger.warn("Stored local ENR doesn't match peerIdFile, creating a new ENR"); enr = SignableENR.createV4(createKeypairFromPeerId(peerId)); - return {peerId, enr, usePersisted: false}; + return {peerId, enr, newEnr: true}; } - return {peerId, enr, usePersisted: true}; + return {peerId, enr, newEnr: false}; }; if (persistNetworkIdentity) { const enrFile = path.join(beaconDir, "enr"); const peerIdFile = path.join(beaconDir, "peer-id.json"); - const {peerId, enr, usePersisted} = await readPersistedPeerIdAndENR(peerIdFile, enrFile); - overwriteEnrWithCliArgs(enr, args, logger, bootnode); - // If the enr is newly created, its sequence number can be set to 1 - // It's especially clean for fully configured bootnodes whose enrs never change - if (!usePersisted) { - enr.seq = BigInt(1); - } + const {peerId, enr, newEnr} = await readPersistedPeerIdAndENR(peerIdFile, enrFile); + overwriteEnrWithCliArgs(enr, args, logger, {newEnr, bootnode}); // Re-persist peer-id and enr writeFile600Perm(peerIdFile, exportToJSON(peerId)); writeFile600Perm(enrFile, enr.encodeTxt()); return {peerId, enr}; } else { const {peerId, enr} = await newPeerIdAndENR(); - overwriteEnrWithCliArgs(enr, args, logger, bootnode); - // Since the enr is newly created, its sequence number can be set to 1 - // It's especially clean for fully configured bootnodes whose enrs never change - enr.seq = BigInt(1); + overwriteEnrWithCliArgs(enr, args, logger, {newEnr: true, bootnode}); return {peerId, enr}; } }