mirror of
https://github.com/kubescape/kubescape.git
synced 2026-02-14 09:59:54 +00:00
Added signal handler for the interrupt signal
- Subscribing to an interrupt signal handler allows graceful shutdown of the program. - Use exit code 130 for interrupt signals. Fixes: https://github.com/kubescape/kubescape/issues/1476 Signed-off-by: VaibhavMalik4187 <vaibhavmalik2018@gmail.com>
This commit is contained in:
18
main.go
18
main.go
@@ -1,11 +1,29 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"os"
|
||||
"os/signal"
|
||||
"syscall"
|
||||
|
||||
logger "github.com/kubescape/go-logger"
|
||||
"github.com/kubescape/kubescape/v3/cmd"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// Capture interrupt signal
|
||||
signalChan := make(chan os.Signal, 1)
|
||||
signal.Notify(signalChan, os.Interrupt, syscall.SIGTERM)
|
||||
|
||||
// Handle interrupt signal
|
||||
go func() {
|
||||
<-signalChan
|
||||
// Perform cleanup or graceful shutdown here
|
||||
logger.L().StopError("Received interrupt signal, exiting...")
|
||||
|
||||
// Exit the program with proper exit code for SIGINT
|
||||
os.Exit(130)
|
||||
}()
|
||||
|
||||
if err := cmd.Execute(); err != nil {
|
||||
logger.L().Fatal(err.Error())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user