Giter Site home page Giter Site logo

alenabelium / hardhat-tenderly Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tenderly/hardhat-tenderly

0.0 1.0 0.0 404 KB

Tenderly plugin for HardHat

Home Page: https://www.npmjs.com/package/@tenderly/hardhat-tenderly

License: GNU General Public License v3.0

TypeScript 100.00%

hardhat-tenderly's Introduction

npm (tag)

hardhat-tenderly

Hardhat plugin for integration with Tenderly.

What

This plugin will help you verify your Solidity contracts, as well as allow you to privately push contracts to Tenderly.

Installation

npm install --save-dev @tenderly/hardhat-tenderly

And add the following statement to your hardhat.config.js:

require("@tenderly/hardhat-tenderly");

Or, if you are using typescript:

import "@tenderly/hardhat-tenderly"

Tasks

This plugin adds the tenderly:verify task to Hardhat:

Usage: hardhat [GLOBAL OPTIONS] tenderly:verify ...contracts

POSITIONAL ARGUMENTS:

  contracts     Addresses and names of contracts that will be verified formatted ContractName=Address 

tenderly-verify: Verifies contracts on Tenderly

And the tenderly:push task:

Usage: hardhat [GLOBAL OPTIONS] tenderly:push ...contracts

POSITIONAL ARGUMENTS:

  contracts     Addresses and names of contracts that will be verified formatted ContractName=Address 

tenderly-push: Privately pushes contracts to Tenderly

Environment extensions

This plugin extends the Hardhat Runtime Environment by adding a tenderly field whose type is Tenderly.

This field has the verify and push methods.

This is an example on how you can call it from your scripts (using ethers to deploy a contract):

    const Greeter = await ethers.getContractFactory("Greeter");
    const greeter = await Greeter.deploy("Hello, Hardhat!");

    await bre.tenderly.verify({
        name: "Greeter",
        address: greeter.address,
    })

Both functions accept variadic parameters:

    const contracts = [
    {
        name: "Greeter",
        address: "123"
    },
    {
        name: "Greeter2",
        address: "456"
    }]

    await bre.tenderly.verify(...contracts)

Configuration

This plugin extends the HardhatConfig object with optional project and username fields.

This is an example of how to set it:

module.exports = {
    tenderly: {
        project: "",
        username: "",
    }
};

Usage

For this plugin to function you need to create a config.yaml file at $HOME/.tenderly/config.yaml or %HOMEPATH%\.tenderly\config.yaml and add an access_key field to it:

access_key: super_secret_access_key

You can find the access token on the Tenderly dashboard, under Settings -> Authorization.

Alternatively, this step can be skipped by doing tenderly login on the tenderly-cli

After this you can access Tenderly through the Hardhat Runtime Environment anywhere you need it (tasks, scripts, tests, etc).

hardhat-tenderly's People

Contributors

malcador avatar miljantekic avatar bogdanhabic avatar dependabot[bot] avatar azf20 avatar fvictorio avatar yhuard avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.