@@ -122,7 +122,7 @@ func (c *Controller) handleAddOvnEip(key string) error {
122
122
}
123
123
if cachedEip .Spec .Type != util .OvnEipTypeLSP {
124
124
// node ext gw use lsp eip, has a nic on gw node, so left node to make it ready
125
- if err = c .patchOvnEipStatus (key , true ); err != nil {
125
+ if err = c .patchOvnEipStatus (key , true , true ); err != nil {
126
126
klog .Errorf ("failed to patch ovn eip %s: %v" , key , err )
127
127
return err
128
128
}
@@ -193,7 +193,7 @@ func (c *Controller) handleResetOvnEip(key string) error {
193
193
return nil
194
194
}
195
195
klog .Infof ("handle reset ovn eip %s" , cachedEip .Name )
196
- if err := c .patchOvnEipStatus (key , true ); err != nil {
196
+ if err := c .patchOvnEipStatus (key , true , false ); err != nil {
197
197
klog .Errorf ("failed to reset nat for eip %s, %v" , key , err )
198
198
return err
199
199
}
@@ -364,17 +364,19 @@ func (c *Controller) createOrUpdateOvnEipCR(key, subnet, v4ip, v6ip, mac, usageT
364
364
return nil
365
365
}
366
366
367
- func (c * Controller ) patchOvnEipStatus (key string , ready bool ) error {
367
+ func (c * Controller ) patchOvnEipStatus (key string , ready bool , change_ready bool ) error {
368
368
cachedOvnEip , err := c .ovnEipsLister .Get (key )
369
369
if err != nil {
370
370
klog .Errorf ("failed to get cached ovn eip '%s', %v" , key , err )
371
371
return err
372
372
}
373
373
ovnEip := cachedOvnEip .DeepCopy ()
374
374
changed := false
375
- if ovnEip .Status .Ready != ready {
376
- ovnEip .Status .Ready = ready
377
- changed = true
375
+ if change_ready {
376
+ if ovnEip .Status .Ready != ready {
377
+ ovnEip .Status .Ready = ready
378
+ changed = true
379
+ }
378
380
}
379
381
if ovnEip .Status .MacAddress == "" {
380
382
// not support change ip
0 commit comments