@hyperlane-xyz/cli 3.1.10 → 3.3.0
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/dist/cli.js +6 -5
- package/dist/cli.js.map +1 -1
- package/dist/src/commands/chains.js.map +1 -1
- package/dist/src/commands/config.d.ts.map +1 -1
- package/dist/src/commands/config.js +44 -14
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/deploy.js +11 -8
- package/dist/src/commands/deploy.js.map +1 -1
- package/dist/src/commands/options.d.ts.map +1 -1
- package/dist/src/commands/options.js +1 -2
- package/dist/src/commands/options.js.map +1 -1
- package/dist/src/commands/send.js +2 -5
- package/dist/src/commands/send.js.map +1 -1
- package/dist/src/commands/status.d.ts.map +1 -1
- package/dist/src/commands/status.js +0 -2
- package/dist/src/commands/status.js.map +1 -1
- package/dist/src/config/artifacts.d.ts +2 -1
- package/dist/src/config/artifacts.d.ts.map +1 -1
- package/dist/src/config/artifacts.js +24 -2
- package/dist/src/config/artifacts.js.map +1 -1
- package/dist/src/config/chain.d.ts +1 -1
- package/dist/src/config/chain.d.ts.map +1 -1
- package/dist/src/config/chain.js +1 -1
- package/dist/src/config/chain.js.map +1 -1
- package/dist/src/config/hooks.d.ts +89 -211
- package/dist/src/config/hooks.d.ts.map +1 -1
- package/dist/src/config/hooks.js +221 -85
- package/dist/src/config/hooks.js.map +1 -1
- package/dist/src/config/ism.d.ts +57 -0
- package/dist/src/config/ism.d.ts.map +1 -0
- package/dist/src/config/ism.js +199 -0
- package/dist/src/config/ism.js.map +1 -0
- package/dist/src/config/multisig.d.ts +1 -10
- package/dist/src/config/multisig.d.ts.map +1 -1
- package/dist/src/config/multisig.js +29 -22
- package/dist/src/config/multisig.js.map +1 -1
- package/dist/src/config/warp.js.map +1 -1
- package/dist/src/context.d.ts +32 -384
- package/dist/src/context.d.ts.map +1 -1
- package/dist/src/context.js +32 -11
- package/dist/src/context.js.map +1 -1
- package/dist/src/context.test.d.ts +2 -0
- package/dist/src/context.test.d.ts.map +1 -0
- package/dist/src/context.test.js +21 -0
- package/dist/src/context.test.js.map +1 -0
- package/dist/src/deploy/TestRecipientDeployer.js.map +1 -1
- package/dist/src/deploy/agent.d.ts +3 -2
- package/dist/src/deploy/agent.d.ts.map +1 -1
- package/dist/src/deploy/agent.js +10 -22
- package/dist/src/deploy/agent.js.map +1 -1
- package/dist/src/deploy/core.d.ts +3 -1
- package/dist/src/deploy/core.d.ts.map +1 -1
- package/dist/src/deploy/core.js +85 -96
- package/dist/src/deploy/core.js.map +1 -1
- package/dist/src/deploy/utils.d.ts +3 -1
- package/dist/src/deploy/utils.d.ts.map +1 -1
- package/dist/src/deploy/utils.js +9 -0
- package/dist/src/deploy/utils.js.map +1 -1
- package/dist/src/deploy/warp.d.ts.map +1 -1
- package/dist/src/deploy/warp.js +9 -9
- package/dist/src/deploy/warp.js.map +1 -1
- package/dist/src/send/message.d.ts +3 -3
- package/dist/src/send/message.d.ts.map +1 -1
- package/dist/src/send/message.js +13 -8
- package/dist/src/send/message.js.map +1 -1
- package/dist/src/send/transfer.d.ts +4 -4
- package/dist/src/send/transfer.d.ts.map +1 -1
- package/dist/src/send/transfer.js +22 -11
- package/dist/src/send/transfer.js.map +1 -1
- package/dist/src/status/message.d.ts +3 -3
- package/dist/src/status/message.d.ts.map +1 -1
- package/dist/src/status/message.js +14 -5
- package/dist/src/status/message.js.map +1 -1
- package/dist/src/tests/hooks.test.d.ts +2 -0
- package/dist/src/tests/hooks.test.d.ts.map +1 -0
- package/dist/src/tests/hooks.test.js +83 -0
- package/dist/src/tests/hooks.test.js.map +1 -0
- package/dist/src/tests/ism.test.d.ts +2 -0
- package/dist/src/tests/ism.test.d.ts.map +1 -0
- package/dist/src/tests/ism.test.js +76 -0
- package/dist/src/tests/ism.test.js.map +1 -0
- package/dist/src/tests/multisig.test.d.ts +2 -0
- package/dist/src/tests/multisig.test.d.ts.map +1 -0
- package/dist/src/tests/multisig.test.js +34 -0
- package/dist/src/tests/multisig.test.js.map +1 -0
- package/dist/src/utils/balances.js.map +1 -1
- package/dist/src/utils/chains.d.ts +1 -1
- package/dist/src/utils/chains.d.ts.map +1 -1
- package/dist/src/utils/chains.js +5 -4
- package/dist/src/utils/chains.js.map +1 -1
- package/dist/src/utils/files.d.ts.map +1 -1
- package/dist/src/utils/files.js +5 -0
- package/dist/src/utils/files.js.map +1 -1
- package/dist/src/version.d.ts +2 -0
- package/dist/src/version.d.ts.map +1 -0
- package/dist/src/version.js +2 -0
- package/dist/src/version.js.map +1 -0
- package/examples/hooks.yaml +66 -0
- package/examples/ism-advanced.yaml +33 -0
- package/examples/{multisig-ism.yaml → ism.yaml} +0 -8
- package/package.json +9 -6
- package/examples/hook-config.yaml +0 -18
package/dist/src/deploy/core.js
CHANGED
|
@@ -1,32 +1,43 @@
|
|
|
1
1
|
import { confirm } from '@inquirer/prompts';
|
|
2
2
|
import { ethers } from 'ethers';
|
|
3
|
-
import { GasOracleContractType,
|
|
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
5
|
import { log, logBlue, logGray, logGreen, logRed } from '../../logger.js';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { runDeploymentArtifactStep } from '../config/artifacts.js';
|
|
7
|
+
import { presetHookConfigs, readHooksConfigMap } from '../config/hooks.js';
|
|
8
|
+
import { readIsmConfig } from '../config/ism.js';
|
|
8
9
|
import { readMultisigConfig } from '../config/multisig.js';
|
|
9
10
|
import { MINIMUM_CORE_DEPLOY_GAS } from '../consts.js';
|
|
10
|
-
import {
|
|
11
|
+
import { getContext, getMergedContractAddresses, sdkContractAddressesMap, } from '../context.js';
|
|
11
12
|
import { runMultiChainSelectionStep } from '../utils/chains.js';
|
|
12
13
|
import { prepNewArtifactsFiles, runFileSelectionStep, writeJson, } from '../utils/files.js';
|
|
13
14
|
import { TestRecipientDeployer, } from './TestRecipientDeployer.js';
|
|
14
|
-
import { runPreflightChecksForChains } from './utils.js';
|
|
15
|
+
import { isISMConfig, isZODISMConfig, runPreflightChecksForChains, } from './utils.js';
|
|
15
16
|
export async function runCoreDeploy({ key, chainConfigPath, chains, ismConfigPath, hookConfigPath, artifactsPath, outPath, skipConfirmation, }) {
|
|
16
|
-
const { customChains, multiProvider, signer } =
|
|
17
|
+
const { customChains, multiProvider, signer } = await getContext({
|
|
18
|
+
chainConfigPath,
|
|
19
|
+
keyConfig: { key },
|
|
20
|
+
});
|
|
17
21
|
if (!chains?.length) {
|
|
18
|
-
chains = await runMultiChainSelectionStep(customChains, 'Select chains to connect');
|
|
22
|
+
chains = await runMultiChainSelectionStep(customChains, 'Select chains to connect', true);
|
|
19
23
|
}
|
|
20
24
|
const artifacts = await runArtifactStep(chains, artifactsPath);
|
|
21
|
-
const
|
|
22
|
-
//
|
|
23
|
-
|
|
25
|
+
const result = await runIsmStep(chains, ismConfigPath);
|
|
26
|
+
// we can either specify the full ISM config or just the multisig config
|
|
27
|
+
const isIsmConfig = isISMConfig(result);
|
|
28
|
+
const ismConfigs = isIsmConfig ? result : undefined;
|
|
29
|
+
const multisigConfigs = isIsmConfig
|
|
30
|
+
? defaultMultisigConfigs
|
|
31
|
+
: result;
|
|
32
|
+
const hooksConfig = await runHookStep(chains, hookConfigPath);
|
|
24
33
|
const deploymentParams = {
|
|
25
34
|
chains,
|
|
26
35
|
signer,
|
|
27
36
|
multiProvider,
|
|
28
37
|
artifacts,
|
|
29
|
-
|
|
38
|
+
ismConfigs,
|
|
39
|
+
multisigConfigs,
|
|
40
|
+
hooksConfig,
|
|
30
41
|
outPath,
|
|
31
42
|
skipConfirmation,
|
|
32
43
|
};
|
|
@@ -37,53 +48,48 @@ export async function runCoreDeploy({ key, chainConfigPath, chains, ismConfigPat
|
|
|
37
48
|
});
|
|
38
49
|
await executeDeploy(deploymentParams);
|
|
39
50
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
const isResume = await confirm({
|
|
44
|
-
message: 'Do you want use some existing contract addresses?',
|
|
45
|
-
});
|
|
46
|
-
if (!isResume)
|
|
47
|
-
return undefined;
|
|
48
|
-
artifactsPath = await runFileSelectionStep('./artifacts', 'contract artifacts', 'core-deployment');
|
|
49
|
-
}
|
|
50
|
-
const artifacts = readDeploymentArtifacts(artifactsPath);
|
|
51
|
-
const artifactChains = Object.keys(artifacts).filter((c) => selectedChains.includes(c));
|
|
52
|
-
log(`Found existing artifacts for chains: ${artifactChains.join(', ')}`);
|
|
53
|
-
return artifacts;
|
|
51
|
+
function runArtifactStep(selectedChains, artifactsPath) {
|
|
52
|
+
logBlue('\nDeployments can be totally new or can use some existing contract addresses.');
|
|
53
|
+
return runDeploymentArtifactStep(artifactsPath, undefined, selectedChains);
|
|
54
54
|
}
|
|
55
55
|
async function runIsmStep(selectedChains, ismConfigPath) {
|
|
56
56
|
if (!ismConfigPath) {
|
|
57
57
|
logBlue('\n', 'Hyperlane instances requires an Interchain Security Module (ISM).');
|
|
58
|
-
logGray('
|
|
58
|
+
logGray('Example config: https://github.com/hyperlane-xyz/hyperlane-monorepo/blob/main/cli/typescript/cli/examples/ism.yaml');
|
|
59
59
|
ismConfigPath = await runFileSelectionStep('./configs', 'ISM config', 'ism');
|
|
60
60
|
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
61
|
+
const isIsm = isZODISMConfig(ismConfigPath);
|
|
62
|
+
// separate flow for 'ism' and 'ism-advanced' options
|
|
63
|
+
if (isIsm) {
|
|
64
|
+
const ismConfig = readIsmConfig(ismConfigPath);
|
|
65
|
+
const requiredIsms = objFilter(ismConfig, (chain, config) => selectedChains.includes(chain));
|
|
66
|
+
// selected chains - (user configs + default configs) = missing config
|
|
67
|
+
const missingConfigs = selectedChains.filter((c) => !Object.keys(ismConfig).includes(c));
|
|
68
|
+
if (missingConfigs.length > 0) {
|
|
69
|
+
throw new Error(`Missing advanced ISM config for one or more chains: ${missingConfigs.join(', ')}`);
|
|
70
|
+
}
|
|
71
|
+
log(`Found configs for chains: ${selectedChains.join(', ')}`);
|
|
72
|
+
return requiredIsms;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
const multisigConfigs = {
|
|
76
|
+
...defaultMultisigConfigs,
|
|
77
|
+
...readMultisigConfig(ismConfigPath),
|
|
78
|
+
};
|
|
79
|
+
const requiredMultisigs = objFilter(multisigConfigs, (chain, config) => selectedChains.includes(chain));
|
|
80
|
+
// selected chains - (user configs + default configs) = missing config
|
|
81
|
+
const missingConfigs = selectedChains.filter((c) => !Object.keys(requiredMultisigs).includes(c));
|
|
82
|
+
if (missingConfigs.length > 0) {
|
|
83
|
+
throw new Error(`Missing ISM config for one or more chains: ${missingConfigs.join(', ')}`);
|
|
84
|
+
}
|
|
85
|
+
log(`Found configs for chains: ${selectedChains.join(', ')}`);
|
|
86
|
+
return requiredMultisigs;
|
|
71
87
|
}
|
|
72
|
-
log(`Found configs for chains: ${selectedChains.join(', ')}`);
|
|
73
|
-
return requiredMultisigs;
|
|
74
88
|
}
|
|
75
89
|
async function runHookStep(_selectedChains, hookConfigPath) {
|
|
76
|
-
if (
|
|
77
|
-
return;
|
|
78
|
-
|
|
79
|
-
if (!hookConfigPath) {
|
|
80
|
-
logBlue('\n', 'Hyperlane instances can take an Interchain Security Module (ISM).');
|
|
81
|
-
hookConfigPath = await runFileSelectionStep('./configs/', 'Hook config', 'hook');
|
|
82
|
-
}
|
|
83
|
-
const configs = readHookConfig(hookConfigPath);
|
|
84
|
-
if (!configs)
|
|
85
|
-
return;
|
|
86
|
-
log(`Found hook configs for chains: ${Object.keys(configs).join(', ')}`);
|
|
90
|
+
if (!hookConfigPath)
|
|
91
|
+
return {};
|
|
92
|
+
return readHooksConfigMap(hookConfigPath);
|
|
87
93
|
}
|
|
88
94
|
async function runDeployPlanStep({ chains, signer, artifacts, skipConfirmation, }) {
|
|
89
95
|
const address = await signer.getAddress();
|
|
@@ -100,14 +106,14 @@ async function runDeployPlanStep({ chains, signer, artifacts, skipConfirmation,
|
|
|
100
106
|
if (!isConfirmed)
|
|
101
107
|
throw new Error('Deployment cancelled');
|
|
102
108
|
}
|
|
103
|
-
async function executeDeploy({ chains, signer, multiProvider, outPath, artifacts = {},
|
|
109
|
+
async function executeDeploy({ chains, signer, multiProvider, outPath, artifacts = {}, ismConfigs = {}, multisigConfigs = {}, hooksConfig = {}, }) {
|
|
104
110
|
logBlue('All systems ready, captain! Beginning deployment...');
|
|
105
111
|
const [contractsFilePath, agentFilePath] = prepNewArtifactsFiles(outPath, [
|
|
106
112
|
{ filename: 'core-deployment', description: 'Contract addresses' },
|
|
107
113
|
{ filename: 'agent-config', description: 'Agent configs' },
|
|
108
114
|
]);
|
|
109
115
|
const owner = await signer.getAddress();
|
|
110
|
-
const mergedContractAddrs = getMergedContractAddresses(artifacts);
|
|
116
|
+
const mergedContractAddrs = getMergedContractAddresses(artifacts, chains);
|
|
111
117
|
// 1. Deploy ISM factories to all deployable chains that don't have them.
|
|
112
118
|
logBlue('Deploying ISM factory contracts');
|
|
113
119
|
const ismFactoryDeployer = new HyperlaneProxyFactoryDeployer(multiProvider);
|
|
@@ -128,11 +134,13 @@ async function executeDeploy({ chains, signer, multiProvider, outPath, artifacts
|
|
|
128
134
|
const defaultIsms = {};
|
|
129
135
|
for (const ismOrigin of chains) {
|
|
130
136
|
logBlue(`Deploying ISM to ${ismOrigin}`);
|
|
131
|
-
const ismConfig =
|
|
137
|
+
const ismConfig = ismConfigs[ismOrigin] ??
|
|
138
|
+
buildIsmConfig(owner, ismOrigin, chains, multisigConfigs);
|
|
132
139
|
ismContracts[ismOrigin] = {
|
|
133
|
-
|
|
140
|
+
interchainSecurityModule: await ismFactory.deploy(ismOrigin, ismConfig),
|
|
134
141
|
};
|
|
135
|
-
defaultIsms[ismOrigin] =
|
|
142
|
+
defaultIsms[ismOrigin] =
|
|
143
|
+
ismContracts[ismOrigin].interchainSecurityModule.address;
|
|
136
144
|
}
|
|
137
145
|
artifacts = writeMergedAddresses(contractsFilePath, artifacts, ismContracts);
|
|
138
146
|
logGreen('ISM contracts deployed');
|
|
@@ -140,7 +148,7 @@ async function executeDeploy({ chains, signer, multiProvider, outPath, artifacts
|
|
|
140
148
|
logBlue(`Deploying core contracts to ${chains.join(', ')}`);
|
|
141
149
|
const coreDeployer = new HyperlaneCoreDeployer(multiProvider, ismFactory);
|
|
142
150
|
coreDeployer.cacheAddressesMap(mergedContractAddrs);
|
|
143
|
-
const coreConfigs = buildCoreConfigMap(owner, chains, defaultIsms,
|
|
151
|
+
const coreConfigs = buildCoreConfigMap(owner, chains, defaultIsms, hooksConfig, multisigConfigs);
|
|
144
152
|
const coreContracts = await coreDeployer.deploy(coreConfigs);
|
|
145
153
|
artifacts = writeMergedAddresses(contractsFilePath, artifacts, coreContracts);
|
|
146
154
|
logGreen('Core contracts deployed');
|
|
@@ -160,48 +168,29 @@ async function executeDeploy({ chains, signer, multiProvider, outPath, artifacts
|
|
|
160
168
|
logBlue(`Agent configs are in ${agentFilePath}`);
|
|
161
169
|
}
|
|
162
170
|
function buildIsmConfig(owner, local, chains, multisigIsmConfigs) {
|
|
163
|
-
const
|
|
171
|
+
const aggregationIsmConfigs = buildAggregationIsmConfigs(local, chains, multisigIsmConfigs);
|
|
164
172
|
return {
|
|
165
173
|
owner,
|
|
166
174
|
type: IsmType.ROUTING,
|
|
167
|
-
domains:
|
|
175
|
+
domains: aggregationIsmConfigs,
|
|
168
176
|
};
|
|
169
177
|
}
|
|
170
|
-
function buildCoreConfigMap(owner, chains, defaultIsms,
|
|
178
|
+
function buildCoreConfigMap(owner, chains, defaultIsms, hooksConfig, multisigConfigs) {
|
|
171
179
|
return chains.reduce((config, chain) => {
|
|
172
|
-
const
|
|
180
|
+
const hooks = hooksConfig[chain] ??
|
|
181
|
+
presetHookConfigs(owner, chain, chains.filter((c) => c !== chain), multisigConfigs[chain]);
|
|
173
182
|
config[chain] = {
|
|
174
183
|
owner,
|
|
175
184
|
defaultIsm: defaultIsms[chain],
|
|
176
|
-
defaultHook:
|
|
177
|
-
|
|
178
|
-
hooks: [
|
|
179
|
-
{
|
|
180
|
-
type: HookType.MERKLE_TREE,
|
|
181
|
-
},
|
|
182
|
-
{
|
|
183
|
-
type: HookType.INTERCHAIN_GAS_PAYMASTER,
|
|
184
|
-
...igpConfig[chain],
|
|
185
|
-
},
|
|
186
|
-
],
|
|
187
|
-
},
|
|
188
|
-
requiredHook: {
|
|
189
|
-
type: HookType.PROTOCOL_FEE,
|
|
190
|
-
maxProtocolFee: ethers.utils.parseUnits('1', 'gwei'),
|
|
191
|
-
protocolFee: ethers.utils.parseUnits('0', 'wei'),
|
|
192
|
-
beneficiary: owner,
|
|
193
|
-
owner,
|
|
194
|
-
},
|
|
185
|
+
defaultHook: hooks.default,
|
|
186
|
+
requiredHook: hooks.required,
|
|
195
187
|
};
|
|
196
188
|
return config;
|
|
197
189
|
}, {});
|
|
198
190
|
}
|
|
199
191
|
function buildTestRecipientConfigMap(chains, addressesMap) {
|
|
200
192
|
return chains.reduce((config, chain) => {
|
|
201
|
-
const interchainSecurityModule =
|
|
202
|
-
// TODO revisit assumption that multisigIsm is always the ISM
|
|
203
|
-
addressesMap[chain].multisigIsm ??
|
|
204
|
-
addressesMap[chain].interchainSecurityModule ??
|
|
193
|
+
const interchainSecurityModule = addressesMap[chain].interchainSecurityModule ??
|
|
205
194
|
ethers.constants.AddressZero;
|
|
206
195
|
if (interchainSecurityModule === ethers.constants.AddressZero) {
|
|
207
196
|
logRed('Error: No ISM for TestRecipient, deploying with zero address');
|
|
@@ -210,7 +199,7 @@ function buildTestRecipientConfigMap(chains, addressesMap) {
|
|
|
210
199
|
return config;
|
|
211
200
|
}, {});
|
|
212
201
|
}
|
|
213
|
-
function buildIgpConfigMap(owner, chains, multisigConfigs) {
|
|
202
|
+
export function buildIgpConfigMap(owner, chains, multisigConfigs) {
|
|
214
203
|
const configMap = {};
|
|
215
204
|
for (const chain of chains) {
|
|
216
205
|
const overhead = {};
|
|
@@ -218,7 +207,14 @@ function buildIgpConfigMap(owner, chains, multisigConfigs) {
|
|
|
218
207
|
for (const remote of chains) {
|
|
219
208
|
if (chain === remote)
|
|
220
209
|
continue;
|
|
221
|
-
|
|
210
|
+
// TODO: accurate estimate of gas from ChainMap<ISMConfig>
|
|
211
|
+
const threshold = multisigConfigs[remote]
|
|
212
|
+
? multisigConfigs[remote].threshold
|
|
213
|
+
: 2;
|
|
214
|
+
const validatorsLength = multisigConfigs[remote]
|
|
215
|
+
? multisigConfigs[remote].validators.length
|
|
216
|
+
: 3;
|
|
217
|
+
overhead[remote] = multisigIsmVerificationCost(threshold, validatorsLength);
|
|
222
218
|
gasOracleType[remote] = GasOracleContractType.StorageGasOracle;
|
|
223
219
|
}
|
|
224
220
|
configMap[chain] = {
|
|
@@ -238,21 +234,14 @@ function writeMergedAddresses(filePath, aAddresses, bContracts) {
|
|
|
238
234
|
return mergedAddresses;
|
|
239
235
|
}
|
|
240
236
|
async function writeAgentConfig(filePath, artifacts, chains, multiProvider) {
|
|
241
|
-
|
|
242
|
-
const startBlocks = { ...agentStartBlocks };
|
|
237
|
+
const startBlocks = {};
|
|
243
238
|
for (const chain of chains) {
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
startBlocks[chain] = await
|
|
247
|
-
.getProvider(chain)
|
|
248
|
-
.getBlockNumber();
|
|
239
|
+
const core = HyperlaneCore.fromAddressesMap(artifacts, multiProvider);
|
|
240
|
+
const mailbox = core.getContracts(chain).mailbox;
|
|
241
|
+
startBlocks[chain] = (await mailbox.deployedBlock()).toNumber();
|
|
249
242
|
}
|
|
250
243
|
const mergedAddressesMap = objMerge(sdkContractAddressesMap, artifacts);
|
|
251
|
-
const
|
|
252
|
-
!!v.mailbox &&
|
|
253
|
-
!!v.interchainGasPaymaster &&
|
|
254
|
-
!!v.validatorAnnounce);
|
|
255
|
-
const agentConfig = buildAgentConfig(Object.keys(filteredAddressesMap), multiProvider, filteredAddressesMap, startBlocks);
|
|
244
|
+
const agentConfig = buildAgentConfig(Object.keys(mergedAddressesMap), multiProvider, mergedAddressesMap, startBlocks);
|
|
256
245
|
writeJson(filePath, agentConfig);
|
|
257
246
|
}
|
|
258
247
|
//# sourceMappingURL=core.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/deploy/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAKL,qBAAqB,
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/deploy/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
|
-
import { ChainName, MultiProvider } from '@hyperlane-xyz/sdk';
|
|
2
|
+
import { ChainMap, ChainName, IsmConfig, MultiProvider, MultisigConfig } from '@hyperlane-xyz/sdk';
|
|
3
3
|
export declare function runPreflightChecks({ origin, remotes, signer, multiProvider, minGas, }: {
|
|
4
4
|
origin: ChainName;
|
|
5
5
|
remotes: ChainName[];
|
|
@@ -13,4 +13,6 @@ export declare function runPreflightChecksForChains({ chains, signer, multiProvi
|
|
|
13
13
|
multiProvider: MultiProvider;
|
|
14
14
|
minGas: string;
|
|
15
15
|
}): Promise<void>;
|
|
16
|
+
export declare function isISMConfig(config: ChainMap<MultisigConfig> | ChainMap<IsmConfig>): boolean;
|
|
17
|
+
export declare function isZODISMConfig(filepath: string): boolean;
|
|
16
18
|
//# 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,
|
|
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,GACP,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;CAChB,iBAYA;AAED,wBAAsB,2BAA2B,CAAC,EAChD,MAAM,EACN,MAAM,EACN,aAAa,EACb,MAAM,GACP,EAAE;IACD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB,iBAiBA;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"}
|
package/dist/src/deploy/utils.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ProtocolType } from '@hyperlane-xyz/utils';
|
|
2
2
|
import { log, logGreen } from '../../logger.js';
|
|
3
|
+
import { parseIsmConfig } from '../config/ism.js';
|
|
3
4
|
import { assertGasBalances } from '../utils/balances.js';
|
|
4
5
|
import { assertSigner } from '../utils/keys.js';
|
|
5
6
|
export async function runPreflightChecks({ origin, remotes, signer, multiProvider, minGas, }) {
|
|
@@ -32,4 +33,12 @@ export async function runPreflightChecksForChains({ chains, signer, multiProvide
|
|
|
32
33
|
await assertGasBalances(multiProvider, signer, chains, minGas);
|
|
33
34
|
logGreen('Balances are sufficient ✅');
|
|
34
35
|
}
|
|
36
|
+
// from parsed types
|
|
37
|
+
export function isISMConfig(config) {
|
|
38
|
+
return Object.values(config).some((c) => 'type' in c);
|
|
39
|
+
}
|
|
40
|
+
// directly from filepath
|
|
41
|
+
export function isZODISMConfig(filepath) {
|
|
42
|
+
return parseIsmConfig(filepath).success;
|
|
43
|
+
}
|
|
35
44
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/deploy/utils.ts"],"names":[],"mappings":"
|
|
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,GAOP;IACC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAEpC,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,OAAO,2BAA2B,CAAC;QACjC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM;QACN,aAAa;QACb,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,EAChD,MAAM,EACN,MAAM,EACN,aAAa,EACb,MAAM,GAMP;IACC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAEpC,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,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/D,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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"AAmCA,wBAAsB,aAAa,CAAC,EAClC,GAAG,EACH,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,OAAO,EACP,gBAAgB,GACjB,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;CAC3B,iBAyCA"}
|
package/dist/src/deploy/warp.js
CHANGED
|
@@ -4,14 +4,17 @@ import { ERC20__factory, ERC721__factory } from '@hyperlane-xyz/core';
|
|
|
4
4
|
import { HypERC20Deployer, HypERC721Deployer, TokenType, chainMetadata as defaultChainMetadata, getChainIdNumber, } from '@hyperlane-xyz/sdk';
|
|
5
5
|
import { ProtocolType, objMap } from '@hyperlane-xyz/utils';
|
|
6
6
|
import { log, logBlue, logGray, logGreen } from '../../logger.js';
|
|
7
|
-
import { readDeploymentArtifacts } from '../config/artifacts.js';
|
|
8
7
|
import { readWarpRouteConfig } from '../config/warp.js';
|
|
9
8
|
import { MINIMUM_WARP_DEPLOY_GAS } from '../consts.js';
|
|
10
|
-
import {
|
|
9
|
+
import { getContext, getMergedContractAddresses } from '../context.js';
|
|
11
10
|
import { isFile, prepNewArtifactsFiles, runFileSelectionStep, writeJson, } from '../utils/files.js';
|
|
12
11
|
import { runPreflightChecks } from './utils.js';
|
|
13
12
|
export async function runWarpDeploy({ key, chainConfigPath, warpConfigPath, coreArtifactsPath, outPath, skipConfirmation, }) {
|
|
14
|
-
const { multiProvider, signer } =
|
|
13
|
+
const { multiProvider, signer, coreArtifacts } = await getContext({
|
|
14
|
+
chainConfigPath,
|
|
15
|
+
coreConfig: { coreArtifactsPath },
|
|
16
|
+
keyConfig: { key },
|
|
17
|
+
});
|
|
15
18
|
if (!warpConfigPath || !isFile(warpConfigPath)) {
|
|
16
19
|
warpConfigPath = await runFileSelectionStep('./configs', 'Warp config', 'warp');
|
|
17
20
|
}
|
|
@@ -19,12 +22,9 @@ export async function runWarpDeploy({ key, chainConfigPath, warpConfigPath, core
|
|
|
19
22
|
log(`Using warp config at ${warpConfigPath}`);
|
|
20
23
|
}
|
|
21
24
|
const warpRouteConfig = readWarpRouteConfig(warpConfigPath);
|
|
22
|
-
const artifacts = coreArtifactsPath
|
|
23
|
-
? readDeploymentArtifacts(coreArtifactsPath)
|
|
24
|
-
: undefined;
|
|
25
25
|
const configs = await runBuildConfigStep({
|
|
26
26
|
warpRouteConfig,
|
|
27
|
-
|
|
27
|
+
coreArtifacts,
|
|
28
28
|
multiProvider,
|
|
29
29
|
signer,
|
|
30
30
|
});
|
|
@@ -43,14 +43,14 @@ export async function runWarpDeploy({ key, chainConfigPath, warpConfigPath, core
|
|
|
43
43
|
});
|
|
44
44
|
await executeDeploy(deploymentParams);
|
|
45
45
|
}
|
|
46
|
-
async function runBuildConfigStep({ warpRouteConfig, multiProvider, signer,
|
|
46
|
+
async function runBuildConfigStep({ warpRouteConfig, multiProvider, signer, coreArtifacts, }) {
|
|
47
47
|
log('Assembling token configs');
|
|
48
48
|
const { base, synthetics } = warpRouteConfig;
|
|
49
49
|
const { type: baseType, chainName: baseChainName, isNft } = base;
|
|
50
50
|
const owner = await signer.getAddress();
|
|
51
51
|
const baseMetadata = await fetchBaseTokenMetadata(base, multiProvider);
|
|
52
52
|
log(`Using base token metadata: Name: ${baseMetadata.name}, Symbol: ${baseMetadata.symbol}, Decimals: ${baseMetadata.decimals}`);
|
|
53
|
-
const mergedContractAddrs = getMergedContractAddresses(
|
|
53
|
+
const mergedContractAddrs = getMergedContractAddresses(coreArtifacts, Object.keys(warpRouteConfig));
|
|
54
54
|
// Create configs that coalesce together values from the config file,
|
|
55
55
|
// the artifacts, and the SDK as a fallback
|
|
56
56
|
const configMap = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAIL,gBAAgB,EAChB,iBAAiB,EAMjB,SAAS,EACT,aAAa,IAAI,oBAAoB,EACrC,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAW,YAAY,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,
|
|
1
|
+
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,9 @@ import { ChainName } from '@hyperlane-xyz/sdk';
|
|
|
2
2
|
export declare function sendTestMessage({ key, chainConfigPath, coreArtifactsPath, origin, destination, timeoutSec, skipWaitForDelivery, }: {
|
|
3
3
|
key: string;
|
|
4
4
|
chainConfigPath: string;
|
|
5
|
-
coreArtifactsPath
|
|
6
|
-
origin
|
|
7
|
-
destination
|
|
5
|
+
coreArtifactsPath?: string;
|
|
6
|
+
origin?: ChainName;
|
|
7
|
+
destination?: ChainName;
|
|
8
8
|
timeoutSec: number;
|
|
9
9
|
skipWaitForDelivery: boolean;
|
|
10
10
|
}): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/send/message.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,SAAS,EAIV,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/send/message.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,SAAS,EAIV,MAAM,oBAAoB,CAAC;AAW5B,wBAAsB,eAAe,CAAC,EACpC,GAAG,EACH,eAAe,EACf,iBAAiB,EACjB,MAAM,EACN,WAAW,EACX,UAAU,EACV,mBAAmB,GACpB,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,iBAyCA"}
|
package/dist/src/send/message.js
CHANGED
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
import { HyperlaneCore, } from '@hyperlane-xyz/sdk';
|
|
2
2
|
import { addressToBytes32, timeout } from '@hyperlane-xyz/utils';
|
|
3
3
|
import { errorRed, log, logBlue, logGreen } from '../../logger.js';
|
|
4
|
-
import { readDeploymentArtifacts } from '../config/artifacts.js';
|
|
5
4
|
import { MINIMUM_TEST_SEND_GAS } from '../consts.js';
|
|
6
|
-
import {
|
|
5
|
+
import { getContext, getMergedContractAddresses } from '../context.js';
|
|
7
6
|
import { runPreflightChecks } from '../deploy/utils.js';
|
|
7
|
+
import { runSingleChainSelectionStep } from '../utils/chains.js';
|
|
8
8
|
const MESSAGE_BODY = '0x48656c6c6f21'; // Hello!'
|
|
9
|
-
// TODO improve the UX here by making params optional and
|
|
10
|
-
// prompting for missing values
|
|
11
9
|
export async function sendTestMessage({ key, chainConfigPath, coreArtifactsPath, origin, destination, timeoutSec, skipWaitForDelivery, }) {
|
|
12
|
-
const { signer, multiProvider } =
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
:
|
|
10
|
+
const { signer, multiProvider, customChains, coreArtifacts } = await getContext({
|
|
11
|
+
chainConfigPath,
|
|
12
|
+
coreConfig: { coreArtifactsPath },
|
|
13
|
+
keyConfig: { key },
|
|
14
|
+
});
|
|
15
|
+
if (!origin) {
|
|
16
|
+
origin = await runSingleChainSelectionStep(customChains, 'Select the origin chain');
|
|
17
|
+
}
|
|
18
|
+
if (!destination) {
|
|
19
|
+
destination = await runSingleChainSelectionStep(customChains, 'Select the destination chain');
|
|
20
|
+
}
|
|
16
21
|
await runPreflightChecks({
|
|
17
22
|
origin,
|
|
18
23
|
remotes: [destination],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/send/message.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,aAAa,GAEd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/send/message.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,10 @@ import { Address } from '@hyperlane-xyz/utils';
|
|
|
3
3
|
export declare function sendTestTransfer({ key, chainConfigPath, coreArtifactsPath, origin, destination, routerAddress, tokenType, wei, recipient, timeoutSec, skipWaitForDelivery, }: {
|
|
4
4
|
key: string;
|
|
5
5
|
chainConfigPath: string;
|
|
6
|
-
coreArtifactsPath
|
|
7
|
-
origin
|
|
8
|
-
destination
|
|
9
|
-
routerAddress
|
|
6
|
+
coreArtifactsPath?: string;
|
|
7
|
+
origin?: ChainName;
|
|
8
|
+
destination?: ChainName;
|
|
9
|
+
routerAddress?: Address;
|
|
10
10
|
tokenType: TokenType;
|
|
11
11
|
wei: string;
|
|
12
12
|
recipient?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../src/send/transfer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../src/send/transfer.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,SAAS,EAMT,SAAS,EACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAW,MAAM,sBAAsB,CAAC;AASxD,wBAAsB,gBAAgB,CAAC,EACrC,GAAG,EACH,eAAe,EACf,iBAAiB,EACjB,MAAM,EACN,WAAW,EACX,aAAa,EACb,SAAS,EACT,GAAG,EACH,SAAS,EACT,UAAU,EACV,mBAAmB,GACpB,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,SAAS,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,iBAoEA"}
|