Files
aura-crm/production/backend/internal/db/config.go
T

25 lines
471 B
Go

package db
import (
"context"
"fmt"
"os"
"github.com/jackc/pgx/v5/pgxpool"
)
func NewPostgres(ctx context.Context) (*pgxpool.Pool, error) {
url := os.Getenv("DATABASE_URL")
if url == "" {
return nil, fmt.Errorf("DATABASE_URL is not set")
}
pool, err := pgxpool.New(ctx, url)
if err != nil {
return nil, fmt.Errorf("pgxpool.New: %w", err)
}
if err := pool.Ping(ctx); err != nil {
return nil, fmt.Errorf("postgres ping: %w", err)
}
return pool, nil
}