#deployment #solidity #batch #contracts #tool #celo #rinkeby

bin+lib morge

Rust 实现的批量部署 Solidity 合约的工具

1 个不稳定版本

0.1.2 2022年6月30日
0.1.1 2022年6月29日
0.1.0 2022年6月29日

#14 in #celo

MIT/Apache

40KB
934

描述

一个由 Rust 开发的批量部署 Solidity 合约的工具,支持 Ethereum 和 Celo 以及其他 EVM 兼容链。

需求

运行此项目和测试需要安装以下内容

solc (>0.8.10)。我们还推荐使用 solc-select 以获得更多灵活性。 anvil geth

安装

直接运行以下命令从 crates.io 安装。

cargoinstall morge

从源码安装

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

用法

初始化 morge,在 .morge 目录下创建配置文件

morge init

设置 rpc url 和私钥

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

添加您想部署的任何数量的合约

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

删除您想删除的任何合约

morge remove-c examples/contract.sol:SimpleStorage

列出配置

morge list

开始部署

morge deploy

清除配置

morge clean

通过指定链网和交易哈希验证交易执行状态

morge verify-c rinkeby-t0xc6e08d3b5b1077f4662907fa547fab34bac033a0501655aca0b903057c118da8

贡献

首先,感谢您对此项目的贡献!此项目遵循 Rust 行为准则。此行为准则描述了所有贡献者应遵守的最低行为标准。欢迎提出各种问题、功能和 PR。

构建 & 测试

构建: cargo build

测试: cargo test -- --test-threads=1

待办事项

内存优化

日志优化

多线程异步部署合约

提高测试覆盖率

调用已部署合约的方法

支持用户定义的主网 API 密钥

依赖项

~26–40MB
~662K SLoC