Safety logic check, don't try to stop a stopped server when suspending; closes #2318

Couldn't actually reproduce this, but a good sanity check I guess.
This commit is contained in:
Dane Everitt 2020-09-10 20:16:16 -07:00
parent 0cd8dc2b5f
commit c415abf971
No known key found for this signature in database
GPG Key ID: EEA66103B3D71F53

View File

@ -143,12 +143,14 @@ func (s *Server) SyncWithEnvironment() {
} else {
// Checks if the server is now in a suspended state. If so and a server process is currently running it
// will be gracefully stopped (and terminated if it refuses to stop).
s.Log().Info("server suspended with running process state, terminating now")
if s.GetState() != environment.ProcessOfflineState {
s.Log().Info("server suspended with running process state, terminating now")
go func(s *Server) {
if err := s.Environment.WaitForStop(60, true); err != nil {
s.Log().WithField("error", err).Warn("failed to terminate server environment after suspension")
}
}(s)
go func(s *Server) {
if err := s.Environment.WaitForStop(60, true); err != nil {
s.Log().WithField("error", err).Warn("failed to terminate server environment after suspension")
}
}(s)
}
}
}