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