Merge pull request #5942 from tb365/automated-cherry-pick-of-#5927-upstream-release-3.2

Automated cherry pick of #5927: remove aws invalid backendgroup
This commit is contained in:
yunion-ci-robot
2020-04-22 23:05:06 +08:00
committed by GitHub
2 changed files with 28 additions and 24 deletions
@@ -229,14 +229,8 @@ func (man *SAwsCachedLbbgManager) SyncLoadbalancerBackendgroups(ctx context.Cont
}
for i := 0; i < len(commondb); i++ {
var elb *SLoadbalancer
elbIds := commonext[i].GetLoadbalancerId()
if err != nil {
syncResult.UpdateError(err)
continue
}
elbId := commonext[i].GetLoadbalancerId()
if len(elbIds) > 0 {
if len(elbId) > 0 {
ielb, err := db.FetchByExternalId(LoadbalancerManager, elbId)
if err == nil {
elb = ielb.(*SLoadbalancer)
@@ -244,10 +238,8 @@ func (man *SAwsCachedLbbgManager) SyncLoadbalancerBackendgroups(ctx context.Cont
}
if elb == nil {
elb = &SLoadbalancer{}
elb.Id = ""
// elb.CloudregionId = region.GetId()
// elb.ManagerId = provider.GetId()
log.Debugf("Aws.SyncLoadbalancerBackendgroups skiped external backendgroup %s", elbId)
continue
}
err = commondb[i].SyncWithCloudLoadbalancerBackendgroup(ctx, userCred, elb, commonext[i], provider.GetOwnerId(), provider)
@@ -264,23 +256,18 @@ func (man *SAwsCachedLbbgManager) SyncLoadbalancerBackendgroups(ctx context.Cont
for i := 0; i < len(added); i++ {
var elb *SLoadbalancer
elbId := added[i].GetLoadbalancerId()
if err != nil {
syncResult.AddError(err)
continue
}
if len(elbId) > 0 {
elb, err = LoadbalancerManager.FetchByExternalId(provider.GetId(), elbId)
if err != nil {
log.Debugf("awsCachedLbbgManager.SyncLoadbalancerBackendgroups %s", err)
syncResult.AddError(err)
continue
}
}
if elb == nil {
elb = &SLoadbalancer{}
elb.Id = ""
// elb.CloudregionId = region.GetId()
// elb.ManagerId = provider.GetId()
log.Debugf("Aws.SyncLoadbalancerBackendgroups skiped external backendgroup %s", elbId)
continue
}
new, err := man.newFromCloudLoadbalancerBackendgroup(ctx, userCred, elb, added[i], syncOwnerId, provider)
@@ -1019,13 +1019,30 @@ func (man *SLoadbalancerBackendGroupManager) initBackendGroupType() error {
return nil
}
/*func (man *SLoadbalancerBackendGroupManager) InitializeData() error {
if err := man.initBackendGroupType(); err != nil {
return err
func (man *SLoadbalancerBackendGroupManager) InitializeData() error {
q := man.Query().IsNullOrEmpty("loadbalancer_id")
lbbgs := make([]SLoadbalancerBackendGroup, 0)
err := db.FetchModelObjects(man, q, &lbbgs)
if err != nil {
return errors.Wrap(err, "SLoadbalancerBackendGroupManager.InitializeData")
}
return man.initBackendGroupRegion()
for i := range lbbgs {
lbbg := lbbgs[i]
_, err = db.UpdateWithLock(context.Background(), &lbbg, func() error {
lbbg.MarkDelete()
return nil
})
if err != nil {
return errors.Wrap(err, "SLoadbalancerBackendGroupManager.InitializeData.MarkDelete")
}
}
log.Debugf("SLoadbalancerBackendGroupManager.InitializeData removed %d invalid loadbalancer backendgroup.", len(lbbgs))
return nil
}
/*
func (manager *SLoadbalancerBackendGroupManager) initBackendGroupRegion() error {
groups := []SLoadbalancerBackendGroup{}
q := manager.Query()