mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-09 20:17:41 +00:00
Improve GCE's implementation of UpdateTCPLoadBalancer to only make the
update calls if anything has changed.
This commit is contained in:
parent
6ae8e40d3d
commit
5d9564b1cc
@ -337,27 +337,28 @@ func (gce *GCECloud) UpdateTCPLoadBalancer(name, region string, hosts []string)
|
|||||||
toRemove = append(toRemove, &compute.InstanceReference{link})
|
toRemove = append(toRemove, &compute.InstanceReference{link})
|
||||||
}
|
}
|
||||||
|
|
||||||
add := &compute.TargetPoolsAddInstanceRequest{
|
if len(toAdd) > 0 {
|
||||||
Instances: toAdd,
|
add := &compute.TargetPoolsAddInstanceRequest{Instances: toAdd}
|
||||||
}
|
op, err := gce.service.TargetPools.AddInstance(gce.projectID, region, name, add).Do()
|
||||||
op, err := gce.service.TargetPools.AddInstance(gce.projectID, region, name, add).Do()
|
if err != nil {
|
||||||
if err != nil {
|
return err
|
||||||
return err
|
}
|
||||||
}
|
if err := gce.waitForRegionOp(op, region); err != nil {
|
||||||
err = gce.waitForRegionOp(op, region)
|
return err
|
||||||
if err != nil {
|
}
|
||||||
return err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
rm := &compute.TargetPoolsRemoveInstanceRequest{
|
if len(toRemove) > 0 {
|
||||||
Instances: toRemove,
|
rm := &compute.TargetPoolsRemoveInstanceRequest{Instances: toRemove}
|
||||||
|
op, err := gce.service.TargetPools.RemoveInstance(gce.projectID, region, name, rm).Do()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := gce.waitForRegionOp(op, region); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
op, err = gce.service.TargetPools.RemoveInstance(gce.projectID, region, name, rm).Do()
|
return nil
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
err = gce.waitForRegionOp(op, region)
|
|
||||||
return err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeleteTCPLoadBalancer is an implementation of TCPLoadBalancer.DeleteTCPLoadBalancer.
|
// DeleteTCPLoadBalancer is an implementation of TCPLoadBalancer.DeleteTCPLoadBalancer.
|
||||||
|
Loading…
Reference in New Issue
Block a user