DApps作成①
villagerh.hatenablog.com
前回の続き
自作のコントラクトを作ったのでビルドしていきます。
・コントラクトのコンパイル(プロジェクトディレクトリのルートで実行)
$ truffle compile
成功するとbuild/contracts/に.jsが作られます。
これをイーサリアム上にデプロイするといよいよ動きます。
とはいえ削除ができないのにいきなり本番に上げるのは危険すぎるのでテスト環境を用意します。
いくつかあるみたいですが私は
www.trufflesuite.com
こちらのGenacheを導入しました。
導入方法は落としてきてインストールするだけ。
アプリを実行するとどう動かすかが出るのでとりあえずQUICKLYで動かしてます。
ローカルのGenacheにデプロイするようにtruffle-config.jsを編集していきます。
module.exports = { の中に以下を設定 networks: { development: { host:'127.0.0.1', // Genacheのアプリ上に表示されているアドレス port:7545, // 同上 network_id:'*' }
次にマイグレーフォンファイルを設定します。
migrations/に1_initial_migration.jsが既に入っているはずなのでそれを参考にしつつ作成していきます。
数字の順番にデプロイされていくため2_initial_migration.jsを作成
var UnitFactory = artifacts.require("./UnitFactory.sol"); module.exports = function(deployer) { deployer.deploy(UnitFactory); };
これでマイグレーション(デプロイ)するための準備ができたので実行していきます。
プロジェクトのルートで実行
$ truffle migrate
1度マイグレーションを行うと最後に行ったファイルの次のマイグレーションファイルから実行されます。
コントラクトの修正などを行って再度上げたい場合は--resetオプションを付けて実行。
$ truffle migrate --reset