Skip to content
This repository was archived by the owner on Mar 22, 2018. It is now read-only.

Commit 54e2cdf

Browse files
author
Kubernetes Submit Queue
authored
Merge pull request #48872 from FengyunPan/fix-order
Automatic merge from submit-queue (batch tested with PRs 48890, 46893, 48872, 48896) Fix the order of deletion 1. EnsureLoadBalancer can't delete pool without deleting members, just let EnsureLoadBalancerDeleted do it. 2. Add some friendly error message **Release note**: ```release-note NONE ```
2 parents bad81b7 + 91e3bdc commit 54e2cdf

1 file changed

Lines changed: 8 additions & 14 deletions

File tree

pkg/cloudprovider/providers/openstack/openstack_loadbalancer.go

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1285,7 +1285,7 @@ func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *v1.Service
12851285
LBMethod: lbmethod,
12861286
}).Extract()
12871287
if err != nil {
1288-
return nil, err
1288+
return nil, fmt.Errorf("Error creating pool for openstack load balancer %s: %v", name, err)
12891289
}
12901290

12911291
for _, node := range nodes {
@@ -1300,8 +1300,8 @@ func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *v1.Service
13001300
Address: addr,
13011301
}).Extract()
13021302
if err != nil {
1303-
pools.Delete(lb.network, pool.ID)
1304-
return nil, err
1303+
return nil, fmt.Errorf("Error creating member for the pool(%s) of openstack load balancer %s: %v",
1304+
pool.ID, name, err)
13051305
}
13061306
}
13071307

@@ -1314,15 +1314,13 @@ func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *v1.Service
13141314
MaxRetries: int(lb.opts.MonitorMaxRetries),
13151315
}).Extract()
13161316
if err != nil {
1317-
pools.Delete(lb.network, pool.ID)
1318-
return nil, err
1317+
return nil, fmt.Errorf("Error creating monitor for openstack load balancer %s: %v", name, err)
13191318
}
13201319

13211320
_, err = pools.AssociateMonitor(lb.network, pool.ID, mon.ID).Extract()
13221321
if err != nil {
1323-
monitors.Delete(lb.network, mon.ID)
1324-
pools.Delete(lb.network, pool.ID)
1325-
return nil, err
1322+
return nil, fmt.Errorf("Error associating monitor(%s) with pool(%s) for"+
1323+
"openstack load balancer %s: %v", mon.ID, pool.ID, name, err)
13261324
}
13271325
}
13281326

@@ -1343,11 +1341,7 @@ func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *v1.Service
13431341

13441342
vip, err := vips.Create(lb.network, createOpts).Extract()
13451343
if err != nil {
1346-
if mon != nil {
1347-
monitors.Delete(lb.network, mon.ID)
1348-
}
1349-
pools.Delete(lb.network, pool.ID)
1350-
return nil, err
1344+
return nil, fmt.Errorf("Error creating vip for openstack load balancer %s: %v", name, err)
13511345
}
13521346

13531347
status := &v1.LoadBalancerStatus{}
@@ -1361,7 +1355,7 @@ func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *v1.Service
13611355
}
13621356
floatIP, err := floatingips.Create(lb.network, floatIPOpts).Extract()
13631357
if err != nil {
1364-
return nil, err
1358+
return nil, fmt.Errorf("Error creating floatingip for openstack load balancer %s: %v", name, err)
13651359
}
13661360

13671361
status.Ingress = append(status.Ingress, v1.LoadBalancerIngress{IP: floatIP.FloatingIP})

0 commit comments

Comments
 (0)