Merge pull request #5930 from yousong/automated-cherry-pick-of-#5928-upstream-release-3.1

Automated cherry pick of #5928: lbagent: fend off unexpected resources just in case
This commit is contained in:
Zexi Li
2020-04-23 00:07:15 +08:00
committed by GitHub
2 changed files with 33 additions and 0 deletions
+26
View File
@@ -50,6 +50,10 @@ func (set Loadbalancers) NewModel() models.IVirtualResource {
func (set Loadbalancers) addModelCallback(i models.IVirtualResource) error {
m, _ := i.(*models.Loadbalancer)
if m.ManagerId != "" || m.ExternalId != "" {
log.Errorf("unexpected lb: %#v", m)
return nil
}
set[m.Id] = &Loadbalancer{
Loadbalancer: m,
listeners: LoadbalancerListeners{},
@@ -114,6 +118,10 @@ func (set LoadbalancerListeners) NewModel() models.IVirtualResource {
func (set LoadbalancerListeners) addModelCallback(i models.IVirtualResource) error {
m, _ := i.(*models.LoadbalancerListener)
if m.ManagerId != "" || m.ExternalId != "" || m.LoadbalancerId == "" {
log.Errorf("unexpected lblistener: %#v", m)
return nil
}
set[m.Id] = &LoadbalancerListener{
LoadbalancerListener: m,
rules: LoadbalancerListenerRules{},
@@ -172,6 +180,10 @@ func (set LoadbalancerListenerRules) NewModel() models.IVirtualResource {
func (set LoadbalancerListenerRules) addModelCallback(i models.IVirtualResource) error {
m, _ := i.(*models.LoadbalancerListenerRule)
if m.ManagerId != "" || m.ExternalId != "" || m.ListenerId == "" {
log.Errorf("unexpected lblistenerrule: %#v", m)
return nil
}
set[m.Id] = &LoadbalancerListenerRule{
LoadbalancerListenerRule: m,
}
@@ -225,6 +237,10 @@ func (set LoadbalancerBackendGroups) NewModel() models.IVirtualResource {
func (set LoadbalancerBackendGroups) addModelCallback(i models.IVirtualResource) error {
m, _ := i.(*models.LoadbalancerBackendGroup)
if m.ManagerId != "" || m.ExternalId != "" || m.LoadbalancerId == "" {
log.Errorf("unexpected lbbg: %#v", m)
return nil
}
set[m.Id] = &LoadbalancerBackendGroup{
LoadbalancerBackendGroup: m,
backends: LoadbalancerBackends{},
@@ -264,6 +280,10 @@ func (set LoadbalancerBackends) NewModel() models.IVirtualResource {
func (set LoadbalancerBackends) addModelCallback(i models.IVirtualResource) error {
m, _ := i.(*models.LoadbalancerBackend)
if m.ManagerId != "" || m.ExternalId != "" || m.BackendGroupId == "" {
log.Errorf("unexpected lbb: %#v", m)
return nil
}
set[m.Id] = &LoadbalancerBackend{
LoadbalancerBackend: m,
}
@@ -280,6 +300,9 @@ func (set LoadbalancerAcls) NewModel() models.IVirtualResource {
func (set LoadbalancerAcls) addModelCallback(i models.IVirtualResource) error {
m, _ := i.(*models.LoadbalancerAcl)
if m.ManagerId != "" || m.ExternalId != "" {
return nil
}
set[m.Id] = &LoadbalancerAcl{
LoadbalancerAcl: m,
}
@@ -296,6 +319,9 @@ func (set LoadbalancerCertificates) NewModel() models.IVirtualResource {
func (set LoadbalancerCertificates) addModelCallback(i models.IVirtualResource) error {
m, _ := i.(*models.LoadbalancerCertificate)
if m.ManagerId != "" || m.ExternalId != "" {
return nil
}
set[m.Id] = &LoadbalancerCertificate{
LoadbalancerCertificate: m,
}
+7
View File
@@ -21,6 +21,7 @@ import (
type Loadbalancer struct {
VirtualResource
ManagedResource
ExternalizedResource
EgressMbps int
Address string
@@ -72,6 +73,7 @@ type LoadbalancerHTTPRedirect struct {
type LoadbalancerListener struct {
VirtualResource
ManagedResource
ExternalizedResource
CloudregionId string
LoadbalancerId string
@@ -122,6 +124,7 @@ type LoadbalancerListener struct {
type LoadbalancerListenerRule struct {
VirtualResource
ManagedResource
ExternalizedResource
CloudregionId string
ListenerId string
@@ -137,6 +140,7 @@ type LoadbalancerListenerRule struct {
type LoadbalancerBackendGroup struct {
VirtualResource
ManagedResource
ExternalizedResource
Type string
LoadbalancerId string
@@ -146,6 +150,7 @@ type LoadbalancerBackendGroup struct {
type LoadbalancerBackend struct {
VirtualResource
ManagedResource
ExternalizedResource
CloudregionId string
BackendGroupId string
@@ -168,6 +173,7 @@ type LoadbalancerAclEntries []*LoadbalancerAclEntry
type LoadbalancerAcl struct {
SharableVirtualResource
ManagedResource
ExternalizedResource
AclEntries *LoadbalancerAclEntries
CloudregionId string
@@ -176,6 +182,7 @@ type LoadbalancerAcl struct {
type LoadbalancerCertificate struct {
VirtualResource
ManagedResource
ExternalizedResource
Certificate string
PrivateKey string