45 lines
1.2 KiB
Go
45 lines
1.2 KiB
Go
package control
|
|
|
|
import (
|
|
"encoding/json"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"kumoly.io/kumoly/app/auth"
|
|
"kumoly.io/kumoly/app/server"
|
|
"kumoly.io/kumoly/app/system"
|
|
"kumoly.io/kumoly/app/task"
|
|
)
|
|
|
|
type Service struct{}
|
|
|
|
func (srv Service) GetName() string { return "ctrl.Service" }
|
|
func (srv Service) GetDependencies() []string { return []string{"server.Service", "auth.Auth"} }
|
|
func (srv Service) IsService() bool { return true }
|
|
func (srv Service) Init() error { return nil }
|
|
func (srv Service) Main() error { return nil }
|
|
func (srv Service) Del() {}
|
|
func (srv Service) Health() error { return nil }
|
|
|
|
func (srv Service) Load() error {
|
|
ctlAPI := server.API.Group("ctrl")
|
|
ctlAPI.GET("prof", auth.ACAdmin(), func(c *gin.Context) {
|
|
server.OK(c, system.GetProfile())
|
|
})
|
|
ctlAPI.GET("config", auth.ACAdmin(), func(c *gin.Context) {
|
|
conf, err := system.ConfigShow("json")
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
data := map[string]interface{}{}
|
|
if err := json.Unmarshal([]byte(conf), data); err != nil {
|
|
panic(err)
|
|
}
|
|
server.OK(c, data)
|
|
})
|
|
|
|
ctlAPI.GET("tasks", auth.ACAdmin(), func(c *gin.Context) {
|
|
server.OK(c, task.GetProfile())
|
|
})
|
|
return nil
|
|
}
|