From 177663c73f3d708120b975a74eebd0951177a53b Mon Sep 17 00:00:00 2001 From: Samuel Johnson Date: Mon, 24 Nov 2025 00:38:12 -0500 Subject: Add blog posts to front page --- cmd/web/main.go | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'cmd/web/main.go') diff --git a/cmd/web/main.go b/cmd/web/main.go index 619cc93..42b672a 100644 --- a/cmd/web/main.go +++ b/cmd/web/main.go @@ -1,6 +1,7 @@ package main import ( + "database/sql" "fmt" "log" "net/http" @@ -9,6 +10,8 @@ import ( "github.com/joho/godotenv" + _ "github.com/jackc/pgx/v5/stdlib" + "paterissa.net/mblog/cmd/web/handlers" "paterissa.net/mblog/cmd/web/types" ) @@ -28,6 +31,11 @@ func main() { app.Env.Webmaster = os.Getenv("webmaster") app.Env.Db.Name = os.Getenv("db_name") + app.Env.Db.Port, err = strconv.ParseUint(os.Getenv("db_port"), 10, 64) + if err != nil { + app.Env.Db.Port = 5432 + } + app.Env.Db.Host = os.Getenv("db_host") app.Env.Db.Username = os.Getenv("db_user") app.Env.Db.Password = os.Getenv("db_pass") app.Env.AppPort, err = strconv.ParseUint(os.Getenv("web_port"), 10, 64) @@ -35,7 +43,21 @@ func main() { app.Env.AppPort = 5005 } - router := handlers.RegisterEndpoints(app) + connStr := fmt.Sprintf("host=%s port=%d user=%s password=%s dbname=%s sslmode=disable", + app.Env.Db.Host, + app.Env.Db.Port, + app.Env.Db.Username, + app.Env.Db.Password, + app.Env.Db.Name, + ) + db, err := sql.Open("pgx", connStr) + if err != nil { + fmt.Fprintf(os.Stderr, "Failed to open DB: %v\n", err) + os.Exit(1) + } + defer db.Close() + + router := handlers.RegisterEndpoints(app, db) srv := &http.Server{ Addr: fmt.Sprintf(":%d", app.Env.AppPort), ErrorLog: app.Err, -- cgit v1.2.3