pass timezone env var to dsn string
All checks were successful
pedestrian-simulator / build (push) Successful in 58s

This commit is contained in:
2026-01-11 20:54:37 -07:00
parent 123f3432ee
commit 6e5fe90d29

View File

@@ -4,6 +4,7 @@ import (
"database/sql"
"fmt"
"log"
"net/url"
"os"
"time"
@@ -25,7 +26,12 @@ func InitDB() {
}
log.Printf("[DB] Using timezone: %s (Local=%s)", os.Getenv("TZ"), time.Local.String())
dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?parseTime=true&loc=Local&time_zone='Local'", user, pass, host, port, name)
// Default to UTC if TZ is empty, otherwise use the encoded TZ name
tzParam := "UTC"
if os.Getenv("TZ") != "" {
tzParam = url.QueryEscape("'" + os.Getenv("TZ") + "'")
}
dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?parseTime=true&loc=Local&time_zone=%s", user, pass, host, port, name, tzParam)
var err error
db, err = sql.Open("mysql", dsn)
if err != nil {