github.com/soulteary/pocket-bookcase@v0.0.0-20240428065142-0b5a9a0fc98a/internal/http/routes/system.go (about) 1 package routes 2 3 import ( 4 "github.com/gin-gonic/gin" 5 "github.com/sirupsen/logrus" 6 "github.com/soulteary/pocket-bookcase/internal/http/response" 7 "github.com/soulteary/pocket-bookcase/internal/model" 8 ) 9 10 type SystemRoutes struct { 11 logger *logrus.Logger 12 } 13 14 func (r *SystemRoutes) Setup(group *gin.RouterGroup) model.Routes { 15 group.GET("/liveness", r.livenessHandler) 16 return r 17 } 18 19 func (r *SystemRoutes) livenessHandler(c *gin.Context) { 20 response.Send(c, 200, struct { 21 Version string `json:"version"` 22 Commit string `json:"commit"` 23 Date string `json:"date"` 24 }{ 25 Version: model.BuildVersion, 26 Commit: model.BuildCommit, 27 Date: model.BuildDate, 28 }) 29 } 30 31 func NewSystemRoutes(logger *logrus.Logger) *SystemRoutes { 32 return &SystemRoutes{ 33 logger: logger, 34 } 35 }