package database import ( "os" "log" "fmt" "gorm.io/driver/postgres" "gorm.io/gorm" ) var DB *gorm.DB func getConnectionString() string { var ( host = os.Getenv("DB_HOST") port = os.Getenv("DB_PORT") user = os.Getenv("DB_USER") password = os.Getenv("DB_PASSWORD") dbname = os.Getenv("DB_NAME") ) log.Printf("[LOG] Attempting to connect with: host=%s, port=%s, user=%s, dbname=%s", host, port, user, dbname) connStr := fmt.Sprintf( "postgres://%s:%s@%s:%s/%s?sslmode=disable", user, password, host, port, dbname, ) return connStr } func ConnectDB() { db_url := getConnectionString() db, err := gorm.Open(postgres.Open(db_url), &gorm.Config{}) if err != nil { log.Fatal("[FAIL] Failed to connect to database:", err) } fmt.Println("[SUCCESS] Connected to database successfully") DB = db }