func main()

in inventory-service/postgress/main.go [45:88]


func main() {
	log.Print("tarting server...")
	dbUser := os.Getenv("DB_USER")
	dbPassword := os.Getenv("DB_PASSWORD")
	dbHost := os.Getenv("DB_HOST")
	dbName := os.Getenv("DB_NAME")

	log.Print("Connecting to DB")
	var err error
	db, err = gorm.Open(postgres.New(postgres.Config{
		DSN: fmt.Sprintf("host=%s user=%s password=%s dbname=%s", dbHost, dbUser, dbPassword, dbName),
	}))
	if err != nil {
		log.Fatal(err)
	}
	log.Print("Database Connected, Migrating Schema(s)")
	// In production you probably want this in your build pipeline. Not on app startup
	err = db.AutoMigrate(&inventoryItem{})
	if err != nil {
		log.Fatal(err)
	}
	log.Print("Database Migration Complete")

	// Seed database so we have fake data
	seedDatabase()

	// Setup http Handles
	http.HandleFunc("/", handler)
	http.HandleFunc("/getAvailableInventory", getAvailableInventory)

	// Determine port for HTTP service.
	port := os.Getenv("PORT")
	if port == "" {
		port = "8080"
		log.Printf("defaulting to port %s", port)
	}

	// Start HTTP server.
	log.Printf("listening on port %s", port)
	if err := http.ListenAndServe(":"+port, nil); err != nil {
		log.Fatal(err)
	}

}