From 78c2272650bc1a8802093c3f6b7745b58e3e75d0 Mon Sep 17 00:00:00 2001 From: gzeon Date: Mon, 9 Dec 2024 16:06:42 +0800 Subject: [PATCH] chore: testnode for bold upgrade (#268) * chore: testnode for bold upgrade * test: stakeToken should be contract --- scripts/boldUpgradeCommon.ts | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/scripts/boldUpgradeCommon.ts b/scripts/boldUpgradeCommon.ts index a9c538a5..0d3cc57b 100644 --- a/scripts/boldUpgradeCommon.ts +++ b/scripts/boldUpgradeCommon.ts @@ -34,9 +34,17 @@ export const getConfig = async ( if (!config) { throw new Error('config not found') } - if (process.env.ROLLUP_ADDRESS) { - console.log('Using ROLLUP_ADDRESS from env:', process.env.ROLLUP_ADDRESS) - config.contracts.rollup = process.env.ROLLUP_ADDRESS + // in testnode mode we allow some config to be overridden from env for easier testing + if (process.env.TESTNODE_MODE) { + console.log('In testnode mode') + if (process.env.ROLLUP_ADDRESS) { + console.log('Using ROLLUP_ADDRESS from env:', process.env.ROLLUP_ADDRESS) + config.contracts.rollup = process.env.ROLLUP_ADDRESS + } + if (process.env.STAKE_TOKEN) { + console.log('Using STAKE_TOKEN from env:', process.env.STAKE_TOKEN) + config.settings.stakeToken = process.env.STAKE_TOKEN + } } await validateConfig(config, l1Rpc) return config @@ -138,6 +146,9 @@ export const validateConfig = async ( if (config.settings.stakeToken.length === 0) { throw new Error('stakeToken address is empty') } + if ((await l1Rpc.getCode(config.settings.stakeToken)).length <= 2) { + throw new Error('stakeToken address is not a contract') + } if (config.settings.chainId === 0) { throw new Error('chainId is 0') }