func main() { // Set the CLI app commands cliApp.Commands = []cli.Command{ { Name: "migrate", Usage: "run migrations", Action: func(c *cli.Context) error { return commands.Migrate() }, }, { Name: "loaddata", Usage: "load data from fixture", Action: func(c *cli.Context) error { return commands.LoadData(c.Args()) }, }, { Name: "runserver", Usage: "run web server", Action: func(c *cli.Context) error { return commands.RunServer() }, }, } // Run the CLI app if err := cliApp.Run(os.Args); err != nil { log.Fatal(err) } }
func main() { // Load the configuration, connect to the database cnf := config.NewConfig(true) // must load once db, err := database.NewDatabase(cnf) if err != nil { log.Fatal(err) } defer db.Close() // Disable logging db.LogMode(false) // Set the CLI app commands cliApp.Commands = []cli.Command{ { Name: "migrate", Usage: "run migrations", Action: func(c *cli.Context) { if err := commands.Migrate(db); err != nil { log.Fatal(err) } }, }, { Name: "loaddata", Usage: "load data from fixture", Action: func(c *cli.Context) { if err := commands.LoadData(c.Args(), cnf, db); err != nil { log.Fatal(err) } }, }, { Name: "runserver", Usage: "run web server", Action: func(c *cli.Context) { commands.RunServer(cnf, db) }, }, } // Run the CLI app cliApp.Run(os.Args) }