Skip to content

kanap0nta/aster-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

aster-tutorial

Docker environment for aster network tutorial
Docker 上で Astar ネットワークチュートリアルを行うための環境

Prerequisites

  • Visual Studio Code に Remote Development の拡張機能が入っていること
  • Docker が動作する環境であること

Working Directory

cd test_project/

Build

forge build --contracts ./src/Contract.sol --extra-output-files ewasm evm.assembly metadata

Test

forge test --contracts ./test/Contract.t.sol

Run aster collator

astar-collator --port 30333 --ws-port 9944 --rpc-port 9933 --rpc-cors all --alice --dev

Send token

デプロイ時にガス代がかかるため、ガス代をデバッグアカウントから送金するため下記を行う

EVM から Native のアドレスを取得する
ここにアクセスし、検索欄に 0x を含む自身の Metamask のアドレスを入力(Change address prefix は 5 のままでよい)
スイッチを ON にし、Current address scheme: H160 に切り替えるとNative のアドレスが取得できる

ここにアクセスし、Accounts -> 送信 で、任意のデバッグ用アカウントから、先ほど取得した Native アドレス宛てに、送れるだけトークンを送信する

Deploy contract

forge create --rpc-url http://127.0.0.1:9933 --private-key <Metamask secret key> src/Contract.sol:Contract

※Metamask の秘密鍵は、アカウントの詳細 -> 秘密鍵のエクスポート -> パスワード入力 で表示されるものを使用

成功すると下記のように表示されるので、Deployed to の部分を控えておく

Compiler run successful
Deployer: 0xXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Deployed to: 0xYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
Transaction hash: 0xZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ

Call contract function

Estimate

store 関数実行時のガス代がいくらか確認したい場合、下記を実行

cast estimate <Deployed to Address> "store(uint256)" 3 --rpc-url http://127.0.0.1:9933 --private-key <Metamask secret key>

Send

store 関数を実行したい場合、下記を実行

cast send <Deployed to Address> "store(uint256)" 3 --rpc-url http://127.0.0.1:9933 --private-key <Metamask secret key>

Call

retrieve 関数を実行し、結果を取得したい場合、下記を実行

cast call <Deployed to Address> "retrieve()" --rpc-url http://127.0.0.1:9933

Build clean

forge clean

References

About

Docker environment for aster network tutorial

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages