INNER CODE UNIT · Go
handleSignals
alexei-led/pumba · cmd/main.go:103
func handleSignals() context.Context {
// Graceful shut-down on SIGINT/SIGTERM
sig := make(chan os.Signal, 1)
signal.Notify(sig, syscall.SIGINT, syscall.SIGTERM)
// create cancelable context
ctx, cancel := context.WithCancel(context.Background())
go func() {
defer cancel()
sid := <-sig
log.Debugf("Received signal: %d\n", sid)
log.Debug("Canceling running chaos commands ...")
log.Debug("Gracefully exiting after some cleanup ...")
}()
return ctx
}