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:
- Membaca variabel lingkungan untuk koneksi ke infrastruktur inti (
VAULT_ADDR
,VAULT_TOKEN
,REDIS_ADDR
). - Menggunakan kredensial Vault untuk terhubung dan membaca rahasia.
- Rahasia yang diperlukan, seperti kredensial SMTP (
MAILTRAP_*
), dibaca dari pathsecret/data/prism
di Vault. - 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 |