drop getEnv added caarlos0

This commit is contained in:
Pasha 2024-12-09 13:36:43 +03:00
parent e543778c47
commit 351baac79b

@ -4,16 +4,13 @@ import (
"bytes"
"context"
"fmt"
"gitea.pena/PenaSide/common/mongo"
"gitea.pena/PenaSide/common/validate"
"gitea.pena/PenaSide/heruvym/internal/initialize"
minioDal "gitea.pena/PenaSide/heruvym/internal/repository/minio"
"github.com/caarlos0/env/v8"
"github.com/minio/minio-go/v7"
"github.com/pioz/faker"
"log"
"os"
"strconv"
"strings"
)
func main() {
@ -56,49 +53,14 @@ func main() {
}
func loadConfig() (initialize.Config, error) {
config := initialize.Config{
ExternalCfg: initialize.ExternalCfg{
Database: mongo.Configuration{
URL: os.Getenv("MONGO_URL"),
DatabaseName: os.Getenv("MONGO_DB_NAME"),
},
},
IsProd: envToBool(os.Getenv("IS_PROD")),
S3Endpoint: os.Getenv("S3_ENDPOINT"),
S3AccessKey: os.Getenv("S3_ACCESS_KEY"),
S3SecretKey: os.Getenv("S3_SECRET_KEY"),
S3Token: os.Getenv("S3_TOKEN"),
TelegramToken: os.Getenv("TELEGRAM_TOKEN"),
RedisHost: os.Getenv("REDIS_HOST"),
RedisPassword: os.Getenv("REDIS_PASSWORD"),
RedisDB: int(envToInt64(os.Getenv("REDIS_DB"))),
TelegramChannelID: envToInt64(os.Getenv("TELEGRAM_CHANNEL_ID")),
ClientHttpUrl: os.Getenv("CLIENT_HTTP_URL"),
AdminHttpUrl: os.Getenv("ADMIN_HTTP_URL"),
var config initialize.Config
if err := env.Parse(&config); err != nil {
log.Fatalf("failed to parse environment variables: %v", err)
}
return config, nil
}
func envToInt64(str string) int64 {
n, err := strconv.ParseInt(str, 10, 64)
if err != nil {
panic(err)
}
return n
}
func envToBool(str string) bool {
switch strings.ToLower(strings.TrimSpace(str)) {
case "1", "true":
return true
case "0", "false":
return false
default:
panic(fmt.Sprintf("invalid boolean value: %s", str))
}
}
func validateRedis(cfg initialize.Config) error {
if cfg.RedisHost == "" {
return fmt.Errorf("redis host is empty")