Verify Proxy on mainnet

Adam (@surfer77) asked via Twitter to verify proxy deployed using Hardhat plugin

1 Like

Yeah, I also want to know where is the proxy file in the contract-upgrade, it seems like that the proxy contract has been integrated into the script.

1 Like

Hi @Skyge,

The proxy contracts are found in the following location and are precompiled to use in the Plugins.

I have previously used the following method: Verify Upgrades Plugins proxy on Etherscan

2 Likes

Hi Andrew, I manage to verify the proxy by turning optimization off.

The proxy admin I still couldn’t verify, maybe you can help with it?
0x3206a055d7d2854aAa7eD8F25F6ab4FF3BF101CB

1 Like

Hi @surfer77,

Welcome to the community forum :wave:
Thanks for posting here.

I verified the ProxyAdmin on mainnet:

I copied the contracts from OpenZeppelin Upgrades Core to contracts/proxy, installed @openzeppelin/contracts@3.1.0 and verified using the Hardhat etherscan plugin (using this approach: Verify Upgrades Plugins proxy on Etherscan):

  • AdminUpgradeabilityProxy.sol
  • Proxy.sol
  • ProxyAdmin.sol
  • UpgradeabilityProxy.sol
$ npx hardhat verify --network mainnet 0x3206a055d7d2854aAa7eD8F25F6ab4FF3BF101CB
Nothing to compile
Successfully submitted source code for contract
contracts/proxy/ProxyAdmin.sol:ProxyAdmin at 0x3206a055d7d2854aAa7eD8F25F6ab4FF3BF101CB
for verification on etherscan. Waiting for verification result...
Successfully verified contract on etherscan

Your implementation contract doesn’t appear to be verified yet. I recommend verifying (Verify smart contract inheriting from OpenZeppelin Contracts) as you can then interact with your proxy contract.

1 Like

Awesome thanks for the help! now all is verified and the proxy lets me read/write in the implementation contract

1 Like

Hi @surfer77,

Glad to hear that your contracts are all verified. Proxy support by Etherscan is fantastic.

1 Like