🖥️Installation

Cara melakukan Deploy dan Execute Contract di Aleo Testnet.

Siapkan Aleo Wallet

pertama kita generate aleo wallet di link ini dan klik generate.

Jangan berikan data ini ke siapapun dan foto ini hanya contoh.

Simpan 3 kolom tersebut ke tempat yang aman dan jangan sampai siapapun mengetahui private key kalian.

Request Faucet via SMS

Kalian perlu test token ALEO untuk deploy contract nanti, kalian bisa kirim SMS pada nomor ini +1-867-888-5688 dan kirim pesan seperti dibawah ini.

Send 50 credits to aleo1hcgx79gqerlj4ad2y2w2ysn3pc38nav69vd2r5lc3hjycfy6xcpse0cag0

Ubah address-nya dengan address yang sudah kamu dapatkan di step pertama.

Setelah mendapatkan respon dari SMS, kalian bisa cek status faucet sudah dikirim atau tidak dengan mencarinya di link ini. Kemudian masukkan address kalian dan jangan lupa simpan Transaction ID-nya jika sudah muncul dan tidak dalam status pending.

Download Packages Yang Diperlukan

Download bahan-bahan yang diperlukan untuk deploy dan excute contract nanti beserta tmux untuk mengantisipasi ketika kehilangan koneksi VPS, instalasi kalian tetap berjalan. Fungsinya sama seperti menggunakan screen.

sudo apt update && \
sudo apt install make clang pkg-config libssl-dev build-essential gcc xz-utils git curl vim tmux ntp jq llvm ufw -y && \
tmux new -s deploy

Buat Variable Untuk Wallet

Tujuannya agar mempermudah untuk menjalankan command dengan menggunakan variable.

echo Enter your Private Key: && read PK && \
echo Enter your View Key: && read VK && \
echo Enter your Address: && read ADDRESS

Tidak perlu edit command diatas.

Setelah itu kalian enter dan masukkan satu per satu kolom yang dibutuhkan. Jika sudah selesai kalian bisa double check kembali apakah data yang kalian masukkan sudah sama atau tidak dengan menggunakan command dibawah ini.

echo Private Key: $PK && \
echo View Key: $VK && \
echo Address: $ADDRESS

Jika sudah sama seperti yang kalian input, kemudian lanjut buat variable untuk Transaction ID dari request faucet tadi.

echo Enter your Transaction ID: && read TI

Setelah itu tekan enter dan masukkan Transaction ID kalian yang sudah didapatkan melalui faucet link sebelumnya. Kemudian buat variable CIPHERTEXT untuk melakukan deploy nanti.

CIPHERTEXT=$(curl -s https://vm.aleo.org/api/testnet3/transaction/$TI | jq -r '.execution.transitions[0].outputs[0].value')

Install SnarkOS dan Leo

Pertama kalian install snarkOS dan build.

cd $HOME
git clone https://github.com/AleoHQ/snarkOS.git --depth 1
cd snarkOS
bash ./build_ubuntu.sh
source $HOME/.bashrc
source $HOME/.cargo/env

Setelah itu install leo dengan cargo.

cd $HOME
git clone https://github.com/AleoHQ/leo.git
cd leo
cargo install --path .

Deploy Contract

Pertama kalian buat variable dan folder untuk persiapan deploy contract.

NAME=helloworld_"${ADDRESS:4:6}"
mkdir $HOME/leo_deploy
cd $HOME/leo_deploy
leo new $NAME

Setelah itu buat variable RECORD untuk melakukan deploy contract.

RECORD=$(snarkos developer decrypt --ciphertext $CIPHERTEXT --view-key $VK)

Kemudian gunakan command dibawah ini untuk men-deploy contract.

snarkos developer deploy "$NAME.aleo" \
--private-key "$PK" \
--query "https://vm.aleo.org/api" \
--path "$HOME/leo_deploy/$NAME/build/" \
--broadcast "https://vm.aleo.org/api/testnet3/transaction/broadcast" \
--fee 4000000 \
--record "$RECORD"

Setelah selesai maka hasilnya kurang lebih seperti gambar dibawah ini.

Jangan lupa cek transaksi kalian di explorer untuk memastikan jika deploy contract kalian sudah berhasil atau tidak. Kalian cukup copy tx hash yang berawalan at1... setelah itu cari di explorer.

Execute Contract

Gunakan tx hash yang tadi kalian dapatkan setelah deploy contract. Kemudian jalankan command dibawah ini dan tekan enter, lalu isi dengan tx hash yang sudah kalian simpan tadi.

echo Enter your Deploy hash: && read DH

Setelah itu buat variable CIPHERTEXT lagi untuk melakukan execute contract.

CIPHERTEXT=$(curl -s https://vm.aleo.org/api/testnet3/transaction/$DH | jq -r '.fee.transition.outputs[].value')

Jika sudah selesai, buat kembali variable RECORD.

RECORD=$(snarkos developer decrypt --ciphertext $CIPHERTEXT --view-key $VK)

Kemudian buat execute contract dengan menggunakan command dibawah ini.

snarkos developer execute "$NAME.aleo" "hello" "1u32" "2u32" \
--private-key $PK \
--query "https://vm.aleo.org/api" \
--broadcast "https://vm.aleo.org/api/testnet3/transaction/broadcast" \
--fee 1000000 \
--record "$RECORD"

Jika sudah selesai menggunakan command diatas, maka hasilnya akan seperti gambar dibawah ini.

Jangan lupa cek kembali ke explorer dan copy id transaksi yang berawalan at1... dan jika sudah sukses, maka kalian sudah selesai melakukan Deploy dan Execute Contract.

Sumber : Testnet-Pride

Last updated