aave-protocol-v2/tasks/misc/verify-sc.ts

29 lines
940 B
TypeScript

import { task } from 'hardhat/config';
import { verifyEtherscanContract, checkVerification } from '../../helpers/etherscan-verification';
interface VerifyParams {
contractName: string;
address: string;
constructorArguments: string[];
libraries: string;
}
task('verify-sc', 'Inits the DRE, to have access to all the plugins')
.addParam('address', 'Ethereum address of the smart contract')
.addOptionalParam(
'libraries',
'Stringified JSON object in format of {library1: "0x2956356cd2a2bf3202f771f50d3d14a367b48071"}'
)
.addOptionalVariadicPositionalParam(
'constructorArguments',
'arguments for contract constructor',
[]
)
.setAction(async ({ address, constructorArguments = [], libraries }: VerifyParams, localBRE) => {
await localBRE.run('set-DRE');
checkVerification();
const result = await verifyEtherscanContract(address, constructorArguments, libraries);
return result;
});