Avançar para o conteúdo principal

Verificar o Contrato Inteligente usando Hardhat

Verificar um contrato inteligente permite que os desenvolvedores revisem seu código no CeloScan Block Explorer

Pré-requisitos

Antes dos passos de instalação, você precisa ter seu projeto hardhat inicializado utilizando o comando

npx hardhat init

Certifique-se de ter as dependências instaladas!

Configuração

Algumas instalações e configurações iniciais são necessárias.

Instalação

Use o seguinte comando para instalar

npm i hardhat-celo --save-dev

Configuração do Hardhat

Importe o plugin em seu hardhat.config.js:

require("hardhat-celo");

Ou se você estiver usando TypeScript, em seu hardhat.config.ts:

import "hardhat-celo";

Remover / Comentar a importação para @nomicfoundation/hardhat-toolbox

Adicione a seguinte configuração ao objeto config em hardhat.config.js.

networks: {
alfajores: {
// can be replaced with the RPC url of your choice.
url: "https://alfajores-forno.celo-testnet.org",
accounts: [
"<YOUR_PRIVATE_KEY>"
],
},
celo: {
url: "https://forno.celo.org",
accounts: [
"<YOUR_PRIVATE_KEY>"
],
}
},
etherscan: {
apiKey: {
alfajores: "<CELOSCAN_API_KEY>",
celo: "<CELOSCAN_API_KEY>"
},
},

Verificando Contratos

Use o seguinte comando (certifique-se de que seus contratos sejam compilados antes da verificação)

Alfajores Testnet

npx hardhat verify <CONTRACT_ADDRESS> <CONSTRUCTOR_ARGS> --network alfajores

Celo Mainnet

npx hardhat verify <CONTRACT_ADDRESS> <CONSTRUCTOR_ARGS> --network celo

Ou então Você pode ler um guia sobre como implantar e verificar contratos no Celo Block Explorer (fonte) programaticamente usando o plugin de implantação de hardhat-deploy aqui.