package main import ( "feedsystem_video_go/internal/config" "feedsystem_video_go/internal/db" apphttp "feedsystem_video_go/internal/http" "log" ) func main() { // Load config log.Printf("Loading config from configs/config.yaml") cfg, err := config.Load("configs/config.yaml") if err != nil { log.Fatalf("Failed to load config: %v", err) } // Connect database log.Printf("Database config: %v", cfg.Database) sqlDB, err := db.NewDB(cfg.Database) if err != nil { log.Fatalf("Failed to connect database: %v", err) } if err := db.AutoMigrate(sqlDB); err != nil { log.Fatalf("Failed to auto migrate database: %v", err) } defer db.CloseDB(sqlDB) // Set router r := apphttp.SetRouter(sqlDB) log.Printf("Server is running on port %s", cfg.Server.Port) if err := r.Run(":" + cfg.Server.Port); err != nil { log.Fatalf("Failed to run server: %v", err) } }