bottin-ag/cmd/api.go
Victor Lacasse-Beaudoin a88809f91e Retirer validation problématique
Si le handler était nil, la vérification serait probablement assez pour
faire panic l'application, ce qui serait un problème que la validation
soit présente ou non.
2023-09-16 17:21:18 -04:00

46 lines
917 B
Go

/*
Copyright © 2023 AGECEM & Victor Lacasse-Beaudoin
*/
package cmd
import (
"fmt"
"log"
"git.agecem.com/agecem/bottin-ag/apihandler"
"git.agecem.com/agecem/bottin-ag/config"
bottindata "git.agecem.com/agecem/bottin/v5/data"
"github.com/labstack/echo/v4"
"github.com/labstack/echo/v4/middleware"
"github.com/spf13/cobra"
)
// apiCmd represents the api command
var apiCmd = &cobra.Command{
Use: "api",
Short: "Start the API server",
Run: func(cmd *cobra.Command, args []string) {
cfg, err := config.UnmarshalConfig()
if err != nil {
log.Fatal(err)
}
e := echo.New()
e.Pre(middleware.AddTrailingSlash())
v0 := e.Group("/v0")
handler := apihandler.New()
handler.BottinAPIClient = bottindata.NewApiClient("bottin", "localhost", "http", 1312)
apihandler.DeclareRoutes(v0, &handler)
e.Start(fmt.Sprintf(":%d", cfg.API.Port))
},
}
func init() {
rootCmd.AddCommand(apiCmd)
}