11require ( "dotenv" ) . config ( { path : ".env" } ) ;
22const HDWalletProvider = require ( "@truffle/hdwallet-provider" ) ;
33
4+ /**
5+ *
6+ * @param {string } url
7+ * @returns {HDWalletProvider } An instance of HDWalletProvider
8+ */
9+ function payerProvider ( url ) {
10+ return ( ) =>
11+ new HDWalletProvider ( {
12+ mnemonic : process . env . MNEMONIC ,
13+ providerOrUrl : url ,
14+ } ) ;
15+ }
16+
417module . exports = {
518 migrations_directory : process . env . MIGRATIONS_DIR ,
619 networks : {
@@ -10,11 +23,9 @@ module.exports = {
1023 network_id : "*" ,
1124 } ,
1225 ethereum : {
13- provider : ( ) =>
14- new HDWalletProvider (
15- process . env . MNEMONIC ,
16- `https://mainnet.infura.io/v3/` + process . env . INFURA_KEY
17- ) ,
26+ provider : payerProvider (
27+ `https://mainnet.infura.io/v3/` + process . env . INFURA_KEY
28+ ) ,
1829 network_id : 1 ,
1930 gas : 10000000 ,
2031 gasPrice : 17000000000 ,
@@ -23,269 +34,151 @@ module.exports = {
2334 skipDryRun : false ,
2435 } ,
2536 ropsten : {
26- provider : ( ) =>
27- new HDWalletProvider (
28- process . env . MNEMONIC ,
29- `https://ropsten.infura.io/v3/` + process . env . INFURA_KEY
30- ) ,
37+ provider : payerProvider (
38+ `https://ropsten.infura.io/v3/` + process . env . INFURA_KEY
39+ ) ,
3140 network_id : 3 ,
3241 gas : 5500000 ,
3342 confirmations : 2 ,
3443 timeoutBlocks : 200 ,
3544 skipDryRun : true ,
3645 } ,
3746 rinkeby : {
38- provider : ( ) =>
39- new HDWalletProvider (
40- process . env . MNEMONIC ,
41- `https://rinkeby.infura.io/v3/` + process . env . INFURA_KEY
42- ) ,
47+ provider : payerProvider (
48+ `https://rinkeby.infura.io/v3/` + process . env . INFURA_KEY
49+ ) ,
4350 network_id : 4 ,
4451 gas : 5500000 ,
4552 confirmations : 2 ,
4653 timeoutBlocks : 200 ,
4754 skipDryRun : true ,
4855 } ,
4956 goerli : {
50- provider : ( ) => {
51- return new HDWalletProvider (
52- process . env . MNEMONIC ,
53- "https://goerli.infura.io/v3/" + process . env . INFURA_KEY
54- ) ;
55- } ,
57+ provider : payerProvider (
58+ `https://goerli.infura.io/v3/` + process . env . INFURA_KEY
59+ ) ,
5660 network_id : "5" ,
5761 gas : 8465030 ,
5862 gasPrice : 15000000000 ,
5963 skipDryRun : true ,
6064 } ,
6165 bnb : {
62- provider : ( ) => {
63- return new HDWalletProvider (
64- process . env . MNEMONIC ,
65- "https://rpc.ankr.com/bsc"
66- ) ;
67- } ,
66+ provider : payerProvider ( `https://rpc.ankr.com/bsc` ) ,
6867 network_id : "56" ,
6968 gas : 70000000 ,
7069 gasPrice : 5500000000 ,
7170 } ,
7271 bnb_testnet : {
73- provider : ( ) =>
74- new HDWalletProvider (
75- process . env . MNEMONIC ,
76- "https://rpc.ankr.com/bsc_testnet_chapel"
77- ) ,
72+ provider : payerProvider ( `https://rpc.ankr.com/bsc_testnet_chapel` ) ,
7873 network_id : "97" ,
7974 confirmations : 10 ,
8075 networkCheckTimeout : 1000000 ,
8176 timeoutBlocks : 1000 ,
8277 skipDryRun : true ,
8378 } ,
8479 polygon : {
85- provider : ( ) => {
86- return new HDWalletProvider (
87- process . env . MNEMONIC ,
88- "https://polygon-rpc.com"
89- ) ;
90- } ,
80+ provider : payerProvider ( `https://polygon-rpc.com` ) ,
9181 network_id : "137" ,
9282 gas : 20000000 ,
9383 gasPrice : 300000000000 ,
9484 } ,
9585 mumbai : {
96- provider : ( ) => {
97- return new HDWalletProvider (
98- process . env . MNEMONIC ,
99- "https://polygon-testnet-rpc.allthatnode.com:8545"
100- ) ;
101- } ,
86+ provider : payerProvider (
87+ `https://polygon-testnet-rpc.allthatnode.com:8545`
88+ ) ,
10289 network_id : "80001" ,
10390 } ,
10491 avalanche : {
105- provider : ( ) => {
106- return new HDWalletProvider (
107- process . env . MNEMONIC ,
108- "https://api.avax.network/ext/bc/C/rpc"
109- ) ;
110- } ,
92+ provider : payerProvider ( `https://api.avax.network/ext/bc/C/rpc` ) ,
11193 network_id : "43114" ,
11294 gas : 8000000 ,
11395 gasPrice : 30000000000 ,
11496 } ,
11597 fuji : {
116- provider : ( ) =>
117- new HDWalletProvider (
118- process . env . MNEMONIC ,
119- "https://api.avax-test.network/ext/bc/C/rpc"
120- ) ,
98+ provider : payerProvider ( `https://api.avax-test.network/ext/bc/C/rpc` ) ,
12199 network_id : "43113" ,
122100 } ,
123101 oasis : {
124- provider : ( ) => {
125- return new HDWalletProvider (
126- process . env . MNEMONIC ,
127- "https://emerald.oasis.dev/"
128- ) ;
129- } ,
102+ provider : payerProvider ( `https://emerald.oasis.dev/` ) ,
130103 network_id : 42262 ,
131104 gas : 4465030 ,
132105 gasPrice : 30000000000 ,
133106 } ,
134107 aurora : {
135- provider : ( ) => {
136- return new HDWalletProvider (
137- process . env . MNEMONIC ,
138- "https://mainnet.aurora.dev"
139- ) ;
140- } ,
108+ provider : payerProvider ( `https://mainnet.aurora.dev` ) ,
141109 network_id : 0x4e454152 ,
142110 gas : 10000000 ,
143111 from : "0xC42e9476b0a458097087336e2395Dbf45B0BdC12" , // creator public key
144112 networkCheckTimeout : 1000000 ,
145113 timeoutBlocks : 1000 ,
146114 } ,
147115 aurora_testnet : {
148- provider : ( ) => {
149- return new HDWalletProvider (
150- process . env . MNEMONIC ,
151- "https://testnet.aurora.dev"
152- ) ;
153- } ,
116+ provider : payerProvider ( `https://testnet.aurora.dev` ) ,
154117 network_id : 0x4e454153 ,
155118 gas : 10000000 ,
156119 from : "0xC42e9476b0a458097087336e2395Dbf45B0BdC12" , // public key
157120 networkCheckTimeout : 1000000 ,
158121 timeoutBlocks : 1000 ,
159122 } ,
160123 arbitrum : {
161- provider : ( ) => {
162- return new HDWalletProvider (
163- process . env . MNEMONIC ,
164- "https://arb1.arbitrum.io/rpc"
165- ) ;
166- } ,
124+ provider : payerProvider ( `https://arb1.arbitrum.io/rpc` ) ,
167125 network_id : 42161 ,
168126 } ,
169127 arbitrum_testnet : {
170- provider : ( ) => {
171- return new HDWalletProvider (
172- process . env . MNEMONIC ,
173- "https://goerli-rollup.arbitrum.io/rpc"
174- ) ;
175- } ,
128+ provider : payerProvider ( `https://goerli-rollup.arbitrum.io/rpc` ) ,
176129 network_id : 421613 ,
177130 } ,
178131 optimism : {
179- provider : ( ) => {
180- return new HDWalletProvider (
181- process . env . MNEMONIC ,
182- "https://rpc.ankr.com/optimism"
183- ) ;
184- } ,
132+ provider : payerProvider ( `https://rpc.ankr.com/optimism` ) ,
185133 network_id : 10 ,
186134 } ,
187135 optimism_goerli : {
188- provider : ( ) => {
189- return new HDWalletProvider (
190- process . env . MNEMONIC ,
191- "https://rpc.ankr.com/optimism_testnet"
192- ) ;
193- } ,
136+ provider : payerProvider ( `https://rpc.ankr.com/optimism_testnet` ) ,
194137 network_id : 420 ,
195138 } ,
196139 fantom : {
197- provider : ( ) => {
198- return new HDWalletProvider (
199- process . env . MNEMONIC ,
200- "https://rpc.ankr.com/fantom"
201- ) ;
202- } ,
140+ provider : payerProvider ( `https://rpc.ankr.com/fantom` ) ,
203141 network_id : 250 ,
204142 gas : 8000000 ,
205143 gasPrice : 50000000000 ,
206144 timeoutBlocks : 15000 ,
207145 } ,
208146 fantom_testnet : {
209- provider : ( ) => {
210- return new HDWalletProvider (
211- process . env . MNEMONIC ,
212- "https://rpc.ankr.com/fantom_testnet"
213- ) ;
214- } ,
147+ provider : payerProvider ( `https://rpc.ankr.com/fantom_testnet` ) ,
215148 network_id : 0xfa2 ,
216149 gas : 8000000 ,
217150 gasPrice : 300000000000 ,
218151 } ,
219152 celo : {
220- provider : ( ) => {
221- return new HDWalletProvider (
222- process . env . MNEMONIC ,
223- "https://forno.celo.org"
224- ) ;
225- } ,
153+ provider : payerProvider ( `https://forno.celo.org` ) ,
226154 network_id : 42220 ,
227155 } ,
228156 celo_alfajores_testnet : {
229- provider : ( ) => {
230- return new HDWalletProvider (
231- process . env . MNEMONIC ,
232- "https://alfajores-forno.celo-testnet.org"
233- ) ;
234- } ,
157+ provider : payerProvider ( `https://alfajores-forno.celo-testnet.org` ) ,
235158 network_id : 44787 ,
236159 } ,
237160 kcc : {
238- provider : ( ) => {
239- return new HDWalletProvider (
240- process . env . MNEMONIC ,
241- "https://rpc-mainnet.kcc.network"
242- ) ;
243- } ,
161+ provider : payerProvider ( `https://rpc-mainnet.kcc.network` ) ,
244162 network_id : 321 ,
245163 } ,
246164 kcc_testnet : {
247- provider : ( ) => {
248- return new HDWalletProvider (
249- process . env . MNEMONIC ,
250- "https://rpc-testnet.kcc.network"
251- ) ;
252- } ,
165+ provider : payerProvider ( `https://rpc-testnet.kcc.network` ) ,
253166 network_id : 322 ,
254167 } ,
255168 zksync : {
256- provider : ( ) => {
257- return new HDWalletProvider (
258- process . env . MNEMONIC ,
259- "https://zksync2-mainnet.zksync.io"
260- ) ;
261- } ,
169+ provider : payerProvider ( `https://zksync2-mainnet.zksync.io` ) ,
262170 network_id : 324 ,
263171 } ,
264172 zksync_goerli : {
265- provider : ( ) => {
266- return new HDWalletProvider (
267- process . env . MNEMONIC ,
268- "https://zksync2-testnet.zksync.dev"
269- ) ;
270- } ,
173+ provider : payerProvider ( `https://zksync2-testnet.zksync.dev` ) ,
271174 network_id : 280 ,
272175 } ,
273176 cronos : {
274- provider : ( ) => {
275- return new HDWalletProvider (
276- process . env . MNEMONIC ,
277- "https://cronosrpc-1.xstaking.sg"
278- ) ;
279- } ,
177+ provider : payerProvider ( `https://cronosrpc-1.xstaking.sg` ) ,
280178 network_id : 25 ,
281179 } ,
282180 cronos_testnet : {
283- provider : ( ) => {
284- return new HDWalletProvider (
285- process . env . MNEMONIC ,
286- "https://evm-t3.cronos.org"
287- ) ;
288- } ,
181+ provider : payerProvider ( `https://evm-t3.cronos.org` ) ,
289182 network_id : 338 ,
290183 } ,
291184 } ,
0 commit comments