|
|
@ -1,33 +1,14 @@ |
|
|
|
import "solidity-coverage"; |
|
|
|
import 'solidity-coverage'; |
|
|
|
import "@typechain/hardhat"; |
|
|
|
import '@typechain/hardhat'; |
|
|
|
import "@nomiclabs/hardhat-etherscan"; |
|
|
|
import '@nomiclabs/hardhat-waffle'; |
|
|
|
import "@nomiclabs/hardhat-waffle"; |
|
|
|
import 'hardhat-gas-reporter'; |
|
|
|
import "hardhat-gas-reporter"; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import { task } from "hardhat/config"; |
|
|
|
|
|
|
|
import { verifyLatestBridgeDeploy } from "../../typescript/abacus-deploy/src/verification/verifyLatestDeploy"; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import * as dotenv from "dotenv"; |
|
|
|
|
|
|
|
dotenv.config(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const etherscanKey = process.env.ETHERSCAN_API_KEY; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
task( |
|
|
|
|
|
|
|
"verify-latest-deploy", |
|
|
|
|
|
|
|
"Verifies the source code of the latest contract deploy" |
|
|
|
|
|
|
|
).setAction(async (args: any, hre: any) => { |
|
|
|
|
|
|
|
if (!etherscanKey) { |
|
|
|
|
|
|
|
throw new Error("set ETHERSCAN_API_KEY"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
await verifyLatestBridgeDeploy(hre, etherscanKey); |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* @type import('hardhat/config').HardhatUserConfig |
|
|
|
* @type import('hardhat/config').HardhatUserConfig |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
module.exports = { |
|
|
|
module.exports = { |
|
|
|
solidity: { |
|
|
|
solidity: { |
|
|
|
version: "0.7.6", |
|
|
|
version: '0.7.6', |
|
|
|
settings: { |
|
|
|
settings: { |
|
|
|
optimizer: { |
|
|
|
optimizer: { |
|
|
|
enabled: true, |
|
|
|
enabled: true, |
|
|
@ -36,37 +17,11 @@ module.exports = { |
|
|
|
}, |
|
|
|
}, |
|
|
|
}, |
|
|
|
}, |
|
|
|
gasReporter: { |
|
|
|
gasReporter: { |
|
|
|
currency: "USD", |
|
|
|
currency: 'USD', |
|
|
|
}, |
|
|
|
|
|
|
|
networks: { |
|
|
|
|
|
|
|
localhost: { |
|
|
|
|
|
|
|
url: "http://localhost:8545", |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
goerli: { |
|
|
|
|
|
|
|
url: "https://goerli.infura.io/v3/5c456d7844fa40a683e934df60534c60", |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
kovan: { |
|
|
|
|
|
|
|
url: "https://kovan.infura.io/v3/5c456d7844fa40a683e934df60534c60", |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
rinkeby: { |
|
|
|
|
|
|
|
url: "https://rinkeby.infura.io/v3/5c456d7844fa40a683e934df60534c60", |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
mainnet: { |
|
|
|
|
|
|
|
url: "https://mainnet.infura.io/v3/5c456d7844fa40a683e934df60534c60", |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
arbitrum_rinkeby: { |
|
|
|
|
|
|
|
url: "rinkeby.arbitrum.io/rpc", |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
// TODO: add Ropsten
|
|
|
|
|
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
typechain: { |
|
|
|
typechain: { |
|
|
|
outDir: "./typechain", |
|
|
|
outDir: './typechain', |
|
|
|
target: "ethers-v5", |
|
|
|
target: 'ethers-v5', |
|
|
|
alwaysGenerateOverloads: false, // should overloads with full signatures like deposit(uint256) be generated always, even if there are no overloads?
|
|
|
|
alwaysGenerateOverloads: false, // should overloads with full signatures like deposit(uint256) be generated always, even if there are no overloads?
|
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
etherscan: { |
|
|
|
|
|
|
|
apiKey: etherscanKey, |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
}; |
|
|
|
}; |
|
|
|