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: docs/3. Requesting Chain Support.md
+5-9Lines changed: 5 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,9 +5,7 @@ title: Requesting Chain Support
5
5
6
6
# Requesting Chain Support
7
7
8
-
Do you want to verify contracts on an EVM chain (or chains)? Great! We don't want to be the single source of truth and encourage you to [run your own Sourcify server instance](/docs/running-server).
9
-
10
-
If you still want to request an EVM chain(s) to be supported by Sourcify, please open a pull request with the instructions below for a speedy process:
8
+
To request an EVM chain(s) to be supported by Sourcify, please open a pull request with the instructions below for a speedy process:
11
9
12
10
1. Make sure the new chains are listed in [chains.json](https://github.com/argotorg/sourcify/blob/staging/services/server/src/chains.json) but **this file should not be edited**. It is kept in sync with [chainid.network](https://chainid.network/chains.json) (github: [ethereum-lists/chains](https://github.com/ethereum-lists/chains)) periodically. If your chains are not included, please first add your chains to the [ethereum-lists/chains](https://github.com/ethereum-lists/chains) repository first.
13
11
@@ -83,16 +81,14 @@ If you still want to request an EVM chain(s) to be supported by Sourcify, please
83
81
84
82
</details>
85
83
86
-
4. Install and build the project with `npm install` and `npx lerna run build`.
84
+
1. Install and build the project with `npm install` and `npx lerna run build`.
87
85
88
86
1. Provide test contracts:
89
-
1. Deploy test contracts:
87
+
1. If your chain has an instance of CreateX ([deployments](https://createx.rocks/deployments)) or Multicall ([deployments](https://www.multicall3.com/deployments)), you can skip this step.
88
+
1. If not, deploy a Storage.sol contract:
90
89
1. Using the provided script: You can easily deploy both contracts with an account private key using the provided [`script`](https://github.com/argotorg/sourcify/blob/staging/services/server/test/chains/deployContracts.ts), that can be run with `ts-node`. Inside `services/server`, run `npx ts-node test/chains/deployContracts.ts --help` for more information.
91
90
1. If you can't or don't want to paste your private key, deploy [this contract in the Thirdweb dashboard](https://thirdweb.com/0xAA6042aa65eb93C6439cDaeBC27B3bd09c5DFe94/Storage) through the wallet of your choice.
92
-
2. If you are not able to deploy new test contracts above (e.g. because it costs on a mainnet) you can provide existing contracts. Create a folder `services/server/test/chains/sources/{chainId}` and store the contract source files and metadata of already deployed contracts there.
93
-
94
-
1. Add the test for the new chains in `services/server/test/chains/chain-tests.spec.ts` similar to other chains. If you deployed a test contract as described above, the contract and the metadata are the following:
95
-
- Storage.sol: `shared/1_Storage.sol` and `shared/1_Storage.metadata.json`
91
+
1. Add the contract address on your chain to [storage-contract-chain-addresses.json](https://github.com/argotorg/sourcify/blob/staging/services/server/test/chains/sources/storage-contract-chain-addresses.json)
96
92
97
93
1. To test locally run `export NEW_CHAIN_ID=1,11155111 && npm run test-local:chains` inside `services/server`. Note that this requires `docker-compose`.
0 commit comments