From 69470a68d0a97b2b9bc45828e412e41aaa837841 Mon Sep 17 00:00:00 2001 From: Shubham Nazare Date: Wed, 28 Dec 2022 14:12:19 +0530 Subject: [PATCH] Fix issue with updating timetrigger without --cron flag (#2677) * Fix issue with updating time trigger without --cron flag * Add check with ResourceVersion * Change in UpdateFunc Signed-off-by: Shubham Nazare Signed-off-by: Shubham Nazare --- pkg/timer/timerSync.go | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/pkg/timer/timerSync.go b/pkg/timer/timerSync.go index 3165c9df..a18cfa79 100644 --- a/pkg/timer/timerSync.go +++ b/pkg/timer/timerSync.go @@ -61,14 +61,12 @@ func (ws *TimerSync) AddUpdateTimeTrigger(timeTrigger *fv1.TimeTrigger) { ws.logger.Debug("cron event") if item, ok := ws.timer.triggers[crd.CacheKeyUID(&timeTrigger.ObjectMeta)]; ok { - if item.trigger.Spec.Cron != timeTrigger.Spec.Cron { - if item.cron != nil { - item.cron.Stop() - } - item.trigger = *timeTrigger - item.cron = ws.timer.newCron(*timeTrigger) - logger.Debug("cron updated") + if item.cron != nil { + item.cron.Stop() } + item.trigger = *timeTrigger + item.cron = ws.timer.newCron(*timeTrigger) + logger.Debug("cron updated") } else { ws.timer.triggers[crd.CacheKeyUID(&timeTrigger.ObjectMeta)] = &timerTriggerWithCron{ trigger: *timeTrigger, @@ -98,9 +96,12 @@ func (ws *TimerSync) TimeTriggerEventHandlers(ctx context.Context) { timeTrigger := obj.(*fv1.TimeTrigger) ws.AddUpdateTimeTrigger(timeTrigger) }, - UpdateFunc: func(_ interface{}, obj interface{}) { - timeTrigger := obj.(*fv1.TimeTrigger) - ws.AddUpdateTimeTrigger(timeTrigger) + UpdateFunc: func(oldObj interface{}, newObj interface{}) { + oldTimeTrigger := oldObj.(*fv1.TimeTrigger) + newTimeTrigger := newObj.(*fv1.TimeTrigger) + if oldTimeTrigger.ObjectMeta.ResourceVersion != newTimeTrigger.ObjectMeta.ResourceVersion { + ws.AddUpdateTimeTrigger(newTimeTrigger) + } }, DeleteFunc: func(obj interface{}) { timeTrigger := obj.(*fv1.TimeTrigger)