Study
Foundry

Environment Variable & .env di Script

Penjelasan

Menaruh private key atau API key langsung di kode adalah praktik berbahaya. Foundry mendukung pembacaan environment variable lewat cheatcode `vm.envUint()`, `vm.envAddress()`, `vm.envString()`, dll di dalam script, dengan nilai diambil dari file `.env` yang di-load otomatis oleh forge saat menjalankan perintah. File `.env` berisi pasangan key-value seperti `PRIVATE_KEY=0xabc...` dan `RPC_URL=https://...`, lalu di script dipanggil lewat `vm.envUint("PRIVATE_KEY")`. File `.env` WAJIB masuk `.gitignore` supaya tidak pernah ter-commit ke repository.

Contoh Konsep

# .env
PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80
SEPOLIA_RPC_URL=https://eth-sepolia.g.alchemy.com/v2/${ALCHEMY_KEY}
ETHERSCAN_API_KEY=abcdef123456

Praktikum

Modifikasi script deployment agar membaca private key dari environment variable PRIVATE_KEY, bukan hardcode di flag CLI.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Tambahkan `.env` ke `.gitignore` sejak awal project dibuat, dan sediakan file `.env.example` berisi nama variabel tanpa nilai asli sebagai panduan tim.