1 个不稳定版本
| 0.2.2 | 2024 年 7 月 30 日 |
|---|
467 在 开发工具 中排名 #467
117 每月下载量
335KB
7K SLoC
在发起 Smart Rollup 时,支持的最大内核大小有限制。如果您的内核过大,则必须使用安装程序。
要生成 installer 内核,您可以使用 smart-rollup-installer 工具。
先决条件
您需要
- 至少安装 rust-1.71.1(您可以使用
cargo --version检查),并使用wasm32-unknown-unknown工具链。 - 安装 WebAssemblyBinaryToolkit (
wabt)。特别是,安装wasm-strip可执行文件。 $HOME/.cargo/bin应该可用在您的$PATH中。- 安装
clang>=11,并将其设置为CC环境变量。
安装 smart-rollup-installer
运行以下命令进行安装
cargo install mavryk-smart-rollup-installer
要获取最新开发版本,您还可以运行
cargo install mavryk-smart-rollup-installer --git https://gitlab.com/mavryk-network/mavryk-protocol.git
这将默认将 smart-rollup-installer 可执行文件放置在 $HOME/.cargo/bin。
创建安装程序内核
假设您要运行的内核名为 kernel.wasm,您可以为此创建一个安装程序内核
smart-rollup-installer get-reveal-installer \
--upgrade-to kernel.wasm \
--output installer.hex \
--preimages-dir <preimages-dir>
其中 <preimages-dir> 是保存内核 预图像 的目录。安装程序将通过 揭示数据 通道请求这些文件。
现在,您可以通过将 installer.hex 传递给 mavkit-client originate smart rollup 命令来启动 rollup,设置 KERNEL=$(cat installer.hex)。
运行 rollup 节点
要运行 rollup 的 rollup 节点,您需要将 <preimages-dir> 的内容复制到 ${ROLLUP_NODE_DIR}/wasm_2_0_0 - 其中 ${ROLLUP_NODE_DIR} 是您的 rollup 节点数据目录。
一旦复制完成,您应该能够运行您的 rollup 节点,并且安装程序内核将自动升级。
有关启动 rollup 和运行 rollup 节点的更多信息,请参阅 rollup 文档。
使用 mavkit-smart-rollup-wasm-debugger
您还可以通过使用调试器来尝试此操作,这可能比运行 rollup 节点更容易。为此,您需要在 --output 参数上使用 .wasm 扩展名
smart-rollup-installer get-reveal-installer \
--upgrade-to kernel.wasm \
--output installer.wasm \
--preimages-dir <preimages-dir>
然后,您可以在 调试器 中运行安装程序,使用 --preimage-dir 参数指向之前生成的预图像
mavkit-smart-rollup-wasm-debugger --kernel installer.wasm --inputs inputs.json --preimage-dir <preimages-dir>
依赖关系
~18MB
~344K SLoC