diff --git a/cmd/activator/main.go b/cmd/activator/main.go index f59f4e446f..83aa3c8a23 100644 --- a/cmd/activator/main.go +++ b/cmd/activator/main.go @@ -24,6 +24,7 @@ import ( "os/signal" "strconv" "strings" + "syscall" "time" "github.com/cortexlabs/cortex/pkg/activator" @@ -167,14 +168,13 @@ func main() { } sigint := make(chan os.Signal, 1) - signal.Notify(sigint, os.Interrupt) + signal.Notify(sigint, os.Interrupt, syscall.SIGTERM) select { case err = <-errCh: exit(log, err, "failed to start activator server") case <-sigint: - // We received an interrupt signal, shut down. - log.Info("Received TERM signal, handling a graceful shutdown...") + log.Info("Received INT or TERM signal, handling a graceful shutdown...") for name, server := range servers { log.Infof("Shutting down %s server", name) diff --git a/cmd/autoscaler/main.go b/cmd/autoscaler/main.go index 71e8bd034e..ff2a66c1d6 100644 --- a/cmd/autoscaler/main.go +++ b/cmd/autoscaler/main.go @@ -25,6 +25,7 @@ import ( "os/signal" "strconv" "strings" + "syscall" "time" "github.com/cortexlabs/cortex/pkg/autoscaler" @@ -225,14 +226,13 @@ func main() { }() sigint := make(chan os.Signal, 1) - signal.Notify(sigint, os.Interrupt) + signal.Notify(sigint, os.Interrupt, syscall.SIGTERM) select { case err = <-errCh: exit(log, err, "failed to start autoscaler server") case <-sigint: - // We received an interrupt signal, shut down. - log.Info("Received TERM signal, handling a graceful shutdown...") + log.Info("Received INT or TERM signal, handling a graceful shutdown...") log.Info("Shutting down server") if err = server.Shutdown(context.Background()); err != nil { // Error from closing listeners, or context timeout: diff --git a/cmd/dequeuer/main.go b/cmd/dequeuer/main.go index 8bd6a1641d..c5402f0283 100644 --- a/cmd/dequeuer/main.go +++ b/cmd/dequeuer/main.go @@ -23,6 +23,7 @@ import ( "os" "os/signal" "strconv" + "syscall" "github.com/DataDog/datadog-go/statsd" "github.com/cortexlabs/cortex/pkg/consts" @@ -210,7 +211,7 @@ func main() { }() sigint := make(chan os.Signal, 1) - signal.Notify(sigint, os.Interrupt) + signal.Notify(sigint, os.Interrupt, syscall.SIGTERM) sqsDequeuer, err := dequeuer.NewSQSDequeuer(dequeuerConfig, awsClient, log) if err != nil { @@ -239,7 +240,7 @@ func main() { case err = <-errCh: exit(log, err, "error during message dequeueing or error from admin server") case <-sigint: - log.Info("Received TERM signal, handling a graceful shutdown...") + log.Info("Received INT or TERM signal, handling a graceful shutdown...") sqsDequeuer.Shutdown() log.Info("Shutdown complete, exiting...") } diff --git a/cmd/proxy/main.go b/cmd/proxy/main.go index c2f361800c..ff2af48204 100644 --- a/cmd/proxy/main.go +++ b/cmd/proxy/main.go @@ -25,6 +25,7 @@ import ( "os" "os/signal" "strconv" + "syscall" "time" "github.com/cortexlabs/cortex/pkg/lib/aws" @@ -167,14 +168,13 @@ func main() { } sigint := make(chan os.Signal, 1) - signal.Notify(sigint, os.Interrupt) + signal.Notify(sigint, os.Interrupt, syscall.SIGTERM) select { case err = <-errCh: exit(log, errors.Wrap(err, "failed to start proxy server")) case <-sigint: - // We received an interrupt signal, shut down. - log.Info("Received TERM signal, handling a graceful shutdown...") + log.Info("Received INT or TERM signal, handling a graceful shutdown...") for name, server := range servers { log.Infof("Shutting down %s server", name)