Environments & Local
Environment principles
- Jangan pernah overwrite
.envorang lain / yang udah ada. Simpan toggle berlabel (local vs cloud) biar gampang ganti. - Nilai pasti (port, kredensial, URL) selalu dari
.env.example+README.mdtiap repo — bukan dari handbook ini (biar nggak stale). - Jangan taruh secret di source. Pakai env var / runtime config.
Running locally by repo
Perintah run per repo ada di halaman repo masing-masing (section Per Repo): haer-platform-web · haer-platform-api · haer-claims-mobile · haer-platform-bgjobs · haer-connector.
Offline stack (optional)
Ada stack lokal lengkap (Postgres + backend + Zitadel) buat kerja tanpa cloud.
Bentuknya: Postgres lokal, backend NestJS, dan Zitadel lokal dengan tenant seed.
Port & kredensial persisnya cek .env.example / compose file repo terkait —
nilai ini berubah, jadi sengaja nggak di-hardcode di sini.
Zitadel lokal bisa dipakai sebagai identity provider; sebagian PAT dari snapshot DB cloud nggak bisa dipakai lokal. Detail di dok auth repo backend.
Mobile to local auth
Buat test app mobile terhadap auth lokal, domain auth (mis. auth.haer.co.id)
diarahkan ke LAN IP Mac lewat dnsmasq di device. Ini bikin device fisik bisa
nyampe Zitadel/backend yang jalan di laptop.
Scratch DB for migrations
Generate/verify migration pakai scratch DB lokal terpisah, bukan DB dev/shared. Lihat Data & Migrations.