You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: scripts/README.md
+20-13Lines changed: 20 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -41,7 +41,10 @@ in the `contract.ts` file.
41
41
42
42
## Step 5
43
43
44
-
Create a `.env` file. Use the `env.example` as a template.
44
+
Create a `.env` file. Use the `env.example` as a template. Set the following values in the `.env`
45
+
46
+
* Set the DEPLOYER_CONTRACT_ADDRESS to match the address of the OwnableCreate2Deployer factory.
47
+
* Set the MULTICALL_ADMIN_PUB_KEY and FACTORY_ADMIN_PUB_KEY to match the address of the address of the privileged transaction multisig. This address for reference should be `0x0E2D55943f4EF07c336C12A85d083c20FF189182`.
45
48
46
49
## Execution steps
47
50
@@ -52,53 +55,57 @@ in this step because we want the `Factory` contract to have the same address acr
52
55
this address is used to produce a deterministic counter factual address for the smart contract wallets across
53
56
all the chains.
54
57
55
-
* Set the `accountIndex` to 10.
58
+
* Set the value of RELAYER_SUBMITTER_EOA_PUB_KEY to match the EOA of the primary Relayer submitter.
59
+
* Set the `accountIndex` to 10 in `wallet-options.ts`.
56
60
* Execute the command `npx hardhat run scripts/step1.ts --network <ENV>`
57
61
58
62
### `step2.ts`
59
63
60
64
In this step we deploy the contract that tracks the location of the latest wallet implementation. As this step
61
-
just uses the CREATE2 contract factory we use the standard deployment key.
65
+
just uses the CREATE2 contract factory we use the standard deployment key (Orange Key!!!).
62
66
67
+
* Set the value of WALLET_IMPL_LOCATOR_ADMIN, and WALLET_IMPL_CHANGER_ADMIN environment variables to the public key of the Priveleged key.
63
68
* Set the `accountIndex` to 0.
64
69
* Execute the command `npx hardhat run scripts/step2.ts --network <ENV>`
65
70
66
71
### `step3.ts`
67
72
68
-
In this step we deploy the startup wallet. This wallet address is used to generate the CFA, and hence like the Factory
69
-
uses a Passport nonce reserver key.
73
+
In this step we deploy the startup wallet. This wallet address is used to generate the CFA, and hence like the Factory uses a Passport nonce reserver key.
70
74
71
75
* Set the `accountIndex` to 10.
76
+
* WARNING: COPY the `LatestWalletImplLocator` address into the `step3.ts` script from step2.
72
77
* Execute the command `npx hardhat run scripts/step3.ts --network <ENV>`
73
-
* WARNING: COPY the `LatestWalletImplLocator` address into the `step3.ts` script from step2.
74
78
75
79
### `step4.ts`
76
80
77
-
In this step we deploy the `MainModuleDynamicAuth` module, and it can simply use the standard deployment key.
81
+
In this step we deploy the `MainModuleDynamicAuth` module, and it should use the standard deployment key (Orange Key!!!)
78
82
79
83
* Set the `accountIndex` to 0.
84
+
* WARNING: COPY the `FactoryAddress` address into the `step4.ts` script from step1.
85
+
* WARNING: COPY the `StartupWalletImpl` address into the `step4.ts` script from step3.
80
86
* Execute the command `npx hardhat run scripts/step4.ts --network <ENV>`
81
-
* WARNING: COPY the `FactoryAddress` address into the `step4.ts` script from step1.
82
-
* WARNING: COPY the `StartupWalletImpl` address into the `step4.ts` script from step3.
83
87
84
88
### `step5.ts`
85
89
86
90
In this step we deploy the Signer contract, which is also used to generate the CFA, and hence like the Factory, and
87
-
Startup wallet implementation, we use the Passport nonce reserver key in this step.
91
+
Startup wallet implementation, we use the Passport nonce reserver key (Black Key!!!) in this step.
88
92
89
93
* Set the `accountIndex` to 10.
94
+
* Set the SIGNER_ROOT_ADMIN_PUB_KEY to the Privileged public key.
95
+
* Set the SIGNER_ADMIN_PUB_KEY to the relevant Breakglass public key.
96
+
* Set the IMMUTABLE_SIGNER_PUB_KEY
90
97
* Execute the command `npx hardhat run scripts/step5.ts --network <ENV>`
91
98
92
99
### `step6.ts`
93
100
94
101
In this step we point the `LatestWalletImplLocator` to the `MainModuleDynamicAuth` module address. In this step
95
-
we use the privileged deployment key, as we gave this key authority to alter the implementation address in `step2.ts`
102
+
we use the privileged deployment key (Purple Key!!!), as we gave this key authority to alter the implementation address in `step2.ts`.
96
103
above.
97
104
98
105
* Set the `accountIndex` to 10.
106
+
* WARNING: COPY the `MainModuleDynamicAuth` address into the `step6.ts` script from step4.
107
+
* WARNING: COPY the `LatestWalletImplLocator` address into the `step6.ts` script from step2.
99
108
* Execute the command `npx hardhat run scripts/step6.ts --network <ENV>`
100
-
* WARNING: COPY the `MainModuleDynamicAuth` address into the `step6.ts` script from step4.
101
-
* WARNING: COPY the `LatestWalletImplLocator` address into the `step6.ts` script from step2.
0 commit comments