From 7d084e30490b9cee527ad062050bcf2e2e1a8eca Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Sun, 30 Aug 2020 09:54:33 -0700 Subject: [PATCH] Correctly return the suspension status of the server --- installer/installer.go | 6 +++--- router/router_server.go | 16 +++++++++++----- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/installer/installer.go b/installer/installer.go index ce4b2f0..63b9047 100644 --- a/installer/installer.go +++ b/installer/installer.go @@ -27,9 +27,9 @@ func New(data []byte) (*Installer, error) { } cfg := &server.Configuration{ - Uuid: getString(data, "uuid"), - Suspended: false, - Invocation: getString(data, "invocation"), + Uuid: getString(data, "uuid"), + Suspended: false, + Invocation: getString(data, "invocation"), SkipEggScripts: getBoolean(data, "skip_egg_scripts"), Build: environment.Limits{ MemoryLimit: getInt(data, "build", "memory"), diff --git a/router/router_server.go b/router/router_server.go index ca77e43..9b5e147 100644 --- a/router/router_server.go +++ b/router/router_server.go @@ -12,13 +12,19 @@ import ( "strconv" ) +type serverProcData struct { + server.ResourceUsage + Suspended bool `json:"suspended"` +} + // Returns a single server from the collection of servers. func getServer(c *gin.Context) { s := GetServer(c.Param("server")) - p := *s.Proc() - - c.JSON(http.StatusOK, p) + c.JSON(http.StatusOK, serverProcData{ + ResourceUsage: *s.Proc(), + Suspended: s.IsSuspended(), + }) } // Returns the logs for a given server instance. @@ -50,7 +56,7 @@ func getServerLogs(c *gin.Context) { func postServerPower(c *gin.Context) { s := GetServer(c.Param("server")) - var data struct{ + var data struct { Action server.PowerAction `json:"action"` } @@ -208,7 +214,7 @@ func deleteServer(c *gin.Context) { go func(p string) { if err := os.RemoveAll(p); err != nil { log.WithFields(log.Fields{ - "path": p, + "path": p, "error": errors.WithStack(err), }).Warn("failed to remove server files during deletion process") }