Skip to content
This repository was archived by the owner on Jul 10, 2026. It is now read-only.

Commit 38a54e1

Browse files
authored
Adds support to Sepolia and Gnosis networks (#596)
* sepolia network support * lib updates + sepolia contract verification * fix incompatible lib versions * gnosis network support * set node version
1 parent 8d55e57 commit 38a54e1

14 files changed

Lines changed: 50797 additions & 41148 deletions

File tree

.github/workflows/coverage.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
- name: Setup node
2222
uses: actions/setup-node@v2
2323
with:
24-
node-version: "16.3.0"
24+
node-version: "16.20.0"
2525

2626
- name: Setup SSH to install dependencies
2727
uses: webfactory/ssh-agent@v0.5.0

.github/workflows/publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
- name: Setup node
1818
uses: actions/setup-node@v2
1919
with:
20-
node-version: "16.3.0"
20+
node-version: "16.20.0"
2121

2222
- name: Setup SSH to install dependencies
2323
uses: webfactory/ssh-agent@v0.5.0

.github/workflows/slither.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
- name: Setup node
2828
uses: actions/setup-node@v2
2929
with:
30-
node-version: "16.3.0"
30+
node-version: "16.20.0"
3131

3232
- name: Setup SSH to install dependencies
3333
uses: webfactory/ssh-agent@v0.5.0

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
- name: Setup node
2222
uses: actions/setup-node@v2
2323
with:
24-
node-version: "16.3.0"
24+
node-version: "16.20.0"
2525

2626
- name: Setup SSH to install dependencies
2727
uses: webfactory/ssh-agent@v0.5.0

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
16
1+
16.20

README.md

Lines changed: 11 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -179,60 +179,18 @@ npm run compile
179179

180180
### Deploy contracts
181181

182-
Deploy contracts to networks such as goerli, harmonytest, polygontest, ganache, mainnet, harmony, polygon or avalanche.
182+
Deploy contracts to networks such as sepolia, harmonytest, polygontest, ganache, mainnet, harmony, polygon or avalanche.
183183

184184
```sh
185-
npm run deploy goerli
186-
```
187-
188-
OR
189-
190-
```sh
191-
npm run deploy harmonytest
192-
```
193-
194-
OR
195-
196-
```sh
197-
npm run deploy polygontest
198-
```
199-
200-
OR
201-
202-
```sh
203-
npm run deploy avalanchetest
204-
```
205-
206-
OR
207-
208-
```sh
209-
npm run deploy mainnet
210-
```
211-
212-
OR
213-
214-
```sh
215-
npm run deploy harmony
216-
```
217-
218-
OR
219-
220-
```sh
221-
npm run deploy polygon
222-
```
223-
224-
OR
225-
226-
```sh
227-
npm run deploy avalanche
185+
npm run deploy sepolia
228186
```
229187

230188
For more information about the deployment, see the in logs [logs/contracts](logs/contracts)
231189

232190
### Verify contracts
233191

234192
```sh
235-
npm run verify goerli
193+
npm run verify sepolia
236194
```
237195

238196
OR
@@ -248,21 +206,21 @@ In the same `.env` file created under the `tribute-contracts` folder, set the fo
248206
```
249207
######################## Tribute UI env vars ########################
250208
251-
# Configure the UI to use the Goerli network for local development
252-
REACT_APP_DEFAULT_CHAIN_NAME_LOCAL=GOERLI
209+
# Configure the UI to use the Sepolia network for local development
210+
REACT_APP_DEFAULT_CHAIN_NAME_LOCAL=SEPOLIA
253211
254212
# It can be the same value you used for the Tribute DAO deployment.
255213
REACT_APP_INFURA_PROJECT_ID_DEV=YOUR_INFURA_API_KEY
256214
257-
# The address of the Multicall smart contract deployed to the Goerli network.
258-
# Copy that from the tribute-contracts/build/contracts-goerli-YYYY-MM-DD-HH:mm:ss.json
215+
# The address of the Multicall smart contract deployed to the Sepolia network.
216+
# Copy that from the tribute-contracts/build/contracts-sepolia-YYYY-MM-DD-HH:mm:ss.json
259217
REACT_APP_MULTICALL_CONTRACT_ADDRESS=0x...
260218
261-
# The address of the DaoRegistry smart contract deployed to the Goerli network.
262-
# Copy that from the tribute-contracts/build/contracts-goerli-YYYY-MM-DD-HH:mm:ss.json
219+
# The address of the DaoRegistry smart contract deployed to the Sepolia network.
220+
# Copy that from the tribute-contracts/build/contracts-sepolia-YYYY-MM-DD-HH:mm:ss.json
263221
REACT_APP_DAO_REGISTRY_CONTRACT_ADDRESS=0x...
264222
265-
# Enable Goerli network for Tribute UI
223+
# Enable Sepolia network for Tribute UI
266224
REACT_APP_ENVIRONMENT=development
267225
```
268226

@@ -326,7 +284,7 @@ Snapshot-hub:
326284
- `ENV`: To indicate in which environment it is being executed: local, dev, or prod
327285
- `USE_IPFS`: To indicated the pinning service on IPFS should be enabled/disabled (if enabled cause delay in the responses)
328286
- `RELAYER_PK`: The PK of the account that will be used to sign the messages.
329-
- `NETWORK`: The network name that will be used by the relayer (use testnet for goerli and mainnet for the main ethereum network)
287+
- `NETWORK`: The network name that will be used by the relayer (use testnet for sepolia and mainnet for the main ethereum network)
330288
- `JAWSDB_URL`: The postgres url: postgres://user:pwd@host:5432/db-name
331289
- `ALLOWED_DOMAINS`: The list of domains that should be allowed to send requests to the API
332290
- `ALCHEMY_API_URL`: The relayer API (alternative to Infura)

configs/networks/gnosis.config.ts

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import {
2+
contracts as defaultContracts,
3+
ContractConfig,
4+
} from "../contracts.config";
5+
6+
const disabled: Array<string> = [
7+
// Utility & Test Contracts disabled by default
8+
"OLToken",
9+
"TestToken1",
10+
"TestToken2",
11+
"TestFairShareCalc",
12+
"PixelNFT",
13+
"ProxToken",
14+
"ERC20Minter",
15+
"MockDao",
16+
"Multicall",
17+
"WETH",
18+
"ProxTokenContract",
19+
"ERC20MinterContract",
20+
// Adapters, Extensions and Factories disabled by default
21+
"NFTCollectionFactory",
22+
"ERC1271ExtensionFactory",
23+
"ExecutorExtensionFactory",
24+
"ERC1155TokenCollectionFactory",
25+
"NFTExtension",
26+
"ERC1271Extension",
27+
"ExecutorExtension",
28+
"ERC1155TokenExtension",
29+
"ERC1155AdapterContract",
30+
"FinancingContract",
31+
"OnboardingContract",
32+
"TributeContract",
33+
"TributeNFTContract",
34+
"LendNFTContract",
35+
];
36+
37+
export const contracts: Array<ContractConfig> = defaultContracts.map((c) => {
38+
if (disabled.find((e) => e === c.name)) {
39+
return { ...c, enabled: false };
40+
}
41+
return c;
42+
});

configs/networks/sepolia.config.ts

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import {
2+
contracts as defaultContracts,
3+
ContractConfig,
4+
} from "../contracts.config";
5+
6+
const disabled: Array<string> = [
7+
// Utility & Test Contracts disabled by default
8+
"OLToken",
9+
"TestToken1",
10+
"TestToken2",
11+
"TestFairShareCalc",
12+
"PixelNFT",
13+
"ProxToken",
14+
"ERC20Minter",
15+
"MockDao",
16+
"Multicall",
17+
"WETH",
18+
"ProxTokenContract",
19+
"ERC20MinterContract",
20+
// Adapters, Extensions and Factories disabled by default
21+
"NFTCollectionFactory",
22+
"ERC1271ExtensionFactory",
23+
"ExecutorExtensionFactory",
24+
"ERC1155TokenCollectionFactory",
25+
"NFTExtension",
26+
"ERC1271Extension",
27+
"ExecutorExtension",
28+
"ERC1155TokenExtension",
29+
"ERC1155AdapterContract",
30+
"FinancingContract",
31+
"OnboardingContract",
32+
"TributeContract",
33+
"TributeNFTContract",
34+
"LendNFTContract",
35+
];
36+
37+
export const contracts: Array<ContractConfig> = defaultContracts.map((c) => {
38+
if (disabled.find((e) => e === c.name)) {
39+
return { ...c, enabled: false };
40+
}
41+
return c;
42+
});

hardhat.config.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,17 @@ module.exports = {
5454
},
5555
signerId: process.env.SIGNER || undefined,
5656
},
57+
sepolia: {
58+
url: process.env.ETH_NODE_URL,
59+
network_id: 11155111,
60+
chainId: 11155111,
61+
skipDryRun: true,
62+
accounts: {
63+
mnemonic: process.env.WALLET_MNEMONIC || "",
64+
count: 10,
65+
},
66+
signerId: process.env.SIGNER || undefined,
67+
},
5768
harmonytest: {
5869
url: process.env.ETH_NODE_URL,
5970
network_id: 1666700000,
@@ -114,6 +125,17 @@ module.exports = {
114125
},
115126
signerId: process.env.SIGNER || undefined,
116127
},
128+
gnosis: {
129+
url: process.env.ETH_NODE_URL,
130+
network_id: 100,
131+
chainId: 100,
132+
skipDryRun: true,
133+
accounts: {
134+
mnemonic: process.env.WALLET_MNEMONIC || "",
135+
count: 10,
136+
},
137+
signerId: process.env.SIGNER || undefined,
138+
},
117139
harmony: {
118140
url: process.env.ETH_NODE_URL,
119141
network_id: 1666600000,
@@ -192,6 +214,8 @@ module.exports = {
192214
etherscan: {
193215
apiKey: {
194216
goerli: process.env.ETHERSCAN_API_KEY,
217+
sepolia: process.env.ETHERSCAN_API_KEY,
218+
gnosis: process.env.ETHERSCAN_API_KEY,
195219
mainnet: process.env.ETHERSCAN_API_KEY,
196220
},
197221
},

0 commit comments

Comments
 (0)