Skip to content

A batch of solidity contracts deployment tool

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

yuliyu123/morge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

A batch of solidity contracts deployment tool developed by Rust, currently support eth、goerli、kovan、rinkeby、ropsten、polygon、polygon-mumbai、fantom、fantom-testnet、bsc、bsc-testnet、arbitrum、arbitrum-testnet、optimism、optimism-kovan、avalanche、avalanche-fuji chains.

Requirements

Running this project and tests require the following installed:

solc (>=0.8.10). We also recommend using solc-select for more flexibility.

anvil

geth

Installation

Run the following command directly to install from crates.io.

cargo install morge

Installing from Source

cargo install --git https://github.com/yuliyu123/morge

Usage

Initialize morge to create config file under .morge directory:

morge init

Set rpc url and private key:

morge set --rpc-url $RPC_URL --private-key $PRI_KEY

Add any numbers of contracts that you want to deploy:

morge add -c examples/contract.sol:SimpleStorage --args "value"

Remove any contract that you want to delete:

morge remove -c examples/contract.sol:SimpleStorage

List configuration:

morge list

Start deploy:

morge deploy

Clear configuration:

morge clean

Verify transaction execution status by specify chainnet and transaction hash:

morge verify -c rinkeby -t 0xc6e08d3b5b1077f4662907fa547fab34bac033a0501655aca0b903057c118da8

Contributing

First of all, thanks for contributing to this project! This project adheres to the Rust Code of Conduct. This code of conduct describes the minimum behavior expected from all contributors. All kinds of issues, features and PR is welcome.

Build & Test

build: cargo build

test: cargo test -- --test-threads=1

Todo

Memory optimization

Log optimization

Multi-threads async deploy contracts

Improving tests coverage

Calling deployed contract method

Supporting user-defined mainnet api key

About

A batch of solidity contracts deployment tool

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages