Feature/yousong lblis names (#7395)

* apis: compute: move struct defs

* lblisteners: list: show certificate name

* lblisteners: list: show acl name

* lblisteners: remove unused acl_name field
This commit is contained in:
Yousong Zhou
2020-07-31 18:03:05 +08:00
committed by GitHub
parent 1244c170b7
commit d95584b116
8 changed files with 61 additions and 57 deletions
-21
View File
@@ -30,24 +30,3 @@ type CachedLoadbalancerAclListInput struct {
ManagedResourceListInput
LoadbalancerAclFilterListInput
}
type LoadbalancerAclResourceInfo struct {
// 负载均衡ACL名称
Acl string `json:"acl"`
}
type LoadbalancerAclResourceInput struct {
// ACL名称或ID
AclId string `json:"acl_id"`
// swagger:ignore
// Deprecated
Acl string `json:"acl" "yunion:deprecated-by":"acl_id"`
}
type LoadbalancerAclFilterListInput struct {
LoadbalancerAclResourceInput
// 以ACL名称排序
OrderByAcl string `json:"order_by_acl"`
}
@@ -31,24 +31,3 @@ type CachedLoadbalancerCertificateListInput struct {
RegionalFilterListInput
LoadbalancerCertificateFilterListInput
}
type LoadbalancerCertificateResourceInfo struct {
// 负载均衡证书名称
Certificate string `json:"certificate"`
}
type LoadbalancerCertificateResourceInput struct {
// 证书名称或ID
CertificateId string `json:"certificate_id"`
// swagger:ignore
// Deprecated
Certificate string `json:"certificate" "yunion:deprecated-by":"certificate_id"`
}
type LoadbalancerCertificateFilterListInput struct {
LoadbalancerCertificateResourceInput
// 以证书名称排序
OrderByCertificate string `json:"order_by_certificate"`
}
+21
View File
@@ -23,3 +23,24 @@ type LoadbalancerAclDetails struct {
SLoadbalancerAcl
}
type LoadbalancerAclResourceInfo struct {
// 负载均衡ACL名称
Acl string `json:"acl"`
}
type LoadbalancerAclResourceInput struct {
// ACL名称或ID
AclId string `json:"acl_id"`
// swagger:ignore
// Deprecated
Acl string `json:"acl" "yunion:deprecated-by":"acl_id"`
}
type LoadbalancerAclFilterListInput struct {
LoadbalancerAclResourceInput
// 以ACL名称排序
OrderByAcl string `json:"order_by_acl"`
}
@@ -20,3 +20,24 @@ type LoadbalancerCertificateDetails struct {
apis.VirtualResourceDetails
SLoadbalancerCertificate
}
type LoadbalancerCertificateResourceInfo struct {
// 负载均衡证书名称
Certificate string `json:"certificate"`
}
type LoadbalancerCertificateResourceInput struct {
// 证书名称或ID
Certificate string `json:"certificate"`
// swagger:ignore
// Deprecated
CertificateId string `json:"certificate_id" "yunion:deprecated-by":"certificate"`
}
type LoadbalancerCertificateFilterListInput struct {
LoadbalancerCertificateResourceInput
// 以证书名称排序
OrderByCertificate string `json:"order_by_certificate"`
}
+2 -1
View File
@@ -19,11 +19,12 @@ import "yunion.io/x/onecloud/pkg/apis"
type LoadbalancerListenerDetails struct {
apis.VirtualResourceDetails
LoadbalancerResourceInfo
LoadbalancerAclResourceInfo
LoadbalancerCertificateResourceInfo
SLoadbalancerListener
BackendGroup string `json:"backend_group"`
AclName string `json:"acl_name"`
CertificateName string `json:"certificate_name"`
OriginCertificateId string `json:"origin_certificate_id"`
}
@@ -33,7 +33,7 @@ import (
type SLoadbalancerAclResourceBase struct {
// 本地Acl ID
AclId string `width:"128" charset:"ascii" nullable:"false" create:"required" index:"true" list:"user" json:"acl_id"`
AclId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
}
type SLoadbalancerAclResourceBaseManager struct{}
@@ -33,7 +33,7 @@ import (
type SLoadbalancerCertificateResourceBase struct {
// 本地负载均衡证书ID
CertificateId string `width:"36" charset:"ascii" nullable:"false" create:"required" index:"true" list:"user" json:"certificate_id"`
CertificateId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
}
type SLoadbalancerCertificateResourceBaseManager struct{}
+15 -12
View File
@@ -42,7 +42,10 @@ type SLoadbalancerListenerManager struct {
SLoadbalancerLogSkipper
db.SVirtualResourceBaseManager
db.SExternalizedResourceBaseManager
SLoadbalancerResourceBaseManager
SLoadbalancerAclResourceBaseManager
SLoadbalancerCertificateResourceBaseManager
}
var LoadbalancerListenerManager *SLoadbalancerListenerManager
@@ -114,7 +117,8 @@ type SLoadbalancerHTTPRedirect struct {
// - Use certificate for tcp listener
// - Customize ciphers?
type SLoadbalancerHTTPSListener struct {
CertificateId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
SLoadbalancerCertificateResourceBase
CachedCertificateId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
TLSCipherPolicy string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
EnableHttp2 bool `create:"optional" list:"user" update:"user"`
@@ -141,10 +145,10 @@ type SLoadbalancerListener struct {
BackendConnectTimeout int `nullable:"true" list:"user" create:"optional" update:"user"` // 后端连接超时时间
BackendIdleTimeout int `nullable:"true" list:"user" create:"optional" update:"user"` // 后端连接空闲时间
AclStatus string `width:"16" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
AclType string `width:"16" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
AclId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
CachedAclId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
AclStatus string `width:"16" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
AclType string `width:"16" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
SLoadbalancerAclResourceBase `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"`
CachedAclId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional" update:"user"`
SLoadbalancerRateLimiter
@@ -505,11 +509,6 @@ func (lblis *SLoadbalancerListener) getMoreDetails(out api.LoadbalancerListenerD
out.BackendGroup = lbbg.GetName()
}
}
if len(lblis.AclId) > 0 {
if acl := lblis.GetCachedLoadbalancerAcl(); acl != nil {
out.AclName = acl.Name
}
}
if len(lblis.CertificateId) > 0 {
if cert, _ := lblis.GetLoadbalancerCertificate(); cert != nil {
@@ -533,11 +532,15 @@ func (manager *SLoadbalancerListenerManager) FetchCustomizeColumns(
virtRows := manager.SVirtualResourceBaseManager.FetchCustomizeColumns(ctx, userCred, query, objs, fields, isList)
lbRows := manager.SLoadbalancerResourceBaseManager.FetchCustomizeColumns(ctx, userCred, query, objs, fields, isList)
lbaclRows := manager.SLoadbalancerAclResourceBaseManager.FetchCustomizeColumns(ctx, userCred, query, objs, fields, isList)
lbcertRows := manager.SLoadbalancerCertificateResourceBaseManager.FetchCustomizeColumns(ctx, userCred, query, objs, fields, isList)
for i := range rows {
rows[i] = api.LoadbalancerListenerDetails{
VirtualResourceDetails: virtRows[i],
LoadbalancerResourceInfo: lbRows[i],
VirtualResourceDetails: virtRows[i],
LoadbalancerResourceInfo: lbRows[i],
LoadbalancerAclResourceInfo: lbaclRows[i],
LoadbalancerCertificateResourceInfo: lbcertRows[i],
}
rows[i], _ = objs[i].(*SLoadbalancerListener).getMoreDetails(rows[i])
}