@hyperlane-xyz/cli 3.9.0 → 3.10.1-beta0

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.
Files changed (135) hide show
  1. package/README.md +5 -0
  2. package/dist/cli.d.ts +1 -1
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +13 -1
  5. package/dist/cli.js.map +1 -1
  6. package/dist/env.d.ts +2 -0
  7. package/dist/env.d.ts.map +1 -0
  8. package/dist/env.js +14 -0
  9. package/dist/env.js.map +1 -0
  10. package/dist/src/commands/chains.js +22 -31
  11. package/dist/src/commands/chains.js.map +1 -1
  12. package/dist/src/commands/config.js +1 -1
  13. package/dist/src/commands/config.js.map +1 -1
  14. package/dist/src/commands/deploy.d.ts +6 -0
  15. package/dist/src/commands/deploy.d.ts.map +1 -1
  16. package/dist/src/commands/deploy.js +67 -55
  17. package/dist/src/commands/deploy.js.map +1 -1
  18. package/dist/src/commands/hook.d.ts +7 -0
  19. package/dist/src/commands/hook.d.ts.map +1 -0
  20. package/dist/src/commands/hook.js +42 -0
  21. package/dist/src/commands/hook.js.map +1 -0
  22. package/dist/src/commands/ism.d.ts +7 -0
  23. package/dist/src/commands/ism.d.ts.map +1 -0
  24. package/dist/src/commands/ism.js +44 -0
  25. package/dist/src/commands/ism.js.map +1 -0
  26. package/dist/src/commands/options.d.ts +39 -2
  27. package/dist/src/commands/options.d.ts.map +1 -1
  28. package/dist/src/commands/options.js +56 -2
  29. package/dist/src/commands/options.js.map +1 -1
  30. package/dist/src/commands/send.d.ts +8 -1
  31. package/dist/src/commands/send.d.ts.map +1 -1
  32. package/dist/src/commands/send.js +15 -5
  33. package/dist/src/commands/send.js.map +1 -1
  34. package/dist/src/commands/status.d.ts.map +1 -1
  35. package/dist/src/commands/status.js +8 -7
  36. package/dist/src/commands/status.js.map +1 -1
  37. package/dist/src/config/artifacts.d.ts +6 -1
  38. package/dist/src/config/artifacts.d.ts.map +1 -1
  39. package/dist/src/config/artifacts.js +8 -2
  40. package/dist/src/config/artifacts.js.map +1 -1
  41. package/dist/src/config/chain.js +1 -1
  42. package/dist/src/config/chain.js.map +1 -1
  43. package/dist/src/config/hooks.js +1 -1
  44. package/dist/src/config/hooks.js.map +1 -1
  45. package/dist/src/config/ism.d.ts +18 -0
  46. package/dist/src/config/ism.d.ts.map +1 -1
  47. package/dist/src/config/ism.js +23 -8
  48. package/dist/src/config/ism.js.map +1 -1
  49. package/dist/src/config/multisig.js +1 -1
  50. package/dist/src/config/multisig.js.map +1 -1
  51. package/dist/src/config/warp.d.ts +30 -180
  52. package/dist/src/config/warp.d.ts.map +1 -1
  53. package/dist/src/config/warp.js +20 -57
  54. package/dist/src/config/warp.js.map +1 -1
  55. package/dist/src/context.d.ts +22 -5
  56. package/dist/src/context.d.ts.map +1 -1
  57. package/dist/src/context.js +57 -18
  58. package/dist/src/context.js.map +1 -1
  59. package/dist/src/deploy/agent.js +1 -1
  60. package/dist/src/deploy/agent.js.map +1 -1
  61. package/dist/src/deploy/core.d.ts +6 -2
  62. package/dist/src/deploy/core.d.ts.map +1 -1
  63. package/dist/src/deploy/core.js +38 -17
  64. package/dist/src/deploy/core.js.map +1 -1
  65. package/dist/src/deploy/dry-run.d.ts +20 -0
  66. package/dist/src/deploy/dry-run.d.ts.map +1 -0
  67. package/dist/src/deploy/dry-run.js +45 -0
  68. package/dist/src/deploy/dry-run.js.map +1 -0
  69. package/dist/src/deploy/utils.d.ts +6 -1
  70. package/dist/src/deploy/utils.d.ts.map +1 -1
  71. package/dist/src/deploy/utils.js +40 -6
  72. package/dist/src/deploy/utils.js.map +1 -1
  73. package/dist/src/deploy/warp.d.ts +3 -2
  74. package/dist/src/deploy/warp.d.ts.map +1 -1
  75. package/dist/src/deploy/warp.js +97 -92
  76. package/dist/src/deploy/warp.js.map +1 -1
  77. package/dist/src/hook/read.d.ts +14 -0
  78. package/dist/src/hook/read.d.ts.map +1 -0
  79. package/dist/src/hook/read.js +29 -0
  80. package/dist/src/hook/read.js.map +1 -0
  81. package/dist/src/ism/read.d.ts +14 -0
  82. package/dist/src/ism/read.d.ts.map +1 -0
  83. package/dist/src/ism/read.js +29 -0
  84. package/dist/src/ism/read.js.map +1 -0
  85. package/dist/{logger.d.ts → src/logger.d.ts} +7 -5
  86. package/dist/src/logger.d.ts.map +1 -0
  87. package/dist/src/logger.js +32 -0
  88. package/dist/src/logger.js.map +1 -0
  89. package/dist/src/send/message.d.ts +3 -2
  90. package/dist/src/send/message.d.ts.map +1 -1
  91. package/dist/src/send/message.js +9 -3
  92. package/dist/src/send/message.js.map +1 -1
  93. package/dist/src/send/transfer.d.ts +3 -2
  94. package/dist/src/send/transfer.d.ts.map +1 -1
  95. package/dist/src/send/transfer.js +10 -4
  96. package/dist/src/send/transfer.js.map +1 -1
  97. package/dist/src/status/message.d.ts +4 -1
  98. package/dist/src/status/message.d.ts.map +1 -1
  99. package/dist/src/status/message.js +15 -4
  100. package/dist/src/status/message.js.map +1 -1
  101. package/dist/src/tests/deployTestErc20.js +4 -4
  102. package/dist/src/tests/deployTestErc20.js.map +1 -1
  103. package/dist/src/utils/chains.js +1 -1
  104. package/dist/src/utils/chains.js.map +1 -1
  105. package/dist/src/utils/env.d.ts +2 -0
  106. package/dist/src/utils/env.d.ts.map +1 -1
  107. package/dist/src/utils/env.js +2 -0
  108. package/dist/src/utils/env.js.map +1 -1
  109. package/dist/src/utils/files.d.ts +12 -4
  110. package/dist/src/utils/files.d.ts.map +1 -1
  111. package/dist/src/utils/files.js +36 -12
  112. package/dist/src/utils/files.js.map +1 -1
  113. package/dist/src/utils/fork.d.ts +37 -0
  114. package/dist/src/utils/fork.d.ts.map +1 -0
  115. package/dist/src/utils/fork.js +91 -0
  116. package/dist/src/utils/fork.js.map +1 -0
  117. package/dist/src/utils/keys.d.ts +16 -2
  118. package/dist/src/utils/keys.d.ts.map +1 -1
  119. package/dist/src/utils/keys.js +67 -6
  120. package/dist/src/utils/keys.js.map +1 -1
  121. package/dist/src/utils/version-check.js +1 -1
  122. package/dist/src/utils/version-check.js.map +1 -1
  123. package/dist/src/version.d.ts +1 -1
  124. package/dist/src/version.d.ts.map +1 -1
  125. package/dist/src/version.js +1 -1
  126. package/dist/src/version.js.map +1 -1
  127. package/examples/dry-run/anvil-chains.yaml +17 -0
  128. package/examples/dry-run/ism.yaml +8 -0
  129. package/examples/dry-run/warp-route-deployment.yaml +4 -0
  130. package/examples/fork/warp-route-deployment.yaml +17 -9
  131. package/examples/warp-route-deployment.yaml +17 -10
  132. package/package.json +11 -9
  133. package/dist/logger.d.ts.map +0 -1
  134. package/dist/logger.js +0 -46
  135. package/dist/logger.js.map +0 -1
