code: func watchRollbackEvent(w watch.Interface) string {
  	signals := make(chan os.Signal, 1)
  	signal.Notify(signals, os.Interrupt, os.Kill, syscall.SIGTERM)
  	for {
  		select {
  		case event, ok := <-w.ResultChan():
  			if !ok {
  				return ""
  			}
  			obj, ok := event.Object.(*api.Event)
  			if !ok {
  				w.Stop()
  				return ""
  			}
  			isRollback, result := isRollbackEvent(obj)
  			if isRollback {
  				w.Stop()
  				return result
  			}
  		case <-signals:
  			w.Stop()
  		}
  	}
  }
docs: // watchRollbackEvent watches for rollback events and returns rollback result