2025-08-24 01:59:34 +09:00

40 lines
841 B
Go

package main
import (
"context"
"log"
"example.com/bridging-sample/api/internal/config"
"example.com/bridging-sample/api/internal/db"
httpHandlers "example.com/bridging-sample/api/internal/http"
"example.com/bridging-sample/api/internal/repo"
"github.com/gin-gonic/gin"
"github.com/joho/godotenv"
)
func main() {
_ = godotenv.Load("../.env", ".env")
cfg, err := config.Load()
if err != nil {
log.Fatalf("config: %v", err)
}
ctx := context.Background()
client, err := db.NewClient(ctx, cfg.Project, cfg.Instance, cfg.Database)
if err != nil {
log.Fatalf("spanner client: %v", err)
}
defer client.Close()
items := repo.NewItemRepo(client)
h := &httpHandlers.Handlers{Items: items}
r := gin.Default()
h.Register(r)
log.Println("listening on :8080")
if err := r.Run(":8080"); err != nil {
log.Fatal(err)
}
}