@@ -2,26 +2,42 @@ import { confirm } from '@inquirer/prompts';
2
2
  import { ethers } from 'ethers';
3
3
  import { GasOracleContractType, HyperlaneCore, HyperlaneCoreDeployer, HyperlaneIsmFactory, HyperlaneProxyFactoryDeployer, IsmType, buildAgentConfig, buildAggregationIsmConfigs, defaultMultisigConfigs, multisigIsmVerificationCost, serializeContractsMap, } from '@hyperlane-xyz/sdk';
4
4
  import { objFilter, objMerge } from '@hyperlane-xyz/utils';
5
- import { log, logBlue, logBoldUnderlinedRed, logGray, logGreen, logRed, } from '../../logger.js';
5
+ import { Command } from '../commands/deploy.js';
6
6
  import { runDeploymentArtifactStep } from '../config/artifacts.js';
7
7
  import { presetHookConfigs, readHooksConfigMap } from '../config/hooks.js';
8
8
  import { readIsmConfig } from '../config/ism.js';
9
9
  import { readMultisigConfig } from '../config/multisig.js';
10
10
  import { MINIMUM_CORE_DEPLOY_GAS } from '../consts.js';
11
- import { getContext, getMergedContractAddresses, sdkContractAddressesMap, } from '../context.js';
11
+ import { getContext, getDryRunContext, getMergedContractAddresses, sdkContractAddressesMap, } from '../context.js';
12
+ import { log, logBlue, logBoldUnderlinedRed, logGray, logGreen, logRed, } from '../logger.js';
12
13
  import { runMultiChainSelectionStep } from '../utils/chains.js';
