+ // Start signals monitoring routine
+ MonitorSignals()
+
+ // Default callback to handle interrupt signal
+ // Maybe be overwritten by some subcommand (eg. targets commands)
+ err := OnSignals(func(sig os.Signal) {
+ Log.Debugf("Send signal %v (from main)", sig)
+ if IsInterruptSignal(sig) {
+ err := cli.NewExitError("Interrupted\n", int(syscall.EINTR))
+ cli.HandleExitCoder(err)
+ }
+ })
+ if err != nil {
+ cli.NewExitError(err.Error(), 1)
+ return
+ }
+
+ // Run the cli app