You've already forked Go-Template
Please no changes this time.
This commit is contained in:
45
cmds/server.go
Normal file
45
cmds/server.go
Normal file
@@ -0,0 +1,45 @@
|
||||
package cmds
|
||||
|
||||
import (
|
||||
"gitea.siteworxpro.com/Siteworxpro/Go-Template/http_handlers/index"
|
||||
"gitea.siteworxpro.com/Siteworxpro/Go-Template/logger"
|
||||
"github.com/labstack/echo/v4"
|
||||
"github.com/labstack/echo/v4/middleware"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
func ServerCommand() *cobra.Command {
|
||||
cmd := &cobra.Command{
|
||||
Use: "server",
|
||||
Short: "Start the server",
|
||||
Long: `Start the http server with the specified port or 8080 default.`,
|
||||
Run: func(cmd *cobra.Command, args []string) {
|
||||
l := logger.FromContext(cmd.Context())
|
||||
|
||||
e := echo.New()
|
||||
e.HideBanner = true
|
||||
e.HidePort = true
|
||||
|
||||
e.Use(middleware.Logger())
|
||||
e.Use(middleware.Recover())
|
||||
e.Use(middleware.CORS())
|
||||
e.Use(middleware.Gzip())
|
||||
|
||||
e.Use(func(next echo.HandlerFunc) echo.HandlerFunc {
|
||||
return func(c echo.Context) error {
|
||||
c.Set("logger", l)
|
||||
return next(c)
|
||||
}
|
||||
})
|
||||
|
||||
index.Register(e.Group("/"))
|
||||
|
||||
l.Info("Starting server on port %s", cmd.Flag("port").Value.String())
|
||||
e.Logger.Fatal(e.Start(":" + cmd.Flag("port").Value.String()))
|
||||
},
|
||||
}
|
||||
|
||||
cmd.Flags().StringP("port", "p", "8080", "Port to run the server on")
|
||||
|
||||
return cmd
|
||||
}
|
||||
Reference in New Issue
Block a user