13
- import { prepNewArtifactsFiles, runFileSelectionStep, writeJson, } from '../utils/files.js';
14
- import { isISMConfig, isZODISMConfig, runPreflightChecksForChains, } from './utils.js';
15
- export async function runCoreDeploy({ key, chainConfigPath, chains, ismConfigPath, hookConfigPath, artifactsPath, outPath, skipConfirmation, }) {
16
- const { customChains, multiProvider, signer } = await getContext({
17
- chainConfigPath,
18
- keyConfig: { key },
19
- skipConfirmation,
20
- });
21
- if (!chains?.length) {
14
+ import { getArtifactsFiles, prepNewArtifactsFiles, runFileSelectionStep, writeJson, } from '../utils/files.js';
15
+ import { completeDeploy, isISMConfig, isZODISMConfig, prepareDeploy, runPreflightChecksForChains, } from './utils.js';
16
+ /**
17
+ * Executes the core deploy command.
18
+ */
19
+ export async function runCoreDeploy({ key, chainConfigPath, chains, ismConfigPath, hookConfigPath, artifactsPath, outPath, skipConfirmation, dryRun, }) {
20
+ const context = dryRun
21
+ ? await getDryRunContext({
22
+ chainConfigPath,
23
+ chains: [dryRun],
24
+ keyConfig: { key },
25
+ skipConfirmation,
26
+ })
27
+ : await getContext({
28
+ chainConfigPath,
29
+ keyConfig: { key },
30
+ skipConfirmation,
31
+ });
32
+ const customChains = context.customChains;
33
+ const multiProvider = context.multiProvider;
34
+ const signer = context.signer;
35
+ if (dryRun)
36
+ chains = context.chains;
37
+ else if (!chains?.length) {
22
38
  if (skipConfirmation)
23
39
  throw new Error('No chains provided');
24
- chains = await runMultiChainSelectionStep(customChains, 'Select chains to connect', true);
40
+ chains = await runMultiChainSelectionStep(customChains, 'Select chains to connect:', true);
25
41
  }
26
42
  const artifacts = await runArtifactStep(chains, skipConfirmation, artifactsPath);
27
43
  const result = await runIsmStep(chains, skipConfirmation, ismConfigPath);
@@ -42,20 +58,25 @@ export async function runCoreDeploy({ key, chainConfigPath, chains, ismConfigPat
42
58
  hooksConfig,
43
59
  outPath,
44
60
  skipConfirmation,
61
+ dryRun,
45
62
  };
46
63
  await runDeployPlanStep(deploymentParams);
47
64
  await runPreflightChecksForChains({
48
65
  ...deploymentParams,
49
66
  minGas: MINIMUM_CORE_DEPLOY_GAS,
50
67
  });
68
+ const userAddress = dryRun ? key : await signer.getAddress();
69
+ const initialBalances = await prepareDeploy(multiProvider, userAddress, chains);
51
70
  await executeDeploy(deploymentParams);
71
+ await completeDeploy(Command.CORE, initialBalances, multiProvider, userAddress, chains, dryRun);
52
72
  }
53
- function runArtifactStep(selectedChains, skipConfirmation, artifactsPath) {
73
+ function runArtifactStep(selectedChains, skipConfirmation, artifactsPath, dryRun) {
54
74
  logBlue('\nDeployments can be totally new or can use some existing contract addresses.');
55
75
  return runDeploymentArtifactStep({
56
76
  artifactsPath,
57
77
  selectedChains,
58
78
  skipConfirmation,
79
+ dryRun,
59
80
  });
60
81
  }
61
82
  async function runIsmStep(selectedChains, skipConfirmation, ismConfigPath) {
@@ -116,12 +137,12 @@ async function runDeployPlanStep({ chains, signer, artifacts, skipConfirmation,
116
137
  if (!isConfirmed)
117
138
  throw new Error('Deployment cancelled');
118
139
  }
119
- async function executeDeploy({ chains, signer, multiProvider, outPath, artifacts = {}, ismConfigs = {}, multisigConfigs = {}, hooksConfig = {}, }) {
140
+ async function executeDeploy({ chains, signer, multiProvider, outPath, artifacts = {}, ismConfigs = {}, multisigConfigs = {}, hooksConfig = {}, dryRun, }) {
120
141
  logBlue('All systems ready, captain! Beginning deployment...');
121
- const [contractsFilePath, agentFilePath] = prepNewArtifactsFiles(outPath, [
142
+ const [contractsFilePath, agentFilePath] = prepNewArtifactsFiles(outPath, getArtifactsFiles([
122
143
  { filename: 'core-deployment', description: 'Contract addresses' },
123
144
  { filename: 'agent-config', description: 'Agent configs' },
124
- ]);
145
+ ], dryRun));
125
146
  const owner = await signer.getAddress();
126
147
  const mergedContractAddrs = getMergedContractAddresses(artifacts, chains);
127
148
  // 1. Deploy ISM factories to all deployable chains that don't have them.
@@ -162,7 +183,7 @@ async function executeDeploy({ chains, signer, multiProvider, outPath, artifacts
162
183
  }
163
184
  artifacts = objMerge(artifacts, isms);
164
185
  artifacts = writeMergedAddresses(contractsFilePath, artifacts, coreContracts);
165
- logGreen('Core contracts deployed');
186
+ logGreen('Core contracts deployed');
166
187
  log('Writing agent configs');
167
188
  await writeAgentConfig(agentFilePath, artifacts, chains, multiProvider);
168
189
  logGreen('Agent configs written');
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/deploy/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/deploy/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { MultiProvider } from '@hyperlane-xyz/sdk';
2
+ import { Command } from '../commands/deploy.js';
3
+ /**
4
+ * Forks a provided network onto MultiProvider
5
+ * @param multiProvider the MultiProvider to be prepared
6
+ * @param chains the chain selection passed-in by the user
7
+ */
8
+ export declare function forkNetworkToMultiProvider(multiProvider: MultiProvider, chain: string): Promise<void>;
9
+ /**
10
+ * Ensures an anvil node is running locally.
11
+ */
12
+ export declare function verifyAnvil(): Promise<void>;
13
+ /**
14
+ * Evaluates if an error is related to the current dry-run.
15
+ * @param error the thrown error
16
+ * @param dryRun the chain name to execute the dry-run on
17
+ */
18
+ export declare function evaluateIfDryRunFailure(error: any, dryRun: string): void;
19
+ export declare function completeDryRun(command: Command): Promise<void>;
20
+ //# sourceMappingURL=dry-run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dry-run.d.ts","sourceRoot":"","sources":["../../../src/deploy/dry-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAId,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAMhD;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,MAAM,iBAOd;AAED;;GAEG;AACH,wBAAsB,WAAW,kBAahC;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,QAKjE;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,iBAIpD"}
@@ -0,0 +1,45 @@
1
+ import { ANVIL_RPC_METHODS, getLocalProvider, resetFork, setFork, } from '@hyperlane-xyz/sdk';
2
+ import { logGray, logGreen, warnYellow } from '../logger.js';
3
+ import { ENV } from '../utils/env.js';
4
+ import { toUpperCamelCase } from './utils.js';
5
+ /**
6
+ * Forks a provided network onto MultiProvider
7
+ * @param multiProvider the MultiProvider to be prepared
8
+ * @param chains the chain selection passed-in by the user
9
+ */
10
+ export async function forkNetworkToMultiProvider(multiProvider, chain) {
11
+ multiProvider = multiProvider.extendChainMetadata({
12
+ [chain]: { blocks: { confirmations: 0 } },
13
+ });
14
+ await setFork(multiProvider, chain);
15
+ }
16
+ /**
17
+ * Ensures an anvil node is running locally.
18
+ */
19
+ export async function verifyAnvil() {
20
+ logGray('🔎 Verifying anvil node is running...');
21
+ const provider = getLocalProvider(ENV.ANVIL_IP_ADDR, ENV.ANVIL_PORT);
22
+ try {
23
+ await provider.send(ANVIL_RPC_METHODS.NODE_INFO, []);
24
+ }
25
+ catch (error) {
26
+ if (error.message.includes('missing response'))
27
+ throw new Error(`No active anvil node detected.
28
+ \tPlease run \`anvil\` in a separate instance.`);
29
+ }
30
+ logGreen('✅ Successfully verified anvil node is running');
31
+ }
32
+ /**
33
+ * Evaluates if an error is related to the current dry-run.
34
+ * @param error the thrown error
35
+ * @param dryRun the chain name to execute the dry-run on
36
+ */
37
+ export function evaluateIfDryRunFailure(error, dryRun) {
38
+ if (dryRun && error.message.includes('call revert exception'))
39
+ warnYellow('⛔️ [dry-run] The current RPC may not support forking. Please consider using a different RPC provider.');
40
+ }
41
+ export async function completeDryRun(command) {
42
+ await resetFork();
43
+ logGreen(`✅ ${toUpperCamelCase(command)} dry-run completed successfully`);
44
+ }
45
+ //# sourceMappingURL=dry-run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dry-run.js","sourceRoot":"","sources":["../../../src/deploy/dry-run.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,gBAAgB,EAChB,SAAS,EACT,OAAO,GACR,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,aAA4B,EAC5B,KAAa;IAEb,aAAa,GAAG,aAAa,CAAC,mBAAmB,CAAC;QAChD,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE;KAC1C,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,OAAO,CAAC,uCAAuC,CAAC,CAAC;IAEjD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACrE,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC;+CACyB,CAAC,CAAC;IAC/C,CAAC;IAED,QAAQ,CAAC,+CAA+C,CAAC,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAU,EAAE,MAAc;IAChE,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC3D,UAAU,CACR,uGAAuG,CACxG,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAgB;IACnD,MAAM,SAAS,EAAE,CAAC;IAElB,QAAQ,CAAC,KAAK,gBAAgB,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC;AAC5E,CAAC"}
@@ -1,5 +1,7 @@
1
- import { ethers } from 'ethers';
1
+ import { BigNumber, ethers } from 'ethers';
2
2
  import { ChainMap, ChainName, IsmConfig, MultiProvider, MultisigConfig } from '@hyperlane-xyz/sdk';
3
+ import { Address } from '@hyperlane-xyz/utils';
4
+ import { Command } from '../commands/deploy.js';
3
5
  export declare function runPreflightChecks({ origin, remotes, signer, multiProvider, minGas, chainsToGasCheck, }: {
4
6
  origin: ChainName;
5
7
  remotes: ChainName[];
@@ -17,4 +19,7 @@ export declare function runPreflightChecksForChains({ chains, signer, multiProvi
17
19
  }): Promise<void>;
18
20
  export declare function isISMConfig(config: ChainMap<MultisigConfig> | ChainMap<IsmConfig>): boolean;
19
21
  export declare function isZODISMConfig(filepath: string): boolean;
22
+ export declare function prepareDeploy(multiProvider: MultiProvider, userAddress: Address, chains: ChainName[], dryRun?: boolean): Promise<Record<string, BigNumber>>;
23
+ export declare function completeDeploy(command: Command, initialBalances: Record<string, BigNumber>, multiProvider: MultiProvider, userAddress: Address, chains: ChainName[], dryRun: string): Promise<void>;
24
+ export declare function toUpperCamelCase(string: string): string;
20
25
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,aAAa,EACb,cAAc,EACf,MAAM,oBAAoB,CAAC;AAQ5B,wBAAsB,kBAAkB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;CAChC,iBAiBA;AAED,wBAAsB,2BAA2B,CAAC,EAChD,MAAM,EACN,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IAGf,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;CAChC,iBAsBA;AAGD,wBAAgB,WAAW,CACzB,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,GACrD,OAAO,CAET;AAGD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,aAAa,EACb,cAAc,EAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAgB,MAAM,sBAAsB,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAShD,wBAAsB,kBAAkB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;CAChC,iBAiBA;AAED,wBAAsB,2BAA2B,CAAC,EAChD,MAAM,EACN,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IAGf,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;CAChC,iBAsBA;AAGD,wBAAgB,WAAW,CACzB,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,GACrD,OAAO,CAET;AAGD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,wBAAsB,aAAa,CACjC,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,GAAE,OAAe,GACtB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAYpC;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,EAAE,MAAM,iBAoBf;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,UAE9C"}
@@ -1,16 +1,20 @@
1
+ import { ethers } from 'ethers';
2
+ import { getLocalProvider, } from '@hyperlane-xyz/sdk';
1
3
  import { ProtocolType } from '@hyperlane-xyz/utils';
2
- import { log, logGreen } from '../../logger.js';
3
4
  import { parseIsmConfig } from '../config/ism.js';
5
+ import { log, logGreen, logPink } from '../logger.js';
4
6
  import { assertGasBalances } from '../utils/balances.js';
7
+ import { ENV } from '../utils/env.js';
5
8
  import { assertSigner } from '../utils/keys.js';
9
+ import { completeDryRun } from './dry-run.js';
6
10
  export async function runPreflightChecks({ origin, remotes, signer, multiProvider, minGas, chainsToGasCheck, }) {
7
11
  log('Running pre-flight checks...');
8
12
  if (!origin || !remotes?.length)
9
13
  throw new Error('Invalid chain selection');
10
- logGreen('Chain selections are valid');
14
+ logGreen('Chain selections are valid');
11
15
  if (remotes.includes(origin))
12
16
  throw new Error('Origin and remotes must be distinct');
13
- logGreen('Origin and remote are distinct');
17
+ logGreen('Origin and remote are distinct');
14
18
  return runPreflightChecksForChains({
15
19
  chains: [origin, ...remotes],
16
20
  signer,
@@ -30,11 +34,11 @@ export async function runPreflightChecksForChains({ chains, signer, multiProvide
30
34
  if (metadata.protocol !== ProtocolType.Ethereum)
31
35
  throw new Error('Only Ethereum chains are supported for now');
32
36
  }
33
- logGreen('Chains are valid');
37
+ logGreen('Chains are valid');
34
38
  assertSigner(signer);
35
- logGreen('Signer is valid');
39
+ logGreen('Signer is valid');
36
40
  await assertGasBalances(multiProvider, signer, chainsToGasCheck ?? chains, minGas);
37
- logGreen('Balances are sufficient');
41
+ logGreen('Balances are sufficient');
38
42
  }
39
43
  // from parsed types
40
44
  export function isISMConfig(config) {
@@ -44,4 +48,34 @@ export function isISMConfig(config) {
44
48
  export function isZODISMConfig(filepath) {
45
49
  return parseIsmConfig(filepath).success;
46
50
  }
51
+ export async function prepareDeploy(multiProvider, userAddress, chains, dryRun = false) {
52
+ const initialBalances = {};
53
+ await Promise.all(chains.map(async (chain) => {
54
+ const provider = dryRun
55
+ ? getLocalProvider(ENV.ANVIL_IP_ADDR, ENV.ANVIL_PORT)
56
+ : multiProvider.getProvider(chain);
57
+ const currentBalance = await provider.getBalance(userAddress);
58
+ initialBalances[chain] = currentBalance;
59
+ }));
60
+ return initialBalances;
61
+ }
62
+ export async function completeDeploy(command, initialBalances, multiProvider, userAddress, chains, dryRun) {
63
+ if (chains.length > 0)
64
+ logPink(`⛽️ Gas Usage Statistics`);
65
+ for (const chain of chains) {
66
+ const provider = dryRun
67
+ ? getLocalProvider(ENV.ANVIL_IP_ADDR, ENV.ANVIL_PORT)
68
+ : multiProvider.getProvider(chain);
69
+ const currentBalance = await provider.getBalance(userAddress);
70
+ const balanceDelta = initialBalances[chain].sub(currentBalance);
71
+ if (dryRun && balanceDelta.lt(0))
72
+ break;
73
+ logPink(`\t- Gas required for ${command} ${dryRun ? 'dry-run' : 'deploy'} on ${chain}: ${ethers.utils.formatEther(balanceDelta)} ${multiProvider.getChainMetadata(chain).nativeToken?.symbol}`);
74
+ }
75
+ if (dryRun)
76
+ await completeDryRun(command);
77
+ }
78
+ export function toUpperCamelCase(string) {
79
+ return string.charAt(0).toUpperCase() + string.slice(1);
80
+ }
47
81
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GAQjB;IACC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAEpC,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC5E,QAAQ,CAAC,8BAA8B,CAAC,CAAC;IAEzC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,QAAQ,CAAC,kCAAkC,CAAC,CAAC;IAE7C,OAAO,2BAA2B,CAAC;QACjC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM;QACN,aAAa;QACb,MAAM;QACN,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,EAChD,MAAM,EACN,MAAM,EACN,aAAa,EACb,MAAM,EACN,gBAAgB,GASjB;IACC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IAE/C,IAAI,CAAC,MAAM,EAAE,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC9D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;QACrE,IAAI,QAAQ,CAAC,QAAQ,KAAK,YAAY,CAAC,QAAQ;YAC7C,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAClE,CAAC;IACD,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAE/B,YAAY,CAAC,MAAM,CAAC,CAAC;IACrB,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAE9B,MAAM,iBAAiB,CACrB,aAAa,EACb,MAAM,EACN,gBAAgB,IAAI,MAAM,EAC1B,MAAM,CACP,CAAC;IACF,QAAQ,CAAC,2BAA2B,CAAC,CAAC;AACxC,CAAC;AAED,oBAAoB;AACpB,MAAM,UAAU,WAAW,CACzB,MAAsD;IAEtD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- export declare function runWarpRouteDeploy({ key, chainConfigPath, warpRouteDeploymentConfigPath, coreArtifactsPath, outPath, skipConfirmation, }: {
2
- key: string;
1
+ export declare function runWarpRouteDeploy({ key, chainConfigPath, warpRouteDeploymentConfigPath, coreArtifactsPath, outPath, skipConfirmation, dryRun, }: {
2
+ key?: string;
3
3
  chainConfigPath: string;
4
4
  warpRouteDeploymentConfigPath?: string;
5
5
  coreArtifactsPath?: string;
6
6
  outPath: string;
7
7
  skipConfirmation: boolean;
8
+ dryRun: string;
8
9
  }): Promise<void>;
9
10
  //# sourceMappingURL=warp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"AAwCA,wBAAsB,kBAAkB,CAAC,EACvC,GAAG,EACH,eAAe,EACf,6BAA6B,EAC7B,iBAAiB,EACjB,OAAO,EACP,gBAAgB,GACjB,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,EAAE,MAAM,CAAC;IACxB,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;CAC3B,iBAoDA"}
1
+ {"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"AAgDA,wBAAsB,kBAAkB,CAAC,EACvC,GAAG,EACH,eAAe,EACf,6BAA6B,EAC7B,iBAAiB,EACjB,OAAO,EACP,gBAAgB,EAChB,MAAM,GACP,EAAE;IACD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB,iBAgFA"}