|
- package config
-
- import "os"
-
- type Config struct {
- HTTPAddr string
- WSAddr string
- MQTTHost string
- MQTTUser string
- MQTTPass string
- MQTTClientID string
- DBPath string
- KafkaURL string
- RedisURL string
- }
-
- // getEnv returns env var value or a default if not set.
- func getEnv(key, def string) string {
- if v := os.Getenv(key); v != "" {
- return v
- }
- return def
- }
-
- func Load() *Config {
- return &Config{
- HTTPAddr: getEnv("HTTP_HOST_PATH", "0.0.0.0:8080"),
- WSAddr: getEnv("HTTPWS_HOST_PATH", "0.0.0.0:8088"),
- MQTTHost: getEnv("MQTT_HOST", "192.168.1.101:1883"),
- MQTTUser: getEnv("MQTT_USERNAME", "user"),
- MQTTPass: getEnv("MQTT_PASSWORD", "pass"),
- MQTTClientID: getEnv("MQTT_CLIENT_ID", "presence-detector"),
- DBPath: getEnv("DB_PATH", "/data/conf/presence/presence.db"),
- KafkaURL: getEnv("KAFKA_URL", "127.0.0.1:9092"),
- }
- }
|