43 lines
877 B
Go

package main
import (
"fmt"
"log"
"github.com/ekzyis/echo-htmx-templ-tailwindcss/db"
"github.com/ekzyis/echo-htmx-templ-tailwindcss/env"
"github.com/ekzyis/echo-htmx-templ-tailwindcss/server"
)
func main() {
if err := env.Load(); err != nil {
log.Fatalf("error loading env: %v", err)
}
env.Parse()
log.Printf("url: %s", env.PublicUrl)
log.Printf("commit: %s", env.CommitShortSha)
log.Printf("postgres: %s", env.PostgresUrlWithoutPassword)
db, err := db.New(env.PostgresUrl)
if err != nil {
log.Fatal(err)
}
if err := db.Migrate(); err != nil {
log.Fatal(err)
}
s := server.New(server.Context{
Env: env.Env,
PublicURL: env.PublicUrl,
CommitShortSha: env.CommitShortSha,
CommitLongSha: env.CommitLongSha,
Db: db,
})
if err := s.Start(fmt.Sprintf(":%d", env.Port)); err != nil {
log.Fatal(err)
}
}