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 <shubham4443@gmail.com> Signed-off-by: Shubham Nazare <shubham4443@gmail.com>
This commit is contained in:
+11
-10
@@ -61,14 +61,12 @@ func (ws *TimerSync) AddUpdateTimeTrigger(timeTrigger *fv1.TimeTrigger) {
|
|||||||
ws.logger.Debug("cron event")
|
ws.logger.Debug("cron event")
|
||||||
|
|
||||||
if item, ok := ws.timer.triggers[crd.CacheKeyUID(&timeTrigger.ObjectMeta)]; ok {
|
if item, ok := ws.timer.triggers[crd.CacheKeyUID(&timeTrigger.ObjectMeta)]; ok {
|
||||||
if item.trigger.Spec.Cron != timeTrigger.Spec.Cron {
|
if item.cron != nil {
|
||||||
if item.cron != nil {
|
item.cron.Stop()
|
||||||
item.cron.Stop()
|
|
||||||
}
|
|
||||||
item.trigger = *timeTrigger
|
|
||||||
item.cron = ws.timer.newCron(*timeTrigger)
|
|
||||||
logger.Debug("cron updated")
|
|
||||||
}
|
}
|
||||||
|
item.trigger = *timeTrigger
|
||||||
|
item.cron = ws.timer.newCron(*timeTrigger)
|
||||||
|
logger.Debug("cron updated")
|
||||||
} else {
|
} else {
|
||||||
ws.timer.triggers[crd.CacheKeyUID(&timeTrigger.ObjectMeta)] = &timerTriggerWithCron{
|
ws.timer.triggers[crd.CacheKeyUID(&timeTrigger.ObjectMeta)] = &timerTriggerWithCron{
|
||||||
trigger: *timeTrigger,
|
trigger: *timeTrigger,
|
||||||
@@ -98,9 +96,12 @@ func (ws *TimerSync) TimeTriggerEventHandlers(ctx context.Context) {
|
|||||||
timeTrigger := obj.(*fv1.TimeTrigger)
|
timeTrigger := obj.(*fv1.TimeTrigger)
|
||||||
ws.AddUpdateTimeTrigger(timeTrigger)
|
ws.AddUpdateTimeTrigger(timeTrigger)
|
||||||
},
|
},
|
||||||
UpdateFunc: func(_ interface{}, obj interface{}) {
|
UpdateFunc: func(oldObj interface{}, newObj interface{}) {
|
||||||
timeTrigger := obj.(*fv1.TimeTrigger)
|
oldTimeTrigger := oldObj.(*fv1.TimeTrigger)
|
||||||
ws.AddUpdateTimeTrigger(timeTrigger)
|
newTimeTrigger := newObj.(*fv1.TimeTrigger)
|
||||||
|
if oldTimeTrigger.ObjectMeta.ResourceVersion != newTimeTrigger.ObjectMeta.ResourceVersion {
|
||||||
|
ws.AddUpdateTimeTrigger(newTimeTrigger)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
DeleteFunc: func(obj interface{}) {
|
DeleteFunc: func(obj interface{}) {
|
||||||
timeTrigger := obj.(*fv1.TimeTrigger)
|
timeTrigger := obj.(*fv1.TimeTrigger)
|
||||||
|
|||||||
Reference in New Issue
Block a user