mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-10-29 17:58:36 +08:00
添加region driver
This commit is contained in:
@@ -84,6 +84,22 @@ func (region *SFakeOnPremiseRegion) GetILoadBalancers() ([]ICloudLoadbalancer, e
|
||||
return nil, ErrNotSupported
|
||||
}
|
||||
|
||||
func (region *SFakeOnPremiseRegion) GetILoadBalancerById(loadbalancerId string) (ICloudLoadbalancer, error) {
|
||||
return nil, ErrNotSupported
|
||||
}
|
||||
|
||||
func (region *SFakeOnPremiseRegion) GetILoadBalancerAclById(aclId string) (ICloudLoadbalancerAcl, error) {
|
||||
return nil, ErrNotSupported
|
||||
}
|
||||
|
||||
func (region *SFakeOnPremiseRegion) GetILoadBalancerCertificateById(certId string) (ICloudLoadbalancerCertificate, error) {
|
||||
return nil, ErrNotSupported
|
||||
}
|
||||
|
||||
func (region *SFakeOnPremiseRegion) CreateILoadBalancerCertificate(name string, privateKey, certificate string) (ICloudLoadbalancerCertificate, error) {
|
||||
return nil, ErrNotImplemented
|
||||
}
|
||||
|
||||
func (region *SFakeOnPremiseRegion) GetILoadbalancerAcls() ([]ICloudLoadbalancerAcl, error) {
|
||||
return nil, ErrNotSupported
|
||||
}
|
||||
@@ -91,3 +107,11 @@ func (region *SFakeOnPremiseRegion) GetILoadbalancerAcls() ([]ICloudLoadbalancer
|
||||
func (region *SFakeOnPremiseRegion) GetILoadbalancerCertificates() ([]ICloudLoadbalancerCertificate, error) {
|
||||
return nil, ErrNotSupported
|
||||
}
|
||||
|
||||
func (region *SFakeOnPremiseRegion) CreateILoadBalancer(loadbalancer *SLoadbalancer) (ICloudLoadbalancer, error) {
|
||||
return nil, ErrNotSupported
|
||||
}
|
||||
|
||||
func (region *SFakeOnPremiseRegion) CreateILoadBalancerAcl(acl *SLoadbalancerAccessControlList) (ICloudLoadbalancerAcl, error) {
|
||||
return nil, ErrNotSupported
|
||||
}
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
package cloudprovider
|
||||
|
||||
import "yunion.io/x/onecloud/pkg/util/billing"
|
||||
|
||||
type SLoadbalancer struct {
|
||||
Name string
|
||||
ZoneID string
|
||||
VpcID string
|
||||
NetworkID string
|
||||
Address string
|
||||
AddressType string
|
||||
LoadbalancerSpec string
|
||||
ChargeType string
|
||||
Bandwidth int
|
||||
billingCycle *billing.SBillingCycle
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package cloudprovider
|
||||
|
||||
type SLoadbalancerAccessControlListEntry struct {
|
||||
CIDR string
|
||||
Comment string
|
||||
}
|
||||
|
||||
type SLoadbalancerAccessControlList struct {
|
||||
Name string
|
||||
Entrys []SLoadbalancerAccessControlListEntry
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package cloudprovider
|
||||
|
||||
type SLoadbalancerBackend struct {
|
||||
Index int
|
||||
Weight int
|
||||
Port int
|
||||
ID string
|
||||
Name string
|
||||
ExternalID string
|
||||
BackendType string
|
||||
BackendRole string
|
||||
Address string
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package cloudprovider
|
||||
|
||||
type SLoadbalancerListener struct {
|
||||
Name string
|
||||
LoadbalancerID string
|
||||
ListenerType string
|
||||
ListenerPort int
|
||||
BackendGroupID string
|
||||
Scheduler string
|
||||
AccessControlListStatus string
|
||||
AccessControlListType string
|
||||
AccessControlListID string
|
||||
EnableHTTP2 bool
|
||||
CertificateID string
|
||||
}
|
||||
@@ -66,6 +66,14 @@ type ICloudRegion interface {
|
||||
GetILoadbalancerAcls() ([]ICloudLoadbalancerAcl, error)
|
||||
GetILoadbalancerCertificates() ([]ICloudLoadbalancerCertificate, error)
|
||||
|
||||
GetILoadBalancerById(loadbalancerId string) (ICloudLoadbalancer, error)
|
||||
GetILoadBalancerAclById(aclId string) (ICloudLoadbalancerAcl, error)
|
||||
GetILoadBalancerCertificateById(certId string) (ICloudLoadbalancerCertificate, error)
|
||||
|
||||
CreateILoadBalancer(loadbalancer *SLoadbalancer) (ICloudLoadbalancer, error)
|
||||
CreateILoadBalancerAcl(acl *SLoadbalancerAccessControlList) (ICloudLoadbalancerAcl, error)
|
||||
CreateILoadBalancerCertificate(name string, privateKey, certificate string) (ICloudLoadbalancerCertificate, error)
|
||||
|
||||
GetProvider() string
|
||||
}
|
||||
|
||||
@@ -400,9 +408,16 @@ type ICloudLoadbalancer interface {
|
||||
GetNetworkId() string
|
||||
GetVpcId() string
|
||||
GetZoneId() string
|
||||
GetLoadbalancerSpec() string
|
||||
GetChargeType() string
|
||||
|
||||
Delete() error
|
||||
|
||||
GetILoadbalancerListeners() ([]ICloudLoadbalancerListener, error)
|
||||
GetILoadbalancerBackendGroups() ([]ICloudLoadbalancerBackendGroup, error)
|
||||
|
||||
CreateILoadBalancerBackendGroup(name string, groupType string, backends []SLoadbalancerBackend) (ICloudLoadbalancerBackendGroup, error)
|
||||
GetILoadbalancerBackendGroupById(groupId string) (ICloudLoadbalancerBackendGroup, error)
|
||||
}
|
||||
|
||||
type ICloudLoadbalancerListener interface {
|
||||
@@ -459,6 +474,11 @@ type ICloudLoadbalancerBackendGroup interface {
|
||||
IsDefault() bool
|
||||
GetType() string
|
||||
GetILoadbalancerBackends() ([]ICloudLoadbalancerBackend, error)
|
||||
AddBackendServer(serverId string, weight int, port int) (ICloudLoadbalancerBackend, error)
|
||||
RemoveBackendServer(serverId string) error
|
||||
|
||||
Delete() error
|
||||
Sync(name string) error
|
||||
}
|
||||
|
||||
type ICloudLoadbalancerBackend interface {
|
||||
@@ -474,6 +494,9 @@ type ICloudLoadbalancerBackend interface {
|
||||
type ICloudLoadbalancerCertificate interface {
|
||||
ICloudResource
|
||||
|
||||
Sync(name, privateKey, publickKey string) error
|
||||
Delete() error
|
||||
|
||||
GetCommonName() string
|
||||
GetSubjectAlternativeNames() string
|
||||
GetFingerprint() string // return value format: <algo>:<fingerprint>,比如sha1:7454a14fdb8ae1ea8b2f72e458a24a76bd23ec19
|
||||
@@ -495,4 +518,5 @@ type ICloudLoadbalancerAcl interface {
|
||||
// }
|
||||
// ]
|
||||
GetAclEntries() *jsonutils.JSONArray
|
||||
Delete() error
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user