✨ Status checking
This commit is contained in:
@ -13,19 +13,19 @@ import (
|
||||
|
||||
func MapControllers(app *fiber.App) {
|
||||
app.Get("/check-ip", getClientIP)
|
||||
app.Get("/", func(c *fiber.Ctx) error {
|
||||
return c.JSON(fiber.Map{
|
||||
"api_level": pkg.ApiLevel,
|
||||
"version": pkg.AppVersion,
|
||||
"status": true,
|
||||
})
|
||||
})
|
||||
app.Get("/directory/status", getServicesStatus)
|
||||
app.Get("/directory/services", listExistsService)
|
||||
|
||||
// Some built-in public-accessible APIs
|
||||
wellKnown := app.Group("/.well-known").Name("Well Known")
|
||||
{
|
||||
wellKnown.Get("/", func(c *fiber.Ctx) error {
|
||||
return c.JSON(fiber.Map{
|
||||
"api_level": pkg.ApiLevel,
|
||||
"version": pkg.AppVersion,
|
||||
"status": true,
|
||||
})
|
||||
})
|
||||
wellKnown.Get("/directory/services", listExistsService)
|
||||
|
||||
wellKnown.Get("/openid-configuration", func(c *fiber.Ctx) error {
|
||||
service := directory.GetServiceInstanceByType(nex.ServiceTypeAuth)
|
||||
if service == nil || service.HttpAddr == nil {
|
||||
@ -45,7 +45,7 @@ func MapControllers(app *fiber.App) {
|
||||
// WatchTower administration APIs
|
||||
wt := app.Group("/wt").Name("WatchTower").Use(auth.ValidatorMiddleware)
|
||||
{
|
||||
wt.Post("/maintenance/database", wtRunDbMaintenance)
|
||||
wt.Post("/maintenance/database", watchRunDbMaintenance)
|
||||
}
|
||||
|
||||
// Common websocket gateway
|
||||
|
10
pkg/internal/web/api/status.go
Normal file
10
pkg/internal/web/api/status.go
Normal file
@ -0,0 +1,10 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"git.solsynth.dev/hypernet/nexus/pkg/internal/directory"
|
||||
"github.com/gofiber/fiber/v2"
|
||||
)
|
||||
|
||||
func getServicesStatus(c *fiber.Ctx) error {
|
||||
return c.JSON(directory.GetServiceStatus())
|
||||
}
|
@ -6,7 +6,7 @@ import (
|
||||
"github.com/gofiber/fiber/v2"
|
||||
)
|
||||
|
||||
func wtRunDbMaintenance(c *fiber.Ctx) error {
|
||||
func watchRunDbMaintenance(c *fiber.Ctx) error {
|
||||
if err := sec.EnsureGrantedPerm(c, "AdminOperateWatchTower", true); err != nil {
|
||||
return err
|
||||
}
|
||||
|
Reference in New Issue
Block a user