- 
                Notifications
    
You must be signed in to change notification settings  - Fork 156
 
Description
While setting up and deploying the token bridge contracts for our custom Orbit chain, I encountered a type mismatch issue in the scripts/deployments/deployTokenBridgeCreator.ts script.
Adding these two parameters were required to deploy all contracts for parent and child chain and finally to run this command:
   yarn run deploy:token-bridge-creatorSpecifically, the L2Network object defined in the script is missing two properties that were required for successful execution in my setup:
blockTimepartnerChainIDs
To resolve this locally, I added the following fields to the L2Network object:
const l2Network: L2Network = {
  blockTime: 10, // missing parameter
  chainID: l2NetworkInfo.chainId,
  confirmPeriodBlocks: (await rollup.confirmPeriodBlocks()).toNumber(),
  ethBridge: {
    bridge: await rollup.bridge(),
    inbox: await rollup.inbox(),
    outbox: await rollup.outbox(),
    rollup: rollup.address,
    sequencerInbox: await rollup.sequencerInbox(),
  },
  explorerUrl: '',
  isArbitrum: true,
  isCustom: true,
  name: 'OrbitChain',
  partnerChainID: l1NetworkInfo.chainId,
  partnerChainIDs: [l1NetworkInfo.chainId],  // missing parameter
  retryableLifetimeSeconds: 7 * 24 * 60 * 60,
  nitroGenesisBlock: 0,
  nitroGenesisL1Block: 0,
  depositTimeout: 900000,
  tokenBridge: {
    l1CustomGateway: '',
    l1ERC20Gateway: '',
    l1GatewayRouter: '',
    l1MultiCall: '',
    l1ProxyAdmin: '',
    l1Weth: '',
    l1WethGateway: '',
    l2CustomGateway: '',
    l2ERC20Gateway: '',
    l2GatewayRouter: '',
    l2Multicall: '',
    l2ProxyAdmin: '',
    l2Weth: '',
    l2WethGateway: '',
  },
}
Without these 2 parameters, you'll get an error when you run deployment command
```bash
   yarn run deploy:token-bridge-creatorerror log:
yarn run deploy:token-bridge-creator
yarn run v1.22.22
$ ts-node ./scripts/deployment/deployTokenBridgeCreator.ts
/home/horizon/token-bridge-contracts/node_modules/ts-node/src/index.ts:859
return new TSError(diagnosticText, diagnosticCodes, diagnostics);
^
TSError: ⨯ Unable to compile TypeScript:
scripts/deployment/deployTokenBridgeCreator.ts:110:9 - error TS2739: Type '{ chainID: number; confirmPeriodBlocks: number; ethBridge: { bridge: string; inbox: string; outbox: string; rollup: string; sequencerInbox: string; }; explorerUrl: string; isArbitrum: true; isCustom: true; ... 6 more ...; tokenBridge: { ...; }; }' is missing the following properties from type 'L2Network': blockTime, partnerChainIDs
110   const l2Network: L2Network = {
~~~~~~~~~
at createTSError (/home/horizon/token-bridge-contracts/node_modules/ts-node/src/index.ts:859:12)
at reportTSError (/home/horizon/token-bridge-contracts/node_modules/ts-node/src/index.ts:863:19)
at getOutput (/home/horizon/token-bridge-contracts/node_modules/ts-node/src/index.ts:1077:36)
at Object.compile (/home/horizon/token-bridge-contracts/node_modules/ts-node/src/index.ts:1433:41)
at Module.m._compile (/home/horizon/token-bridge-contracts/node_modules/ts-node/src/index.ts:1617:30)
at loadTS (node:internal/modules/cjs/loader:1826:10)
at Object.require.extensions.<computed> [as .ts] (/home/horizon/token-bridge-contracts/node_modules/ts-node/src/index.ts:1621:12)
at Module.load (node:internal/modules/cjs/loader:1469:32)
at Function._load (node:internal/modules/cjs/loader:1286:12)
at TracingChannel.traceSync (node:diagnostics_channel:322:14) {
diagnosticCodes: [ 2739 ]
}
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.