From 29ad764f5e7d7afa71ae0eac2745280d9ff0c424 Mon Sep 17 00:00:00 2001 From: Suman Biswas Date: Fri, 24 Jul 2026 22:37:37 +0530 Subject: [PATCH] added support for ssl=requre --- server/config/pgx.go | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/server/config/pgx.go b/server/config/pgx.go index 8480bb5..3ec991e 100644 --- a/server/config/pgx.go +++ b/server/config/pgx.go @@ -4,6 +4,7 @@ import ( "context" "fmt" "log" + "strings" "time" "github.com/commandlinecoding/elephant/server/env" @@ -12,13 +13,24 @@ import ( var DB *pgxpool.Pool +func isLocalHost(host string) bool { + h := strings.ToLower(host) + return h == "localhost" || h == "127.0.0.1" || h == "::1" || strings.HasPrefix(h, "172.") +} + func InitDatabase() { - dsn := fmt.Sprintf("postgres://%s:%s@%s:%s/%s?sslmode=disable", + sslMode := "require" + if isLocalHost(env.POSTGRES_HOST) { + sslMode = "disable" + } + + dsn := fmt.Sprintf("postgres://%s:%s@%s:%s/%s?sslmode=%s", env.POSTGRES_USER, env.POSTGRES_PASSWORD, env.POSTGRES_HOST, env.POSTGRES_PORT, env.POSTGRES_DB, + sslMode, ) cfg, err := pgxpool.ParseConfig(dsn)