package main import ( "log" "github.com/jobs-scraper/infrastructure" "github.com/joho/godotenv" ) func main() { // Try to load .local.env first, then fallback to .env if err := godotenv.Load(".local.env"); err != nil { log.Println("No .local.env file found, trying .env") if err := godotenv.Load(".env"); err != nil { log.Println("No .env file found, using system environment variables") } } dbConfig := infrastructure.LoadConfigFromEnv() db, err := infrastructure.NewConnection(dbConfig) if err != nil { log.Fatalf("Error connecting to database: %v", err) } defer db.Close() err = db.Ping() if err != nil { log.Fatalf("Error pinging database: %v", err) } log.Println("Successfully connected to database") // Run migrations if err := infrastructure.RunMigrations(db); err != nil { log.Fatalf("Failed to run migrations: %v", err) } log.Println("Migrations completed successfully") }