Configuration and Secrets Management - Lumina-Enterprise-Solutions/prism-notification-service GitHub Wiki

⚙️ Configuration and Secrets Management

Konfigurasi untuk prism-notification-service dikelola melalui variabel lingkungan dan HashiCorp Vault.

Alur Pemuatan Konfigurasi

Saat layanan dimulai, main.go akan:

  1. Membaca variabel lingkungan untuk koneksi ke infrastruktur inti (VAULT_ADDR, VAULT_TOKEN, REDIS_ADDR).
  2. Menggunakan kredensial Vault untuk terhubung dan membaca rahasia.
  3. Rahasia yang diperlukan, seperti kredensial SMTP (MAILTRAP_*), dibaca dari path secret/data/prism di Vault.
  4. Rahasia-rahasia ini kemudian di-set sebagai variabel lingkungan di dalam kontainer, sehingga bisa diakses oleh EmailService.

Tabel Konfigurasi dan Variabel Lingkungan

Variabel Deskripsi Contoh Nilai Sumber Utama
PORT Port server HTTP. 8080 Variabel Lingkungan
REDIS_ADDR Alamat Redis untuk antrian. cache-redis:6379 Variabel Lingkungan
JAEGER_ENDPOINT Alamat kolektor Jaeger. jaeger:4317 Variabel Lingkungan
VAULT_ADDR Alamat HashiCorp Vault. http://vault:8200 Variabel Lingkungan
VAULT_TOKEN Token untuk Vault. root-token-for-dev Variabel Lingkungan
MAILTRAP_HOST Host server SMTP. sandbox.smtp.mailtrap.io Vault
MAILTRAP_PORT Port server SMTP. 2525 Vault
MAILTRAP_USER Username otentikasi SMTP. api Vault
MAILTRAP_PASS Password otentikasi SMTP. xxxxxxxxxxxxxx Vault

Kembali ke Halaman Utama