Cryptozombiesで有名なLoom Networkが、Loom SDKのBeta版を公開した。
Loom SDK Beta
本投稿の内容
とりあえずDappチェーンを動かして見たい人のために、
『truffleを使って、シンプルなコントラクトをDappチェーン上にデプロイする』最短手順をメモしておく。
デプロイしたコントラクトには、truffle console
やtruffle exec
などでアクセスできる。
対象
truffleを使ってコントラクトをデプロイしたことがある人。
ganacheでもテストネットワーク(ropsten, rinkebyなど)でもメインネットでもOK。
テストした環境
- OS: macOS Sierra 10.12.6
- Truffle v4.1.11 (core: 4.1.11)
- Solidity v0.4.24 (solc-js)
手順
基本的には公式のドキュメントに従っていくが、コントラクトのデプロイが目的なので不要なところは飛ばして進む。
必要なものをインストール
brew install wget
brew install go
brew install protobuf
Loom SDKのインストール
wget https://storage.googleapis.com/private.delegatecall.com/loom/osx/build-155/loom
chmod +x loom
cp loom /usr/local/bin/loom
Dappチェーンの起動
mkdir dapp-chain
cd dapp-chain
loom spin weave-blueprint
cd blueprint
make deps
make
cd build
loom init
cp ../genesis.example.json genesis.json
loom run
自分のコントラクトをデプロイする
シンプルなコントラクトを用意した。
https://github.com/ryokomy/loom-truffle-test
pragma solidity ^0.4.22;
contract SimpleStore {
uint value;
event NewValueSet(uint _value);
function set(uint _value) public {
value = _value;
emit NewValueSet(value);
}
function get() public view returns (uint) {
return value;
}
}
1. 別のターミナルを開いて適当なディレクトリにリポジトリをクローンし、packageをインストールする。
git clone git@github.com:ryokomy/loom-truffle-test.git
cd loom-truffle-test
yarn install
2. 秘密鍵と公開鍵を作る。
loom genkey -a public_key -k private_key
3. デプロイする
truffle migrate --network loom_dapp_chain --reset
4. コントラクトにアクセスする
今回は以下のtruffle exec
用のファイルを用意した。truffle console
を使っても慣れた方法でアクセスできる。
# for set
truffle exec --network loom_dapp_chain tools/exec_set.js
# for get
truffle exec --network loom_dapp_chain tools/exec_get.js
まとめ
『truffleを使って、シンプルなコントラクトをDappチェーン上にデプロイする』ことができた。
また、そのコントラクトにtruffleのコマンドでアクセスできることを確認した。
このDappチェーンはローカルで動作している。
参考
LoomNetwork, Dappチェーンについて
- CryptoZombiesはフォークします!
- DAppチェーン 〜サイドチェーンを通したイーサリアムDAppのスケーリング〜
- Loom Network SDKアルファ版登場!
- Loom Network(ルームネットワーク)とは?-ゲームdAppsに特化したプラットフォーム-
- Loom Network – Zombieチェーンとは? 既存のチェーンとの違い
- Loom SDKベータ版をパブリック公開!!
その他