Skip to content

Commit 5be43bc

Browse files
committed
use hardhat-etherscan plugin
1 parent de4b87e commit 5be43bc

File tree

4 files changed

+95
-8
lines changed

4 files changed

+95
-8
lines changed

README.md

+8-7
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,14 @@ yarn run hardhat compile
2626

2727
The Hardhat environment relies on the following environment variables. The `dotenv` package will attempt to read them from the `.env` and `.env.secret` files, if they are present.
2828

29-
| Key | Description |
30-
| ------------------ | ------------------------------------------------------------- |
31-
| `NODE_URL_MAINNET` | JSON-RPC node URL for `mainnet` network |
32-
| `NODE_URL_TESTNET` | JSON-RPC node URL for `testnet` network |
33-
| `PKEY_TESTNET` | private key for test/development use on `testnet` network |
34-
| `PKEY_MAINNET` | private key for production use on `mainnet` network |
35-
| `REPORT_GAS` | if `true`, a gas report will be generated after running tests |
29+
| Key | Description |
30+
| ------------------- | ------------------------------------------------------------------------ |
31+
| `API_KEY_ETHERSCAN` | [Etherscan](https://etherscan.io//) API key for source code verification |
32+
| `NODE_URL_MAINNET` | JSON-RPC node URL for `mainnet` network |
33+
| `NODE_URL_TESTNET` | JSON-RPC node URL for `testnet` network |
34+
| `PKEY_TESTNET` | private key for test/development use on `testnet` network |
35+
| `PKEY_MAINNET` | private key for production use on `mainnet` network |
36+
| `REPORT_GAS` | if `true`, a gas report will be generated after running tests |
3637

3738
### Networks
3839

hardhat.config.ts

+6
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import '@nomiclabs/hardhat-etherscan';
12
import '@nomiclabs/hardhat-waffle';
23
import '@typechain/hardhat';
34
import 'hardhat-docgen';
@@ -10,6 +11,7 @@ import Dotenv from 'dotenv';
1011
Dotenv.config();
1112

1213
const {
14+
API_KEY_ETHERSCAN,
1315
NODE_URL_MAINNET,
1416
NODE_URL_TESTNET,
1517
PKEY_MAINNET,
@@ -45,6 +47,10 @@ export default {
4547
runOnCompile: false,
4648
},
4749

50+
etherscan: {
51+
apiKey: API_KEY_ETHERSCAN,
52+
},
53+
4854
gasReporter: {
4955
enabled: REPORT_GAS === 'true',
5056
},

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
},
2828
"devDependencies": {
2929
"@nomiclabs/hardhat-ethers": "^2.0.4",
30+
"@nomiclabs/hardhat-etherscan": "^3.0.3",
3031
"@nomiclabs/hardhat-waffle": "^2.0.2",
3132
"@solidstate/contracts": "^0.0.29",
3233
"@solidstate/spec": "^0.0.29",

yarn.lock

+80-1
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,17 @@
232232
"@ethersproject/logger" "^5.5.0"
233233
"@ethersproject/rlp" "^5.5.0"
234234

235+
"@ethersproject/address@^5.0.2":
236+
version "5.6.0"
237+
resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.0.tgz#13c49836d73e7885fc148ad633afad729da25012"
238+
integrity sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ==
239+
dependencies:
240+
"@ethersproject/bignumber" "^5.6.0"
241+
"@ethersproject/bytes" "^5.6.0"
242+
"@ethersproject/keccak256" "^5.6.0"
243+
"@ethersproject/logger" "^5.6.0"
244+
"@ethersproject/rlp" "^5.6.0"
245+
235246
"@ethersproject/[email protected]", "@ethersproject/base64@^5.5.0":
236247
version "5.5.0"
237248
resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.5.0.tgz#881e8544e47ed976930836986e5eb8fab259c090"
@@ -256,13 +267,29 @@
256267
"@ethersproject/logger" "^5.5.0"
257268
bn.js "^4.11.9"
258269

270+
"@ethersproject/bignumber@^5.6.0":
271+
version "5.6.0"
272+
resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.0.tgz#116c81b075c57fa765a8f3822648cf718a8a0e26"
273+
integrity sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA==
274+
dependencies:
275+
"@ethersproject/bytes" "^5.6.0"
276+
"@ethersproject/logger" "^5.6.0"
277+
bn.js "^4.11.9"
278+
259279
"@ethersproject/[email protected]", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.0.4", "@ethersproject/bytes@^5.5.0":
260280
version "5.5.0"
261281
resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.5.0.tgz#cb11c526de657e7b45d2e0f0246fb3b9d29a601c"
262282
integrity sha512-ABvc7BHWhZU9PNM/tANm/Qx4ostPGadAuQzWTr3doklZOhDlmcBqclrQe/ZXUIj3K8wC28oYeuRa+A37tX9kog==
263283
dependencies:
264284
"@ethersproject/logger" "^5.5.0"
265285

286+
"@ethersproject/bytes@^5.6.0":
287+
version "5.6.1"
288+
resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7"
289+
integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==
290+
dependencies:
291+
"@ethersproject/logger" "^5.6.0"
292+
266293
"@ethersproject/[email protected]", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.0.4", "@ethersproject/constants@^5.5.0":
267294
version "5.5.0"
268295
resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.5.0.tgz#d2a2cd7d94bd1d58377d1d66c4f53c9be4d0a45e"
@@ -345,11 +372,24 @@
345372
"@ethersproject/bytes" "^5.5.0"
346373
js-sha3 "0.8.0"
347374

375+
"@ethersproject/keccak256@^5.6.0":
376+
version "5.6.0"
377+
resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.0.tgz#fea4bb47dbf8f131c2e1774a1cecbfeb9d606459"
378+
integrity sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==
379+
dependencies:
380+
"@ethersproject/bytes" "^5.6.0"
381+
js-sha3 "0.8.0"
382+
348383
"@ethersproject/[email protected]", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.0.5", "@ethersproject/logger@^5.5.0":
349384
version "5.5.0"
350385
resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.5.0.tgz#0c2caebeff98e10aefa5aef27d7441c7fd18cf5d"
351386
integrity sha512-rIY/6WPm7T8n3qS2vuHTUBPdXHl+rGxWxW5okDfo9J4Z0+gRRZT0msvUdIJkE4/HS29GUMziwGaaKO2bWONBrg==
352387

388+
"@ethersproject/logger@^5.6.0":
389+
version "5.6.0"
390+
resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a"
391+
integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==
392+
353393
"@ethersproject/[email protected]", "@ethersproject/networks@^5.5.0":
354394
version "5.5.2"
355395
resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.5.2.tgz#784c8b1283cd2a931114ab428dae1bd00c07630b"
@@ -413,6 +453,14 @@
413453
"@ethersproject/bytes" "^5.5.0"
414454
"@ethersproject/logger" "^5.5.0"
415455

456+
"@ethersproject/rlp@^5.6.0":
457+
version "5.6.0"
458+
resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.0.tgz#55a7be01c6f5e64d6e6e7edb6061aa120962a717"
459+
integrity sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g==
460+
dependencies:
461+
"@ethersproject/bytes" "^5.6.0"
462+
"@ethersproject/logger" "^5.6.0"
463+
416464
"@ethersproject/[email protected]", "@ethersproject/sha2@^5.5.0":
417465
version "5.5.0"
418466
resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.5.0.tgz#a40a054c61f98fd9eee99af2c3cc6ff57ec24db7"
@@ -548,6 +596,19 @@
548596
resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.0.4.tgz#288889c338acaf47cabd29020e561d0077b7efcf"
549597
integrity sha512-7LMR344TkdCYkMVF9LuC9VU2NBIi84akQiwqm7OufpWaDgHbWhuanY53rk3SVAW0E4HBk5xn5wl5+bN5f+Mq5w==
550598

599+
"@nomiclabs/hardhat-etherscan@^3.0.3":
600+
version "3.0.3"
601+
resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-etherscan/-/hardhat-etherscan-3.0.3.tgz#ca54a03351f3de41f9f5240e37bea9d64fa24e64"
602+
integrity sha512-OfNtUKc/ZwzivmZnnpwWREfaYncXteKHskn3yDnz+fPBZ6wfM4GR+d5RwjREzYFWE+o5iR9ruXhWw/8fejWM9g==
603+
dependencies:
604+
"@ethersproject/abi" "^5.1.2"
605+
"@ethersproject/address" "^5.0.2"
606+
cbor "^5.0.2"
607+
debug "^4.1.1"
608+
fs-extra "^7.0.1"
609+
semver "^6.3.0"
610+
undici "^4.14.1"
611+
551612
"@nomiclabs/hardhat-waffle@^2.0.2":
552613
version "2.0.2"
553614
resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-waffle/-/hardhat-waffle-2.0.2.tgz#6030aa6fd9ea05327bf79d1107356af906d8b1e4"
@@ -2108,7 +2169,7 @@ big.js@^5.2.2:
21082169
resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
21092170
integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==
21102171

2111-
bignumber.js@^9.0.0:
2172+
bignumber.js@^9.0.0, bignumber.js@^9.0.1:
21122173
version "9.0.2"
21132174
resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.2.tgz#71c6c6bed38de64e24a65ebe16cfcf23ae693673"
21142175
integrity sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==
@@ -2448,6 +2509,14 @@ caseless@^0.12.0, caseless@~0.12.0:
24482509
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
24492510
integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
24502511

2512+
cbor@^5.0.2:
2513+
version "5.2.0"
2514+
resolved "https://registry.yarnpkg.com/cbor/-/cbor-5.2.0.tgz#4cca67783ccd6de7b50ab4ed62636712f287a67c"
2515+
integrity sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==
2516+
dependencies:
2517+
bignumber.js "^9.0.1"
2518+
nofilter "^1.0.4"
2519+
24512520
chai@^4.3.5:
24522521
version "4.3.5"
24532522
resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.5.tgz#784cf398a30cd45b8980181ba1a8c866c225b5df"
@@ -6835,6 +6904,11 @@ node-releases@^2.0.1:
68356904
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5"
68366905
integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==
68376906

6907+
nofilter@^1.0.4:
6908+
version "1.0.4"
6909+
resolved "https://registry.yarnpkg.com/nofilter/-/nofilter-1.0.4.tgz#78d6f4b6a613e7ced8b015cec534625f7667006e"
6910+
integrity sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==
6911+
68386912
68396913
version "3.0.6"
68406914
resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
@@ -9329,6 +9403,11 @@ [email protected]:
93299403
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961"
93309404
integrity sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==
93319405

9406+
undici@^4.14.1:
9407+
version "4.16.0"
9408+
resolved "https://registry.yarnpkg.com/undici/-/undici-4.16.0.tgz#469bb87b3b918818d3d7843d91a1d08da357d5ff"
9409+
integrity sha512-tkZSECUYi+/T1i4u+4+lwZmQgLXd4BLGlrc7KZPcLIW7Jpq99+Xpc30ONv7nS6F5UNOxp/HBZSSL9MafUrvJbw==
9410+
93329411
union-value@^1.0.0:
93339412
version "1.0.1"
93349413
resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"

0 commit comments

Comments
 (0)