TP-0000 | Use houston group (#75)

This commit is contained in:
Abhijeet Gupta
2023-05-18 14:44:30 +05:30
committed by GitHub Enterprise
parent 4f12833e1a
commit 68b12f5a14
2 changed files with 47 additions and 16 deletions

View File

@@ -35,16 +35,16 @@ func NewServer(gin *gin.Engine, logger *zap.Logger, db *gorm.DB, mjolnirClient *
}
}
func (s *Server) Handler() {
s.readinessHandler()
s.incidentClientHandler()
func (s *Server) Handler(houstonGroup *gin.RouterGroup) {
s.readinessHandler(houstonGroup)
s.incidentClientHandler(houstonGroup)
s.gin.Use(s.createMiddleware())
s.teamHandler()
s.severityHandler()
s.incidentHandler()
s.usersHandler()
s.filtersHandler()
s.teamHandler(houstonGroup)
s.severityHandler(houstonGroup)
s.incidentHandler(houstonGroup)
s.usersHandler(houstonGroup)
s.filtersHandler(houstonGroup)
metrics.AdminHandler()
//this should always be at the end since it opens websocket to connect to slackbot
@@ -110,61 +110,90 @@ func (s *Server) houstonHandler() {
houstonHandler.HoustonConnect()
}
func (s *Server) teamHandler() {
func (s *Server) teamHandler(houstonGroup *gin.RouterGroup) {
houstonClient := NewHoustonClient(s.logger)
slackClient := slackbot.NewSlackClient(s.logger, houstonClient.socketModeClient)
teamHandler := service.NewTeamService(s.gin, s.logger, s.db, slackClient)
//Will be deprecated because they are not using hosuton group
s.gin.GET("/teams", teamHandler.GetTeams)
s.gin.GET("/teams/:id", teamHandler.GetTeams)
s.gin.POST("/teams", teamHandler.UpdateTeam)
houstonGroup.GET("/teams", teamHandler.GetTeams)
houstonGroup.GET("/teams/:id", teamHandler.GetTeams)
houstonGroup.POST("/teams", teamHandler.UpdateTeam)
}
func (s *Server) severityHandler() {
func (s *Server) severityHandler(houstonGroup *gin.RouterGroup) {
houstonClient := NewHoustonClient(s.logger)
slackClient := slackbot.NewSlackClient(s.logger, houstonClient.socketModeClient)
severityHandler := service.NewSeverityService(s.gin, s.logger, s.db, slackClient)
//Will be deprecated because they are not using hosuton group
s.gin.GET("/severities", severityHandler.GetSeverities)
s.gin.GET("/severities/:id", severityHandler.GetSeverities)
s.gin.POST("/severities", severityHandler.UpdateSeverities)
houstonGroup.GET("/severities", severityHandler.GetSeverities)
houstonGroup.GET("/severities/:id", severityHandler.GetSeverities)
houstonGroup.POST("/severities", severityHandler.UpdateSeverities)
}
func (s *Server) incidentClientHandler() {
func (s *Server) incidentClientHandler(houstonGroup *gin.RouterGroup) {
houstonClient := NewHoustonClient(s.logger)
incidentHandler := service.NewIncidentService(s.gin, s.logger, s.db, houstonClient.socketModeClient)
//Will be deprecated because they are not using hosuton group
s.gin.POST("/create-incident", incidentHandler.CreateIncident)
houstonGroup.POST("/create-incident", incidentHandler.CreateIncident)
}
func (s *Server) incidentHandler() {
func (s *Server) incidentHandler(houstonGroup *gin.RouterGroup) {
houstonClient := NewHoustonClient(s.logger)
incidentHandler := service.NewIncidentService(s.gin, s.logger, s.db, houstonClient.socketModeClient)
//Will be deprecated because they are not using hosuton group
s.gin.GET("/incidents", incidentHandler.GetIncidents)
s.gin.GET("/incidents/:id", incidentHandler.GetIncidents)
s.gin.POST("/incidents", incidentHandler.UpdateIncident)
s.gin.GET("/incidents/header", incidentHandler.GetIncidentHeader)
houstonGroup.GET("/incidents", incidentHandler.GetIncidents)
houstonGroup.GET("/incidents/:id", incidentHandler.GetIncidents)
houstonGroup.POST("/incidents", incidentHandler.UpdateIncident)
houstonGroup.GET("/incidents/header", incidentHandler.GetIncidentHeader)
}
func (s *Server) usersHandler() {
func (s *Server) usersHandler(houstonGroup *gin.RouterGroup) {
houstonClient := NewHoustonClient(s.logger)
slackClient := slackbot.NewSlackClient(s.logger, houstonClient.socketModeClient)
usersHandler := service.NewUserService(s.gin, s.logger, slackClient)
//Will be deprecated because they are not using hosuton group
s.gin.GET("/users/:id", usersHandler.GetUserInfo)
s.gin.GET("/users", usersHandler.GetUsersInConversation)
houstonGroup.GET("/users/:id", usersHandler.GetUserInfo)
houstonGroup.GET("/users", usersHandler.GetUsersInConversation)
}
func (s *Server) filtersHandler() {
func (s *Server) filtersHandler(houstonGroup *gin.RouterGroup) {
filtersHandler := service.NewFilterService(s.gin, s.logger, s.db)
//Will be deprecated because they are not using hosuton group
s.gin.GET("/filters", filtersHandler.GetFilters)
houstonGroup.GET("/filters", filtersHandler.GetFilters)
}
func (s *Server) readinessHandler() {
func (s *Server) readinessHandler(houstonGroup *gin.RouterGroup) {
readinessHandler := service.NewReadinessService(s.gin)
//Will be deprecated because they are not using hosuton group
s.gin.GET("/ping", readinessHandler.Ping)
houstonGroup.GET("/ping", readinessHandler.Ping)
}
func (s *Server) Start() {

View File

@@ -32,6 +32,8 @@ func main() {
r.Use(ginzap.Ginzap(logger, time.RFC3339, true))
r.Use(ginzap.RecoveryWithZap(logger, true))
houston := r.Group("/houston")
db := postgres.NewGormClient(viper.GetString("postgres.dsn"), viper.GetString("postgres.connection.max.idle.time"),
viper.GetString("postgres.connection.max.lifetime"), viper.GetInt("postgres.connections.max.idle"),
viper.GetInt("postgres.connections.max.open"), logger)
@@ -41,7 +43,7 @@ func main() {
)
sv := app.NewServer(r, logger, db, mjolnirClient)
sv.Handler()
sv.Handler(houston)
sv.Start()
return nil