@aztec/aztec 0.0.0-test.1 → 0.0.1-commit.023c3e5
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/README.md +1 -1
- package/dest/bin/index.d.ts +1 -1
- package/dest/bin/index.js +23 -12
- package/dest/cli/aztec_start_action.d.ts +1 -1
- package/dest/cli/aztec_start_action.d.ts.map +1 -1
- package/dest/cli/aztec_start_action.js +40 -40
- package/dest/cli/aztec_start_options.d.ts +5 -3
- package/dest/cli/aztec_start_options.d.ts.map +1 -1
- package/dest/cli/aztec_start_options.js +146 -225
- package/dest/cli/cli.d.ts +1 -1
- package/dest/cli/cli.d.ts.map +1 -1
- package/dest/cli/cli.js +12 -7
- package/dest/cli/cmds/migrate_ha_db.d.ts +3 -0
- package/dest/cli/cmds/migrate_ha_db.d.ts.map +1 -0
- package/dest/cli/cmds/migrate_ha_db.js +27 -0
- package/dest/cli/cmds/start_archiver.d.ts +1 -1
- package/dest/cli/cmds/start_archiver.d.ts.map +1 -1
- package/dest/cli/cmds/start_archiver.js +24 -18
- package/dest/cli/cmds/start_bot.d.ts +4 -7
- package/dest/cli/cmds/start_bot.d.ts.map +1 -1
- package/dest/cli/cmds/start_bot.js +25 -14
- package/dest/cli/cmds/start_node.d.ts +2 -2
- package/dest/cli/cmds/start_node.d.ts.map +1 -1
- package/dest/cli/cmds/start_node.js +68 -81
- package/dest/cli/cmds/start_p2p_bootstrap.d.ts +2 -2
- package/dest/cli/cmds/start_p2p_bootstrap.d.ts.map +1 -1
- package/dest/cli/cmds/start_p2p_bootstrap.js +10 -6
- package/dest/cli/cmds/start_prover_agent.d.ts +1 -1
- package/dest/cli/cmds/start_prover_agent.d.ts.map +1 -1
- package/dest/cli/cmds/start_prover_agent.js +33 -4
- package/dest/cli/cmds/start_prover_broker.d.ts +1 -1
- package/dest/cli/cmds/start_prover_broker.d.ts.map +1 -1
- package/dest/cli/cmds/start_prover_broker.js +10 -4
- package/dest/cli/cmds/start_prover_node.d.ts +1 -1
- package/dest/cli/cmds/start_prover_node.d.ts.map +1 -1
- package/dest/cli/cmds/start_prover_node.js +44 -46
- package/dest/cli/cmds/start_txe.d.ts +1 -1
- package/dest/cli/index.d.ts +1 -1
- package/dest/cli/preload_crs.d.ts +3 -0
- package/dest/cli/preload_crs.d.ts.map +1 -0
- package/dest/cli/preload_crs.js +6 -0
- package/dest/cli/release_version.d.ts +2 -0
- package/dest/cli/release_version.d.ts.map +1 -0
- package/dest/cli/release_version.js +14 -0
- package/dest/cli/util.d.ts +38 -7
- package/dest/cli/util.d.ts.map +1 -1
- package/dest/cli/util.js +198 -28
- package/dest/cli/versioning.d.ts +1 -1
- package/dest/cli/versioning.js +3 -3
- package/dest/examples/token.d.ts +1 -1
- package/dest/examples/token.js +31 -18
- package/dest/examples/util.d.ts +5 -6
- package/dest/examples/util.d.ts.map +1 -1
- package/dest/examples/util.js +5 -6
- package/dest/index.d.ts +2 -2
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +1 -1
- package/dest/local-network/banana_fpc.d.ts +10 -0
- package/dest/local-network/banana_fpc.d.ts.map +1 -0
- package/dest/{sandbox → local-network}/banana_fpc.js +22 -24
- package/dest/local-network/index.d.ts +4 -0
- package/dest/local-network/index.d.ts.map +1 -0
- package/dest/local-network/index.js +3 -0
- package/dest/local-network/local-network.d.ts +71 -0
- package/dest/local-network/local-network.d.ts.map +1 -0
- package/dest/local-network/local-network.js +194 -0
- package/dest/local-network/sponsored_fpc.d.ts +5 -0
- package/dest/local-network/sponsored_fpc.d.ts.map +1 -0
- package/dest/local-network/sponsored_fpc.js +18 -0
- package/dest/mnemonic.d.ts +1 -1
- package/dest/splash.d.ts +1 -1
- package/dest/testing/anvil_test_watcher.d.ts +34 -0
- package/dest/testing/anvil_test_watcher.d.ts.map +1 -0
- package/dest/testing/anvil_test_watcher.js +144 -0
- package/dest/testing/cheat_codes.d.ts +43 -0
- package/dest/testing/cheat_codes.d.ts.map +1 -0
- package/dest/testing/cheat_codes.js +62 -0
- package/dest/testing/epoch_test_settler.d.ts +19 -0
- package/dest/testing/epoch_test_settler.d.ts.map +1 -0
- package/dest/testing/epoch_test_settler.js +62 -0
- package/dest/testing/index.d.ts +5 -0
- package/dest/testing/index.d.ts.map +1 -0
- package/dest/testing/index.js +4 -0
- package/package.json +55 -45
- package/scripts/aztec.sh +63 -0
- package/scripts/compile.sh +44 -0
- package/scripts/extract_function.js +47 -0
- package/scripts/flamegraph.sh +59 -0
- package/scripts/init.sh +35 -0
- package/scripts/new.sh +59 -0
- package/scripts/setup_project.sh +31 -0
- package/src/bin/index.ts +28 -12
- package/src/cli/aztec_start_action.ts +36 -38
- package/src/cli/aztec_start_options.ts +161 -222
- package/src/cli/cli.ts +20 -11
- package/src/cli/cmds/migrate_ha_db.ts +43 -0
- package/src/cli/cmds/start_archiver.ts +15 -20
- package/src/cli/cmds/start_bot.ts +36 -13
- package/src/cli/cmds/start_node.ts +91 -86
- package/src/cli/cmds/start_p2p_bootstrap.ts +14 -6
- package/src/cli/cmds/start_prover_agent.ts +24 -12
- package/src/cli/cmds/start_prover_broker.ts +24 -4
- package/src/cli/cmds/start_prover_node.ts +54 -51
- package/src/cli/preload_crs.ts +7 -0
- package/src/cli/release_version.ts +21 -0
- package/src/cli/util.ts +208 -34
- package/src/cli/versioning.ts +3 -3
- package/src/examples/token.ts +21 -19
- package/src/examples/util.ts +6 -8
- package/src/index.ts +5 -6
- package/src/{sandbox → local-network}/banana_fpc.ts +27 -28
- package/src/local-network/index.ts +7 -0
- package/src/local-network/local-network.ts +240 -0
- package/src/local-network/sponsored_fpc.ts +26 -0
- package/src/testing/anvil_test_watcher.ts +166 -0
- package/src/testing/cheat_codes.ts +79 -0
- package/src/testing/epoch_test_settler.ts +71 -0
- package/src/testing/index.ts +4 -0
- package/dest/cli/chain_l2_config.d.ts +0 -19
- package/dest/cli/chain_l2_config.d.ts.map +0 -1
- package/dest/cli/chain_l2_config.js +0 -56
- package/dest/cli/cmds/start_blob_sink.d.ts +0 -3
- package/dest/cli/cmds/start_blob_sink.d.ts.map +0 -1
- package/dest/cli/cmds/start_blob_sink.js +0 -17
- package/dest/cli/cmds/start_faucet.d.ts +0 -4
- package/dest/cli/cmds/start_faucet.d.ts.map +0 -1
- package/dest/cli/cmds/start_faucet.js +0 -20
- package/dest/cli/cmds/start_pxe.d.ts +0 -16
- package/dest/cli/cmds/start_pxe.d.ts.map +0 -1
- package/dest/cli/cmds/start_pxe.js +0 -95
- package/dest/cli/get_l1_config.d.ts +0 -7
- package/dest/cli/get_l1_config.d.ts.map +0 -1
- package/dest/cli/get_l1_config.js +0 -13
- package/dest/sandbox/banana_fpc.d.ts +0 -11
- package/dest/sandbox/banana_fpc.d.ts.map +0 -1
- package/dest/sandbox/index.d.ts +0 -5
- package/dest/sandbox/index.d.ts.map +0 -1
- package/dest/sandbox/index.js +0 -4
- package/dest/sandbox/sandbox.d.ts +0 -76
- package/dest/sandbox/sandbox.d.ts.map +0 -1
- package/dest/sandbox/sandbox.js +0 -181
- package/dest/sandbox/sponsored_fee_payment_method.d.ts +0 -23
- package/dest/sandbox/sponsored_fee_payment_method.d.ts.map +0 -1
- package/dest/sandbox/sponsored_fee_payment_method.js +0 -36
- package/dest/sandbox/sponsored_fpc.d.ts +0 -6
- package/dest/sandbox/sponsored_fpc.d.ts.map +0 -1
- package/dest/sandbox/sponsored_fpc.js +0 -26
- package/src/cli/chain_l2_config.ts +0 -74
- package/src/cli/cmds/start_blob_sink.ts +0 -31
- package/src/cli/cmds/start_faucet.ts +0 -34
- package/src/cli/cmds/start_pxe.ts +0 -129
- package/src/cli/get_l1_config.ts +0 -18
- package/src/sandbox/index.ts +0 -5
- package/src/sandbox/sandbox.ts +0 -229
- package/src/sandbox/sponsored_fee_payment_method.ts +0 -46
- package/src/sandbox/sponsored_fpc.ts +0 -38
|
@@ -1,18 +1,25 @@
|
|
|
1
1
|
import { archiverConfigMappings } from '@aztec/archiver/config';
|
|
2
|
-
import {
|
|
3
|
-
import { sequencerClientConfigMappings } from '@aztec/aztec-node/config';
|
|
4
|
-
import { blobSinkConfigMappings } from '@aztec/blob-sink/server';
|
|
2
|
+
import { blobClientConfigMapping } from '@aztec/blob-client/client/config';
|
|
5
3
|
import { botConfigMappings } from '@aztec/bot/config';
|
|
4
|
+
import { l1ContractsConfigMappings } from '@aztec/ethereum/config';
|
|
5
|
+
import { l1ContractAddressesMapping } from '@aztec/ethereum/l1-contract-addresses';
|
|
6
|
+
import { l1ReaderConfigMappings } from '@aztec/ethereum/l1-reader';
|
|
7
|
+
import { getKeys } from '@aztec/foundation/collection';
|
|
6
8
|
import { booleanConfigHelper, isBooleanConfigValue, omitConfigMappings } from '@aztec/foundation/config';
|
|
9
|
+
import { dataConfigMappings } from '@aztec/kv-store/config';
|
|
10
|
+
import { sharedNodeConfigMappings } from '@aztec/node-lib/config';
|
|
7
11
|
import { bootnodeConfigMappings, p2pConfigMappings } from '@aztec/p2p/config';
|
|
8
|
-
import { proverAgentConfigMappings, proverBrokerConfigMappings } from '@aztec/prover-client/broker';
|
|
12
|
+
import { proverAgentConfigMappings, proverBrokerConfigMappings } from '@aztec/prover-client/broker/config';
|
|
9
13
|
import { proverNodeConfigMappings } from '@aztec/prover-node/config';
|
|
10
14
|
import { allPxeConfigMappings } from '@aztec/pxe/config';
|
|
11
|
-
import {
|
|
15
|
+
import { sequencerClientConfigMappings } from '@aztec/sequencer-client/config';
|
|
16
|
+
import { chainConfigMappings, nodeRpcConfigMappings } from '@aztec/stdlib/config';
|
|
17
|
+
import { telemetryClientConfigMappings } from '@aztec/telemetry-client/config';
|
|
18
|
+
import { worldStateConfigMappings } from '@aztec/world-state/config';
|
|
12
19
|
import { DefaultMnemonic } from '../mnemonic.js';
|
|
13
20
|
export const getOptions = (namespace, configMappings)=>{
|
|
14
21
|
const options = [];
|
|
15
|
-
for (const [key, { env, defaultValue: def, parseEnv, description, printDefault }] of Object.entries(configMappings)){
|
|
22
|
+
for (const [key, { env, defaultValue: def, parseEnv, description, printDefault, fallback }] of Object.entries(configMappings)){
|
|
16
23
|
if (universalOptions.includes(key)) {
|
|
17
24
|
continue;
|
|
18
25
|
}
|
|
@@ -22,132 +29,120 @@ export const getOptions = (namespace, configMappings)=>{
|
|
|
22
29
|
description,
|
|
23
30
|
defaultValue: def,
|
|
24
31
|
printDefault,
|
|
25
|
-
|
|
32
|
+
env: env,
|
|
33
|
+
fallback,
|
|
26
34
|
parseVal: parseEnv
|
|
27
35
|
});
|
|
28
36
|
}
|
|
29
37
|
return options;
|
|
30
38
|
};
|
|
39
|
+
const configToFlag = (flag, configMapping, overrideDefaultValue)=>{
|
|
40
|
+
if (!configMapping.isBoolean) {
|
|
41
|
+
flag += ' <value>';
|
|
42
|
+
}
|
|
43
|
+
const flagConfig = {
|
|
44
|
+
flag,
|
|
45
|
+
env: undefined,
|
|
46
|
+
defaultValue: undefined,
|
|
47
|
+
parseVal: configMapping.parseEnv,
|
|
48
|
+
...configMapping
|
|
49
|
+
};
|
|
50
|
+
if (overrideDefaultValue !== undefined) {
|
|
51
|
+
flagConfig.defaultValue = overrideDefaultValue;
|
|
52
|
+
}
|
|
53
|
+
return flagConfig;
|
|
54
|
+
};
|
|
31
55
|
// These are options used by multiple modules so should be inputted once
|
|
32
56
|
export const universalOptions = [
|
|
33
|
-
'
|
|
34
|
-
'
|
|
35
|
-
'
|
|
57
|
+
'l1ConsensusHostUrls',
|
|
58
|
+
'l1ConsensusHostApiKeys',
|
|
59
|
+
'l1ConsensusHostApiKeyHeaders',
|
|
36
60
|
'p2pEnabled',
|
|
37
|
-
'
|
|
61
|
+
'fishermanMode',
|
|
62
|
+
...getKeys(chainConfigMappings),
|
|
63
|
+
...getKeys(l1ContractsConfigMappings),
|
|
64
|
+
...getKeys(l1ContractAddressesMapping),
|
|
65
|
+
...getKeys(l1ReaderConfigMappings),
|
|
66
|
+
...getKeys(dataConfigMappings),
|
|
67
|
+
...getKeys(worldStateConfigMappings)
|
|
38
68
|
];
|
|
69
|
+
export const NETWORK_FLAG = 'network';
|
|
39
70
|
// Define categories and options
|
|
40
71
|
export const aztecStartOptions = {
|
|
41
|
-
|
|
72
|
+
MISC: [
|
|
42
73
|
{
|
|
43
|
-
flag:
|
|
74
|
+
flag: `--${NETWORK_FLAG} <value>`,
|
|
44
75
|
description: 'Network to run Aztec on',
|
|
45
76
|
defaultValue: undefined,
|
|
46
|
-
|
|
47
|
-
}
|
|
77
|
+
env: 'NETWORK'
|
|
78
|
+
},
|
|
79
|
+
configToFlag('--auto-update', sharedNodeConfigMappings.autoUpdate),
|
|
80
|
+
configToFlag('--auto-update-url', sharedNodeConfigMappings.autoUpdateUrl),
|
|
81
|
+
configToFlag('--sync-mode', sharedNodeConfigMappings.syncMode),
|
|
82
|
+
configToFlag('--snapshots-urls', sharedNodeConfigMappings.snapshotsUrls),
|
|
83
|
+
configToFlag('--fisherman-mode', sharedNodeConfigMappings.fishermanMode)
|
|
48
84
|
],
|
|
49
|
-
|
|
85
|
+
LOCAL_NETWORK: [
|
|
50
86
|
{
|
|
51
|
-
flag: '--
|
|
52
|
-
description: 'Starts Aztec
|
|
87
|
+
flag: '--local-network',
|
|
88
|
+
description: 'Starts Aztec Local Network',
|
|
53
89
|
defaultValue: undefined,
|
|
54
|
-
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
flag: '--sandbox.testAccounts',
|
|
58
|
-
description: 'Deploy test accounts on sandbox start',
|
|
59
|
-
envVar: 'TEST_ACCOUNTS',
|
|
60
|
-
...booleanConfigHelper(true)
|
|
90
|
+
env: undefined
|
|
61
91
|
},
|
|
62
92
|
{
|
|
63
|
-
flag: '--
|
|
64
|
-
description: '
|
|
65
|
-
|
|
66
|
-
|
|
93
|
+
flag: '--local-network.l1Mnemonic <value>',
|
|
94
|
+
description: 'Mnemonic for L1 accounts. Will be used ',
|
|
95
|
+
defaultValue: DefaultMnemonic,
|
|
96
|
+
env: 'MNEMONIC'
|
|
67
97
|
}
|
|
68
98
|
],
|
|
69
99
|
API: [
|
|
70
100
|
{
|
|
71
101
|
flag: '--port <value>',
|
|
72
|
-
description: 'Port to run the Aztec Services on
|
|
102
|
+
description: 'Port to run the Aztec Services on',
|
|
73
103
|
defaultValue: 8080,
|
|
74
|
-
|
|
104
|
+
env: 'AZTEC_PORT',
|
|
105
|
+
parseVal: (val)=>parseInt(val, 10)
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
flag: '--admin-port <value>',
|
|
109
|
+
description: 'Port to run admin APIs of Aztec Services on',
|
|
110
|
+
defaultValue: 8880,
|
|
111
|
+
env: 'AZTEC_ADMIN_PORT',
|
|
75
112
|
parseVal: (val)=>parseInt(val, 10)
|
|
76
113
|
},
|
|
77
114
|
{
|
|
78
115
|
flag: '--api-prefix <value>',
|
|
79
116
|
description: 'Prefix for API routes on any service that is started',
|
|
80
117
|
defaultValue: '',
|
|
81
|
-
|
|
82
|
-
}
|
|
118
|
+
env: 'API_PREFIX'
|
|
119
|
+
},
|
|
120
|
+
configToFlag('--rpcMaxBatchSize', nodeRpcConfigMappings.rpcMaxBatchSize),
|
|
121
|
+
configToFlag('--rpcMaxBodySize', nodeRpcConfigMappings.rpcMaxBodySize)
|
|
83
122
|
],
|
|
84
123
|
ETHEREUM: [
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
{
|
|
95
|
-
flag: '--l1-chain-id <value>',
|
|
96
|
-
description: 'The L1 chain ID',
|
|
97
|
-
defaultValue: 31337,
|
|
98
|
-
envVar: 'L1_CHAIN_ID',
|
|
99
|
-
parseVal: (val)=>parseInt(val, 10)
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
flag: '--l1-mnemonic <value>',
|
|
103
|
-
description: 'Mnemonic for L1 accounts. Will be used if no publisher private keys are provided',
|
|
104
|
-
defaultValue: DefaultMnemonic,
|
|
105
|
-
envVar: 'MNEMONIC'
|
|
106
|
-
}
|
|
124
|
+
configToFlag('--l1-chain-id', l1ReaderConfigMappings.l1ChainId),
|
|
125
|
+
// Do not set default for CLI: keep undefined unless provided via flag or env
|
|
126
|
+
configToFlag('--l1-rpc-urls', {
|
|
127
|
+
...l1ReaderConfigMappings.l1RpcUrls,
|
|
128
|
+
defaultValue: undefined
|
|
129
|
+
}),
|
|
130
|
+
configToFlag('--l1-consensus-host-urls', blobClientConfigMapping.l1ConsensusHostUrls),
|
|
131
|
+
configToFlag('--l1-consensus-host-api-keys', blobClientConfigMapping.l1ConsensusHostApiKeys),
|
|
132
|
+
configToFlag('--l1-consensus-host-api-key-headers', blobClientConfigMapping.l1ConsensusHostApiKeyHeaders)
|
|
107
133
|
],
|
|
108
|
-
'L1
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
flag: '--inbox-address <value>',
|
|
123
|
-
description: 'The deployed L1 -> L2 inbox contract address',
|
|
124
|
-
defaultValue: undefined,
|
|
125
|
-
envVar: 'INBOX_CONTRACT_ADDRESS'
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
flag: '--outbox-address <value>',
|
|
129
|
-
description: 'The deployed L2 -> L1 outbox contract address',
|
|
130
|
-
defaultValue: undefined,
|
|
131
|
-
envVar: 'OUTBOX_CONTRACT_ADDRESS'
|
|
132
|
-
},
|
|
133
|
-
{
|
|
134
|
-
flag: '--fee-juice-address <value>',
|
|
135
|
-
description: 'The deployed L1 Fee Juice contract address',
|
|
136
|
-
defaultValue: undefined,
|
|
137
|
-
envVar: 'FEE_JUICE_CONTRACT_ADDRESS'
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
flag: '--staking-asset-address <value>',
|
|
141
|
-
description: 'The deployed L1 Staking Asset contract address',
|
|
142
|
-
defaultValue: undefined,
|
|
143
|
-
envVar: 'STAKING_ASSET_CONTRACT_ADDRESS'
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
flag: '--fee-juice-portal-address <value>',
|
|
147
|
-
description: 'The deployed L1 Fee Juice portal contract address',
|
|
148
|
-
defaultValue: undefined,
|
|
149
|
-
envVar: 'FEE_JUICE_PORTAL_CONTRACT_ADDRESS'
|
|
150
|
-
}
|
|
134
|
+
'L1 CONTRACTS': [
|
|
135
|
+
configToFlag('--registry-address', l1ContractAddressesMapping.registryAddress),
|
|
136
|
+
configToFlag('--rollup-version', chainConfigMappings.rollupVersion)
|
|
137
|
+
],
|
|
138
|
+
STORAGE: [
|
|
139
|
+
configToFlag('--data-directory', dataConfigMappings.dataDirectory),
|
|
140
|
+
configToFlag('--data-store-map-size-kb', dataConfigMappings.dataStoreMapSizeKb)
|
|
141
|
+
],
|
|
142
|
+
'WORLD STATE': [
|
|
143
|
+
configToFlag('--world-state-data-directory', worldStateConfigMappings.worldStateDataDirectory),
|
|
144
|
+
configToFlag('--world-state-db-map-size-kb', worldStateConfigMappings.worldStateDbMapSizeKb),
|
|
145
|
+
configToFlag('--world-state-block-history', worldStateConfigMappings.worldStateBlockHistory)
|
|
151
146
|
],
|
|
152
147
|
// We can't easily auto-generate node options as they're parts of modules defined below
|
|
153
148
|
'AZTEC NODE': [
|
|
@@ -155,127 +150,48 @@ export const aztecStartOptions = {
|
|
|
155
150
|
flag: '--node',
|
|
156
151
|
description: 'Starts Aztec Node with options',
|
|
157
152
|
defaultValue: undefined,
|
|
158
|
-
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
flag: '--data-directory <value>',
|
|
162
|
-
description: 'Where to store data. If not set, will store temporarily',
|
|
163
|
-
defaultValue: undefined,
|
|
164
|
-
envVar: 'DATA_DIRECTORY'
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
flag: '--node.archiverUrl <value>',
|
|
168
|
-
description: 'URL for an archiver service',
|
|
169
|
-
defaultValue: undefined,
|
|
170
|
-
envVar: 'ARCHIVER_URL'
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
flag: '--node.deployAztecContracts',
|
|
174
|
-
description: 'Deploys L1 Aztec contracts before starting the node. Needs mnemonic or private key to be set.',
|
|
175
|
-
envVar: 'DEPLOY_AZTEC_CONTRACTS',
|
|
176
|
-
defaultValue: undefined
|
|
177
|
-
},
|
|
178
|
-
{
|
|
179
|
-
flag: '--node.deployAztecContractsSalt <value>',
|
|
180
|
-
description: 'Numeric salt for deploying L1 Aztec contracts before starting the node. Needs mnemonic or private key to be set. Implies --node.deployAztecContracts.',
|
|
181
|
-
envVar: 'DEPLOY_AZTEC_CONTRACTS_SALT',
|
|
182
|
-
defaultValue: undefined,
|
|
183
|
-
parseVal: (val)=>val ? parseInt(val) : undefined
|
|
184
|
-
},
|
|
185
|
-
{
|
|
186
|
-
flag: '--node.assumeProvenThroughBlockNumber <value>',
|
|
187
|
-
description: 'Cheats the rollup contract into assuming every block until this one is proven. Useful for speeding up bootstraps.',
|
|
188
|
-
envVar: 'ASSUME_PROVEN_THROUGH_BLOCK_NUMBER',
|
|
189
|
-
parseVal: (val)=>parseInt(val, 10),
|
|
190
|
-
defaultValue: 0
|
|
191
|
-
},
|
|
192
|
-
{
|
|
193
|
-
flag: '--node.publisherPrivateKey <value>',
|
|
194
|
-
description: 'Private key of account for publishing L1 contracts',
|
|
195
|
-
defaultValue: undefined,
|
|
196
|
-
envVar: 'L1_PRIVATE_KEY'
|
|
197
|
-
},
|
|
198
|
-
{
|
|
199
|
-
flag: '--node.worldStateBlockCheckIntervalMS <value>',
|
|
200
|
-
description: 'Frequency in which to check for blocks in ms',
|
|
201
|
-
defaultValue: 100,
|
|
202
|
-
envVar: 'WS_BLOCK_CHECK_INTERVAL_MS',
|
|
203
|
-
parseVal: (val)=>parseInt(val, 10)
|
|
204
|
-
},
|
|
205
|
-
{
|
|
206
|
-
flag: '--node.testAccounts',
|
|
207
|
-
description: 'Populate genesis state with initial fee juice for test accounts',
|
|
208
|
-
envVar: 'TEST_ACCOUNTS',
|
|
209
|
-
...booleanConfigHelper()
|
|
153
|
+
env: undefined
|
|
210
154
|
}
|
|
211
155
|
],
|
|
212
|
-
'P2P SUBSYSTEM': [
|
|
213
|
-
{
|
|
214
|
-
flag: '--p2p-enabled',
|
|
215
|
-
description: 'Enable P2P subsystem',
|
|
216
|
-
envVar: 'P2P_ENABLED',
|
|
217
|
-
...booleanConfigHelper()
|
|
218
|
-
},
|
|
219
|
-
...getOptions('p2p', p2pConfigMappings)
|
|
220
|
-
],
|
|
221
|
-
TELEMETRY: [
|
|
222
|
-
...getOptions('tel', telemetryClientConfigMappings)
|
|
223
|
-
],
|
|
224
|
-
PXE: [
|
|
225
|
-
{
|
|
226
|
-
flag: '--pxe',
|
|
227
|
-
description: 'Starts Aztec PXE with options',
|
|
228
|
-
defaultValue: undefined,
|
|
229
|
-
envVar: undefined
|
|
230
|
-
},
|
|
231
|
-
...getOptions('pxe', allPxeConfigMappings)
|
|
232
|
-
],
|
|
233
156
|
ARCHIVER: [
|
|
234
157
|
{
|
|
235
158
|
flag: '--archiver',
|
|
236
159
|
description: 'Starts Aztec Archiver with options',
|
|
237
160
|
defaultValue: undefined,
|
|
238
|
-
|
|
161
|
+
env: undefined
|
|
239
162
|
},
|
|
240
|
-
|
|
241
|
-
...getOptions('archiver', archiverConfigMappings).filter((opt)=>!opt.flag.includes('archiverUrl'))
|
|
163
|
+
...getOptions('archiver', omitConfigMappings(archiverConfigMappings, Object.keys(l1ContractsConfigMappings)))
|
|
242
164
|
],
|
|
243
165
|
SEQUENCER: [
|
|
244
166
|
{
|
|
245
167
|
flag: '--sequencer',
|
|
246
168
|
description: 'Starts Aztec Sequencer with options',
|
|
247
169
|
defaultValue: undefined,
|
|
248
|
-
|
|
249
|
-
},
|
|
250
|
-
...getOptions('sequencer', sequencerClientConfigMappings
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
envVar: undefined
|
|
258
|
-
},
|
|
259
|
-
...getOptions('blobSink', blobSinkConfigMappings)
|
|
170
|
+
env: undefined
|
|
171
|
+
},
|
|
172
|
+
...getOptions('sequencer', omitConfigMappings(sequencerClientConfigMappings, [
|
|
173
|
+
'fakeProcessingDelayPerTxMs',
|
|
174
|
+
'fakeThrowAfterProcessingTxCount',
|
|
175
|
+
'skipCollectingAttestations',
|
|
176
|
+
'skipInvalidateBlockAsProposer',
|
|
177
|
+
'blobSinkMapSizeKb'
|
|
178
|
+
]))
|
|
260
179
|
],
|
|
261
180
|
'PROVER NODE': [
|
|
262
181
|
{
|
|
263
182
|
flag: '--prover-node',
|
|
264
183
|
description: 'Starts Aztec Prover Node with options',
|
|
265
184
|
defaultValue: undefined,
|
|
266
|
-
|
|
267
|
-
},
|
|
268
|
-
{
|
|
269
|
-
flag: '--proverNode.archiverUrl <value>',
|
|
270
|
-
description: 'URL for an archiver service',
|
|
271
|
-
defaultValue: undefined,
|
|
272
|
-
envVar: 'ARCHIVER_URL'
|
|
185
|
+
env: undefined
|
|
273
186
|
},
|
|
274
187
|
...getOptions('proverNode', omitConfigMappings(proverNodeConfigMappings, [
|
|
275
188
|
// filter out options passed separately
|
|
276
|
-
...
|
|
277
|
-
...
|
|
278
|
-
...
|
|
189
|
+
...getKeys(archiverConfigMappings),
|
|
190
|
+
...getKeys(proverBrokerConfigMappings),
|
|
191
|
+
...getKeys(proverAgentConfigMappings),
|
|
192
|
+
...getKeys(p2pConfigMappings),
|
|
193
|
+
...getKeys(worldStateConfigMappings),
|
|
194
|
+
...getKeys(sharedNodeConfigMappings)
|
|
279
195
|
]))
|
|
280
196
|
],
|
|
281
197
|
'PROVER BROKER': [
|
|
@@ -283,7 +199,7 @@ export const aztecStartOptions = {
|
|
|
283
199
|
flag: '--prover-broker',
|
|
284
200
|
description: 'Starts Aztec proving job broker',
|
|
285
201
|
defaultValue: undefined,
|
|
286
|
-
|
|
202
|
+
env: undefined
|
|
287
203
|
},
|
|
288
204
|
...getOptions('proverBroker', // filter out archiver options from prover node options as they're passed separately in --archiver
|
|
289
205
|
proverBrokerConfigMappings)
|
|
@@ -293,56 +209,61 @@ export const aztecStartOptions = {
|
|
|
293
209
|
flag: '--prover-agent',
|
|
294
210
|
description: 'Starts Aztec Prover Agent with options',
|
|
295
211
|
defaultValue: undefined,
|
|
296
|
-
|
|
212
|
+
env: undefined
|
|
297
213
|
},
|
|
298
214
|
...getOptions('proverAgent', proverAgentConfigMappings)
|
|
299
215
|
],
|
|
216
|
+
'P2P SUBSYSTEM': [
|
|
217
|
+
{
|
|
218
|
+
flag: '--p2p-enabled [value]',
|
|
219
|
+
description: 'Enable P2P subsystem',
|
|
220
|
+
env: 'P2P_ENABLED',
|
|
221
|
+
...booleanConfigHelper()
|
|
222
|
+
},
|
|
223
|
+
...getOptions('p2p', p2pConfigMappings)
|
|
224
|
+
],
|
|
300
225
|
'P2P BOOTSTRAP': [
|
|
301
226
|
{
|
|
302
227
|
flag: '--p2p-bootstrap',
|
|
303
228
|
description: 'Starts Aztec P2P Bootstrap with options',
|
|
304
229
|
defaultValue: undefined,
|
|
305
|
-
|
|
306
|
-
},
|
|
307
|
-
...getOptions('p2pBootstrap', bootnodeConfigMappings
|
|
230
|
+
env: undefined
|
|
231
|
+
},
|
|
232
|
+
...getOptions('p2pBootstrap', omitConfigMappings(bootnodeConfigMappings, [
|
|
233
|
+
'p2pIp',
|
|
234
|
+
'p2pPort',
|
|
235
|
+
'peerIdPrivateKey',
|
|
236
|
+
'bootstrapNodes',
|
|
237
|
+
'listenAddress'
|
|
238
|
+
]))
|
|
239
|
+
],
|
|
240
|
+
TELEMETRY: [
|
|
241
|
+
...getOptions('tel', telemetryClientConfigMappings)
|
|
308
242
|
],
|
|
309
243
|
BOT: [
|
|
310
244
|
{
|
|
311
245
|
flag: '--bot',
|
|
312
246
|
description: 'Starts Aztec Bot with options',
|
|
313
247
|
defaultValue: undefined,
|
|
314
|
-
|
|
248
|
+
env: undefined
|
|
315
249
|
},
|
|
316
250
|
...getOptions('bot', botConfigMappings)
|
|
317
251
|
],
|
|
252
|
+
PXE: [
|
|
253
|
+
{
|
|
254
|
+
flag: '--pxe',
|
|
255
|
+
description: 'Starts Aztec PXE with options',
|
|
256
|
+
defaultValue: undefined,
|
|
257
|
+
env: undefined
|
|
258
|
+
},
|
|
259
|
+
...getOptions('pxe', allPxeConfigMappings)
|
|
260
|
+
],
|
|
318
261
|
TXE: [
|
|
319
262
|
{
|
|
320
263
|
flag: '--txe',
|
|
321
264
|
description: 'Starts Aztec TXE with options',
|
|
322
265
|
defaultValue: undefined,
|
|
323
|
-
|
|
266
|
+
env: undefined
|
|
324
267
|
}
|
|
325
|
-
],
|
|
326
|
-
FAUCET: [
|
|
327
|
-
{
|
|
328
|
-
flag: '--faucet',
|
|
329
|
-
description: 'Starts the Aztec faucet',
|
|
330
|
-
defaultValue: undefined,
|
|
331
|
-
envVar: undefined
|
|
332
|
-
},
|
|
333
|
-
{
|
|
334
|
-
flag: '--faucet.apiServer',
|
|
335
|
-
description: 'Starts a simple HTTP server to access the faucet',
|
|
336
|
-
defaultValue: true,
|
|
337
|
-
envVar: undefined
|
|
338
|
-
},
|
|
339
|
-
{
|
|
340
|
-
flag: '--faucet.apiServerPort <value>',
|
|
341
|
-
description: 'The port on which to start the api server on',
|
|
342
|
-
defaultValue: 8080,
|
|
343
|
-
envVar: undefined,
|
|
344
|
-
parseVal: (val)=>parseInt(val, 10)
|
|
345
|
-
},
|
|
346
|
-
...getOptions('faucet', faucetConfigMapping)
|
|
347
268
|
]
|
|
348
269
|
};
|
package/dest/cli/cli.d.ts
CHANGED
|
@@ -6,4 +6,4 @@ import { Command } from 'commander';
|
|
|
6
6
|
* @param debugLogger - logger for logging debug messages.
|
|
7
7
|
*/
|
|
8
8
|
export declare function injectAztecCommands(program: Command, userLog: LogFn, debugLogger: Logger): Command;
|
|
9
|
-
//# sourceMappingURL=
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFM0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUtwQzs7OztHQUlHO0FBQ0gsd0JBQWdCLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0E0Q2xHIn0=
|
package/dest/cli/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CA4ClG"}
|
package/dest/cli/cli.js
CHANGED
|
@@ -20,14 +20,19 @@ import { addOptions, printAztecStartHelpText } from './util.js';
|
|
|
20
20
|
program.configureHelp({
|
|
21
21
|
sortSubcommands: true
|
|
22
22
|
});
|
|
23
|
-
|
|
23
|
+
if (process.env.AZTEC_SHELL_WRAPPER) {
|
|
24
|
+
program.addHelpText('after', `
|
|
25
|
+
Additional commands:
|
|
24
26
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
then runs
|
|
30
|
-
$ aztec-nargo test --silence-warnings --oracle-resolver=<TXE_ADDRESS> [options]
|
|
27
|
+
init [folder] [options] creates a new Aztec Noir project.
|
|
28
|
+
new <path> [options] creates a new Aztec Noir project in a new directory.
|
|
29
|
+
compile [options] compiles Aztec Noir contracts.
|
|
30
|
+
test [options] starts a TXE and runs "nargo test" using it as the oracle resolver.
|
|
31
31
|
`);
|
|
32
|
+
}
|
|
33
|
+
program.command('preload-crs').description('Preload the points data needed for proving and verifying').action(async (options)=>{
|
|
34
|
+
const { preloadCrs } = await import('./preload_crs.js');
|
|
35
|
+
return await preloadCrs(options, userLog, debugLogger);
|
|
36
|
+
});
|
|
32
37
|
return program;
|
|
33
38
|
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { Command } from 'commander';
|
|
2
|
+
export declare function injectMigrateCommand(program: Command, log: (msg: string) => void): Command;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0ZV9oYV9kYi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NsaS9jbWRzL21pZ3JhdGVfaGFfZGIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXpDLHdCQUFnQixvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEtBQUssSUFBSSxHQUFHLE9BQU8sQ0FzQzFGIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate_ha_db.d.ts","sourceRoot":"","sources":["../../../src/cli/cmds/migrate_ha_db.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAsC1F"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { runMigrations } from '@aztec/validator-ha-signer/migrations';
|
|
2
|
+
export function injectMigrateCommand(program, log) {
|
|
3
|
+
const migrateCommand = program.command('migrate-ha-db').description('Run validator-ha-signer database migrations');
|
|
4
|
+
migrateCommand.command('up').description('Apply pending migrations').requiredOption('--database-url <string>', 'PostgreSQL connection string', process.env.DATABASE_URL).option('--verbose', 'Enable verbose output', false).action(async (options)=>{
|
|
5
|
+
const migrations = await runMigrations(options.databaseUrl, {
|
|
6
|
+
direction: 'up',
|
|
7
|
+
verbose: options.verbose
|
|
8
|
+
});
|
|
9
|
+
if (migrations.length > 0) {
|
|
10
|
+
log(`Applied migrations: ${migrations.join(', ')}`);
|
|
11
|
+
} else {
|
|
12
|
+
log('No migrations to apply - schema is up to date');
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
migrateCommand.command('down').description('Rollback the last migration').requiredOption('--database-url <string>', 'PostgreSQL connection string', process.env.DATABASE_URL).option('--verbose', 'Enable verbose output', false).action(async (options)=>{
|
|
16
|
+
const migrations = await runMigrations(options.databaseUrl, {
|
|
17
|
+
direction: 'down',
|
|
18
|
+
verbose: options.verbose
|
|
19
|
+
});
|
|
20
|
+
if (migrations.length > 0) {
|
|
21
|
+
log(`Rolled back migrations: ${migrations.join(', ')}`);
|
|
22
|
+
} else {
|
|
23
|
+
log('No migrations to rollback');
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
return program;
|
|
27
|
+
}
|
|
@@ -6,4 +6,4 @@ export type { ArchiverConfig, DataStoreConfig };
|
|
|
6
6
|
export declare function startArchiver(options: any, signalHandlers: (() => Promise<void>)[], services: NamespacedApiHandlers): Promise<{
|
|
7
7
|
config: ArchiverConfig & DataStoreConfig;
|
|
8
8
|
}>;
|
|
9
|
-
//# sourceMappingURL=
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhcnRfYXJjaGl2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGkvY21kcy9zdGFydF9hcmNoaXZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxjQUFjLEVBQW9FLE1BQU0saUJBQWlCLENBQUM7QUFJeEgsT0FBTyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQXNCLE1BQU0sd0JBQXdCLENBQUM7QUFNbEYsWUFBWSxFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsQ0FBQztBQUVoRCxvQ0FBb0M7QUFDcEMsd0JBQXNCLGFBQWEsQ0FDakMsT0FBTyxFQUFFLEdBQUcsRUFDWixjQUFjLEVBQUUsQ0FBQyxNQUFNLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQ3ZDLFFBQVEsRUFBRSxxQkFBcUIsR0FDOUIsT0FBTyxDQUFDO0lBQUUsTUFBTSxFQUFFLGNBQWMsR0FBRyxlQUFlLENBQUE7Q0FBRSxDQUFDLENBK0J2RCJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start_archiver.d.ts","sourceRoot":"","sources":["../../../src/cli/cmds/start_archiver.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"start_archiver.d.ts","sourceRoot":"","sources":["../../../src/cli/cmds/start_archiver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAoE,MAAM,iBAAiB,CAAC;AAIxH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAMlF,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAEhD,oCAAoC;AACpC,wBAAsB,aAAa,CACjC,OAAO,EAAE,GAAG,EACZ,cAAc,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EACvC,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC;IAAE,MAAM,EAAE,cAAc,GAAG,eAAe,CAAA;CAAE,CAAC,CA+BvD"}
|
|
@@ -1,36 +1,42 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { createLogger } from '@aztec/aztec.js';
|
|
3
|
-
import {
|
|
1
|
+
import { archiverConfigMappings, createArchiver, getArchiverConfigFromEnv } from '@aztec/archiver';
|
|
2
|
+
import { createLogger } from '@aztec/aztec.js/log';
|
|
3
|
+
import { blobClientConfigMapping, createBlobClient } from '@aztec/blob-client/client';
|
|
4
|
+
import { getL1Config } from '@aztec/cli/config';
|
|
4
5
|
import { dataConfigMappings } from '@aztec/kv-store/config';
|
|
5
|
-
import { createStore } from '@aztec/kv-store/lmdb-v2';
|
|
6
6
|
import { ArchiverApiSchema } from '@aztec/stdlib/interfaces/server';
|
|
7
7
|
import { getConfigEnvVars as getTelemetryClientConfig, initTelemetryClient } from '@aztec/telemetry-client';
|
|
8
|
-
import { getL1Config } from '../get_l1_config.js';
|
|
9
8
|
import { extractRelevantOptions } from '../util.js';
|
|
10
9
|
/** Starts a standalone archiver. */ export async function startArchiver(options, signalHandlers, services) {
|
|
11
|
-
|
|
10
|
+
const envConfig = getArchiverConfigFromEnv();
|
|
11
|
+
const cliOptions = extractRelevantOptions(options, {
|
|
12
12
|
...archiverConfigMappings,
|
|
13
|
-
...dataConfigMappings
|
|
13
|
+
...dataConfigMappings,
|
|
14
|
+
...blobClientConfigMapping
|
|
14
15
|
}, 'archiver');
|
|
16
|
+
let archiverConfig = {
|
|
17
|
+
...envConfig,
|
|
18
|
+
...cliOptions
|
|
19
|
+
};
|
|
20
|
+
archiverConfig.dataStoreMapSizeKb = archiverConfig.archiverStoreMapSizeKb ?? archiverConfig.dataStoreMapSizeKb;
|
|
15
21
|
if (!archiverConfig.l1Contracts.registryAddress || archiverConfig.l1Contracts.registryAddress.isZero()) {
|
|
16
22
|
throw new Error('L1 registry address is required to start an Archiver');
|
|
17
23
|
}
|
|
18
|
-
const { addresses, config } = await getL1Config(archiverConfig.l1Contracts.registryAddress, archiverConfig.l1RpcUrls, archiverConfig.l1ChainId);
|
|
24
|
+
const { addresses, config: l1Config } = await getL1Config(archiverConfig.l1Contracts.registryAddress, archiverConfig.l1RpcUrls, archiverConfig.l1ChainId);
|
|
19
25
|
archiverConfig.l1Contracts = addresses;
|
|
20
26
|
archiverConfig = {
|
|
21
27
|
...archiverConfig,
|
|
22
|
-
...
|
|
28
|
+
...l1Config
|
|
23
29
|
};
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const blobSinkClient = createBlobSinkClient();
|
|
30
|
-
const archiver = await Archiver.createAndSync(archiverConfig, archiverStore, {
|
|
30
|
+
const telemetry = await initTelemetryClient(getTelemetryClientConfig());
|
|
31
|
+
const blobClient = createBlobClient(archiverConfig, {
|
|
32
|
+
logger: createLogger('archiver:blob-client:client')
|
|
33
|
+
});
|
|
34
|
+
const archiver = await createArchiver(archiverConfig, {
|
|
31
35
|
telemetry,
|
|
32
|
-
|
|
33
|
-
},
|
|
36
|
+
blobClient
|
|
37
|
+
}, {
|
|
38
|
+
blockUntilSync: true
|
|
39
|
+
});
|
|
34
40
|
services.archiver = [
|
|
35
41
|
archiver,
|
|
36
42
|
ArchiverApiSchema
|