config ext

This commit is contained in:
nquidox 2026-04-03 19:06:06 +03:00
parent 25a422c0e6
commit 991b250118
3 changed files with 38 additions and 14 deletions

View file

@ -8,6 +8,7 @@ type Config struct {
type AppConfig struct {
Mode string
LogLvl string
ChanLen uint
}
type RabbitMQConfig struct {
@ -16,6 +17,9 @@ type RabbitMQConfig struct {
User string
Pass string
Vhost string
LoggingEnabled bool
TaskSourceQueue string
TaskResultQueue string
}
func New() *Config {
@ -23,6 +27,7 @@ func New() *Config {
App: AppConfig{
Mode: getEnv("APP_MODE", "dev"),
LogLvl: getEnv("APP_LOG_LVL", "debug"),
ChanLen: getEnvUint("APP_CHANNEL_LEN", 100),
},
Rabbit: RabbitMQConfig{
@ -31,6 +36,9 @@ func New() *Config {
User: getEnv("RABBIT_USER", "parser-mandarake-dev"),
Pass: getEnv("RABBIT_PASS", "dev-pass"),
Vhost: getEnv("RABBIT_VHOST", "taskProcessorDevHost"),
LoggingEnabled: getEnvBool("RABBIT_LOGGING_ENABLED", true),
TaskSourceQueue: getEnv("TASK_SOURCE_QUEUE", "task-publisher-mandarake"),
TaskResultQueue: getEnv("TASK_RESULT_QUEUE", "tasks-results"),
},
}
}

View file

@ -50,3 +50,14 @@ func getEnvPort(key string, fallback uint16) uint16 {
}
return fallback
}
func getEnvBool(key string, fallback bool) bool {
if value, ok := os.LookupEnv(key); ok {
val, err := strconv.ParseBool(value)
if err != nil {
return fallback
}
return val
}
return fallback
}

View file

@ -1,8 +1,13 @@
APP_MODE=dev
APP_LOG_LVL=debug
APP_CHANNEL_LEN=100
RABBIT_HOST=
RABBIT_PORT=
RABBIT_USER=
RABBIT_PASS=
RABBIT_VHOST=
RABBIT_LOGGING_ENABLED=false
TASK_SOURCE_QUEUE=task-publisher-mandarake
TASK_RESULT_QUEUE=tasks-results