1 个不稳定版本
0.1.3 | 2023年7月8日 |
---|---|
0.1.2 |
|
0.1.1 |
|
#109 in #short
22KB
275 行
CosmWasm Starter Pack
这是一个用于在所有启用它的链上模块中运行 Rust 智能合约的模板。为了更好地理解框架,请阅读 cosmwasm 仓库 中的概述,并深入研究 cosmwasm 文档。这假设你已经理解了理论,只想开始编写代码。
从模板创建新仓库
假设你已经安装了最新版本的 Rust 和 Cargo(通过 rustup),那么以下步骤应该可以让你创建一个新的仓库以开始编写合约
安装 cargo-generate 和 cargo-run-script。除非你之前已经安装,否则现在运行以下命令
cargo install cargo-generate --features vendored-openssl
cargo install cargo-run-script
现在,使用它来创建你的新合约。转到你想要放置它的文件夹中,并运行
最新版本
cargo generate --git https://github.com/CosmWasm/cw-template.git --name PROJECT_NAME
用于克隆最小代码仓库
cargo generate --git https://github.com/CosmWasm/cw-template.git --name PROJECT_NAME -d minimal=true
旧版本
使用版本作为分支标志
cargo generate --git https://github.com/CosmWasm/cw-template.git --branch <version> --name PROJECT_NAME
示例
cargo generate --git https://github.com/CosmWasm/cw-template.git --branch 0.16 --name PROJECT_NAME
现在你将有一个名为 PROJECT_NAME
的新文件夹(我希望你已经将其更改为其他名称),其中包含一个简单的可工作合约和构建系统,你可以对其进行自定义。
创建仓库
生成后,你将有一个初始化的本地 git 仓库,但没有提交,也没有远程仓库。转到服务器(例如 GitHub)并创建一个新的上游仓库(以下称为 YOUR-GIT-URL
)。然后运行以下命令
# this is needed to create a valid Cargo.lock file (see below)
cargo check
git branch -M main
git add .
git commit -m 'Initial Commit'
git remote add origin YOUR-GIT-URL
git push -u origin main
持续集成支持
在生成的项目中,我们为 GitHub Actions 和 Circle CI 提供了模板配置,因此你可以立即开始使用持续集成。
需要注意的一点是,CI环境使用带有--locked
选项的cargo
命令,以确保它与您本地使用的版本完全相同。这也意味着您必须有一个最新的Cargo.lock
文件,这个文件不是自动生成的。第一次设置项目(或添加任何依赖项后),您应确保Cargo.lock
文件已更新,以便CI可以正确测试。这可以通过简单地运行cargo check
或cargo unit-test
来完成。
使用您的项目
一旦您有了自定义仓库,应该检出Developing以了解更多关于如何运行测试和开发代码的信息。或者通过在线教程来更好地了解如何进行开发。
Publishing包含有关如何将您的合约发布到世界的有用信息,一旦您准备在运行的区块链上部署它。而Importing包含有关拉取已发布合约或其他crate的信息。
请用您特定项目的相关信息替换这个README文件。您可以将Developing.md
和Publishing.md
文件作为有用的参考,但请在README中设置一些适当的描述。
依赖项
~4–6MB
~125K SLoC