gogame-old/cmd/server.go
cmd/server.goRaw
1package cmd
2
3import (
4 "github.com/arnaucube/gogame/config"
5 "github.com/arnaucube/gogame/database"
6 "github.com/arnaucube/gogame/endpoint"
7 "github.com/arnaucube/gogame/services/usersrv"
8 "github.com/urfave/cli"
9)
10
11var ServerCommands = []cli.Command{
12 {
13 Name: "start",
14 Aliases: []string{},
15 Usage: "start the server",
16 Action: start,
17 },
18}
19
20func start(c *cli.Context) error {
21 if err := config.MustRead(c); err != nil {
22 return err
23 }
24
25 db, err := database.New(config.C.Mongodb.Url, config.C.Mongodb.Database)
26 if err != nil {
27 return err
28 }
29
30 // services
31 userservice := usersrv.New(db)
32 if err != nil {
33 return err
34 }
35
36 apiService := endpoint.Serve(config.C, db, userservice)
37 apiService.Run(config.C.Server.ServiceApi)
38
39 return nil
40}