blcompro/config/config.go
2025-05-29 08:55:21 +00:00

48 lines
1.1 KiB
Go

package config
import "github.com/spf13/viper"
type App struct {
AppPort string `json:"app_port"`
AppEnv string `json:"app_env"`
JwtSecretKey string `json:"jwt_secret_key"`
JwtIssuer string `json:"jwt_issuer"`
}
type PsqlDB struct {
Host string `json:"host"`
Port string `json:"port"`
User string `json:"user"`
Password string `json:"password"`
DBName string `json:"db_name"`
DBMaxOpen int `json:"db_max_open"`
DBMaxIdle int `json:"db_max_idle"`
}
type Config struct {
App App
Psql PsqlDB
}
func NewConfig() *Config {
return &Config{
App: App{
AppPort: viper.GetString("APP_PORT"),
AppEnv: viper.GetString("APP_PORT"),
JwtSecretKey: viper.GetString("JWT_SECRET_KEY"),
JwtIssuer: viper.GetString("JWT_ISSUER"),
},
Psql: PsqlDB{
Host: viper.GetString("DATABASE_HOST"),
Port: viper.GetString("DATABASE_PORT"),
User: viper.GetString("DATABASE_USER"),
Password: viper.GetString("DATABASE_PASSWORD"),
DBName: viper.GetString("DATABASE_NAME"),
DBMaxOpen: viper.GetInt("DATABASE_MAX_OPEN_CONNECTION"),
DBMaxIdle: viper.GetInt("DATABASE_MAX_IDLE_CONNECTION"),
},
}
}