Skip to content

Commit

Permalink
fix: subnet can not delete even if no ip in using (#3621)
Browse files Browse the repository at this point in the history
Signed-off-by: bobz965 <zhangbingbing2_yewu@cmss.chinamobile.com>
  • Loading branch information
bobz965 committed Jan 12, 2024
1 parent 3fec12e commit 7a5c4aa
Showing 1 changed file with 10 additions and 10 deletions.
20 changes: 10 additions & 10 deletions pkg/controller/subnet.go
Original file line number Diff line number Diff line change
Expand Up @@ -507,15 +507,6 @@ func (c *Controller) handleAddOrUpdateSubnet(key string) error {
return err
}

deleted, err := c.handleSubnetFinalizer(subnet)
if err != nil {
klog.Errorf("handle subnet finalizer failed %v", err)
return err
}
if deleted {
return nil
}

if subnet.Spec.LogicalGateway && subnet.Spec.U2OInterconnection {
err = fmt.Errorf("logicalGateway and u2oInterconnection can't be opened at the same time")
klog.Error(err)
Expand Down Expand Up @@ -556,6 +547,10 @@ func (c *Controller) handleAddOrUpdateSubnet(key string) error {
}
}

if err := c.ipam.AddOrUpdateSubnet(subnet.Name, subnet.Spec.CIDRBlock, subnet.Spec.Gateway, subnet.Spec.ExcludeIps); err != nil {
return err
}

if subnet.Spec.Protocol == kubeovnv1.ProtocolDual {
err = calcDualSubnetStatusIP(subnet, c)
} else {
Expand All @@ -566,9 +561,14 @@ func (c *Controller) handleAddOrUpdateSubnet(key string) error {
return err
}

if err := c.ipam.AddOrUpdateSubnet(subnet.Name, subnet.Spec.CIDRBlock, subnet.Spec.Gateway, subnet.Spec.ExcludeIps); err != nil {
deleted, err := c.handleSubnetFinalizer(subnet)
if err != nil {
klog.Errorf("handle subnet finalizer failed %v", err)
return err
}
if deleted {
return nil
}

if subnet.Spec.Vlan != "" && !subnet.Spec.LogicalGateway {
if err := c.reconcileU2OInterconnectionIP(subnet); err != nil {
Expand Down

0 comments on commit 7a5c4aa

Please sign in to comment.