mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-09-24 16:03:43 +08:00
Merge pull request #12062 from tb365/bugfix/tb-bugfix-083101
Bugfix/tb bugfix 083101
This commit is contained in:
@@ -37,7 +37,7 @@ func init() {
|
||||
cmd.CreateWithKeyword("create-aws", &options.SAWSCloudAccountCreateOptions{})
|
||||
cmd.CreateWithKeyword("create-openstack", &options.SOpenStackCloudAccountCreateOptions{})
|
||||
cmd.CreateWithKeyword("create-huawei", &options.SHuaweiCloudAccountCreateOptions{})
|
||||
cmd.CreateWithKeyword("create-huaweicloudstack", &options.SHuaweiCloudStackAccountCreateOptions{})
|
||||
cmd.CreateWithKeyword("create-hcso", &options.SHCSOAccountCreateOptions{})
|
||||
cmd.CreateWithKeyword("create-ucloud", &options.SUcloudCloudAccountCreateOptions{})
|
||||
cmd.CreateWithKeyword("create-zstack", &options.SZStackCloudAccountCreateOptions{})
|
||||
cmd.CreateWithKeyword("create-s3", &options.SS3CloudAccountCreateOptions{})
|
||||
@@ -57,7 +57,7 @@ func init() {
|
||||
cmd.UpdateWithKeyword("update-aws", &options.SAWSCloudAccountUpdateOptions{})
|
||||
cmd.UpdateWithKeyword("update-openstack", &options.SOpenStackCloudAccountUpdateOptions{})
|
||||
cmd.UpdateWithKeyword("update-huawei", &options.SHuaweiCloudAccountUpdateOptions{})
|
||||
cmd.UpdateWithKeyword("update-huaweicloudstack", &options.SHuaweiCloudStackAccountUpdateOptions{})
|
||||
cmd.UpdateWithKeyword("update-hcso", &options.SHCSOAccountUpdateOptions{})
|
||||
cmd.UpdateWithKeyword("update-ucloud", &options.SUcloudCloudAccountUpdateOptions{})
|
||||
cmd.UpdateWithKeyword("update-zstack", &options.SZStackCloudAccountUpdateOptions{})
|
||||
cmd.UpdateWithKeyword("update-s3", &options.SS3CloudAccountUpdateOptions{})
|
||||
@@ -75,7 +75,7 @@ func init() {
|
||||
cmd.PerformWithKeyword("update-credential-aws", "update-credential", &options.SAWSCloudAccountUpdateCredentialOptions{})
|
||||
cmd.PerformWithKeyword("update-credential-openstack", "update-credential", &options.SOpenStackCloudAccountUpdateCredentialOptions{})
|
||||
cmd.PerformWithKeyword("update-credential-huawei", "update-credential", &options.SHuaweiCloudAccountUpdateCredentialOptions{})
|
||||
cmd.PerformWithKeyword("update-credential-huaweicloudstack", "update-credential", &options.SHuaweiCloudStackAccountUpdateCredentialOptions{})
|
||||
cmd.PerformWithKeyword("update-credential-hcso", "update-credential", &options.SHCSOAccountUpdateCredentialOptions{})
|
||||
cmd.PerformWithKeyword("update-credential-ucloud", "update-credential", &options.SUcloudCloudAccountUpdateCredentialOptions{})
|
||||
cmd.PerformWithKeyword("update-credential-zstack", "update-credential", &options.SZStackCloudAccountUpdateCredentialOptions{})
|
||||
cmd.PerformWithKeyword("update-credential-s3", "update-credential", &options.SS3CloudAccountUpdateCredentialOptions{})
|
||||
|
||||
@@ -21,13 +21,13 @@ import (
|
||||
"yunion.io/x/structarg"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/cloudprovider"
|
||||
huawei "yunion.io/x/onecloud/pkg/multicloud/huaweistack"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/huaweistack/shell"
|
||||
huawei "yunion.io/x/onecloud/pkg/multicloud/hcso"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/hcso/shell"
|
||||
"yunion.io/x/onecloud/pkg/util/shellutils"
|
||||
)
|
||||
|
||||
type BaseOptions struct {
|
||||
cloudprovider.SHuaweiCloudStackEndpoints
|
||||
cloudprovider.SHCSOEndpoints
|
||||
Help bool `help:"Show help" default:"false"`
|
||||
Debug bool `help:"Show debug" default:"false"`
|
||||
AccessKey string `help:"Access key" default:"$HUAWEI_ACCESS_KEY" metavar:"HUAWEI_ACCESS_KEY"`
|
||||
@@ -92,7 +92,7 @@ func newClient(options *BaseOptions) (*huawei.SRegion, error) {
|
||||
options.AccessKey,
|
||||
options.Secret,
|
||||
options.ProjectId,
|
||||
&options.SHuaweiCloudStackEndpoints,
|
||||
&options.SHCSOEndpoints,
|
||||
).Debug(options.Debug),
|
||||
)
|
||||
if err != nil {
|
||||
@@ -36,23 +36,23 @@ const (
|
||||
CLOUD_PROVIDER_SYNC_STATUS_IDLE = "idle"
|
||||
CLOUD_PROVIDER_SYNC_STATUS_ERROR = "error"
|
||||
|
||||
CLOUD_PROVIDER_ONECLOUD = "OneCloud"
|
||||
CLOUD_PROVIDER_VMWARE = "VMware"
|
||||
CLOUD_PROVIDER_ALIYUN = "Aliyun"
|
||||
CLOUD_PROVIDER_APSARA = "Apsara"
|
||||
CLOUD_PROVIDER_QCLOUD = "Qcloud"
|
||||
CLOUD_PROVIDER_AZURE = "Azure"
|
||||
CLOUD_PROVIDER_AWS = "Aws"
|
||||
CLOUD_PROVIDER_HUAWEI = "Huawei"
|
||||
CLOUD_PROVIDER_HUAWEI_CLOUD_STACK = "HuaweiCloudStack"
|
||||
CLOUD_PROVIDER_OPENSTACK = "OpenStack"
|
||||
CLOUD_PROVIDER_UCLOUD = "Ucloud"
|
||||
CLOUD_PROVIDER_ZSTACK = "ZStack"
|
||||
CLOUD_PROVIDER_GOOGLE = "Google"
|
||||
CLOUD_PROVIDER_CTYUN = "Ctyun"
|
||||
CLOUD_PROVIDER_ECLOUD = "Ecloud"
|
||||
CLOUD_PROVIDER_JDCLOUD = "JDcloud"
|
||||
CLOUD_PROVIDER_CLOUDPODS = "Cloudpods"
|
||||
CLOUD_PROVIDER_ONECLOUD = "OneCloud"
|
||||
CLOUD_PROVIDER_VMWARE = "VMware"
|
||||
CLOUD_PROVIDER_ALIYUN = "Aliyun"
|
||||
CLOUD_PROVIDER_APSARA = "Apsara"
|
||||
CLOUD_PROVIDER_QCLOUD = "Qcloud"
|
||||
CLOUD_PROVIDER_AZURE = "Azure"
|
||||
CLOUD_PROVIDER_AWS = "Aws"
|
||||
CLOUD_PROVIDER_HUAWEI = "Huawei"
|
||||
CLOUD_PROVIDER_HCSO = "HCSO"
|
||||
CLOUD_PROVIDER_OPENSTACK = "OpenStack"
|
||||
CLOUD_PROVIDER_UCLOUD = "Ucloud"
|
||||
CLOUD_PROVIDER_ZSTACK = "ZStack"
|
||||
CLOUD_PROVIDER_GOOGLE = "Google"
|
||||
CLOUD_PROVIDER_CTYUN = "Ctyun"
|
||||
CLOUD_PROVIDER_ECLOUD = "Ecloud"
|
||||
CLOUD_PROVIDER_JDCLOUD = "JDcloud"
|
||||
CLOUD_PROVIDER_CLOUDPODS = "Cloudpods"
|
||||
|
||||
CLOUD_PROVIDER_GENERICS3 = "S3"
|
||||
CLOUD_PROVIDER_CEPH = "Ceph"
|
||||
@@ -98,7 +98,7 @@ const (
|
||||
var (
|
||||
CLOUD_PROVIDER_VALID_STATUS = []string{CLOUD_PROVIDER_CONNECTED}
|
||||
CLOUD_PROVIDER_VALID_HEALTH_STATUS = []string{CLOUD_PROVIDER_HEALTH_NORMAL, CLOUD_PROVIDER_HEALTH_NO_PERMISSION}
|
||||
PRIVATE_CLOUD_PROVIDERS = []string{CLOUD_PROVIDER_ZSTACK, CLOUD_PROVIDER_OPENSTACK, CLOUD_PROVIDER_APSARA, CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}
|
||||
PRIVATE_CLOUD_PROVIDERS = []string{CLOUD_PROVIDER_ZSTACK, CLOUD_PROVIDER_OPENSTACK, CLOUD_PROVIDER_APSARA, CLOUD_PROVIDER_HCSO}
|
||||
|
||||
CLOUD_PROVIDERS = []string{
|
||||
CLOUD_PROVIDER_ONECLOUD,
|
||||
@@ -109,7 +109,7 @@ var (
|
||||
CLOUD_PROVIDER_AZURE,
|
||||
CLOUD_PROVIDER_AWS,
|
||||
CLOUD_PROVIDER_HUAWEI,
|
||||
CLOUD_PROVIDER_HUAWEI_CLOUD_STACK,
|
||||
CLOUD_PROVIDER_HCSO,
|
||||
CLOUD_PROVIDER_OPENSTACK,
|
||||
CLOUD_PROVIDER_UCLOUD,
|
||||
CLOUD_PROVIDER_ZSTACK,
|
||||
@@ -147,8 +147,8 @@ var (
|
||||
CLOUD_PROVIDER_HUAWEI: []string{
|
||||
HOST_TYPE_HUAWEI,
|
||||
},
|
||||
CLOUD_PROVIDER_HUAWEI_CLOUD_STACK: {
|
||||
HOST_TYPE_HUAWEI_CLOUD_STACK,
|
||||
CLOUD_PROVIDER_HCSO: {
|
||||
HOST_TYPE_HCSO,
|
||||
},
|
||||
CLOUD_PROVIDER_OPENSTACK: []string{
|
||||
HOST_TYPE_OPENSTACK,
|
||||
|
||||
@@ -153,21 +153,21 @@ const (
|
||||
HYPERVISOR_HYPERV = "hyperv"
|
||||
HYPERVISOR_XEN = "xen"
|
||||
|
||||
HYPERVISOR_ALIYUN = "aliyun"
|
||||
HYPERVISOR_APSARA = "apsara"
|
||||
HYPERVISOR_QCLOUD = "qcloud"
|
||||
HYPERVISOR_AZURE = "azure"
|
||||
HYPERVISOR_AWS = "aws"
|
||||
HYPERVISOR_HUAWEI = "huawei"
|
||||
HYPERVISOR_HUAWEI_CLOUD_STACK = "huaweicloudstack"
|
||||
HYPERVISOR_OPENSTACK = "openstack"
|
||||
HYPERVISOR_UCLOUD = "ucloud"
|
||||
HYPERVISOR_ZSTACK = "zstack"
|
||||
HYPERVISOR_GOOGLE = "google"
|
||||
HYPERVISOR_CTYUN = "ctyun"
|
||||
HYPERVISOR_ECLOUD = "ecloud"
|
||||
HYPERVISOR_JDCLOUD = "jdcloud"
|
||||
HYPERVISOR_CLOUDPODS = "cloudpods"
|
||||
HYPERVISOR_ALIYUN = "aliyun"
|
||||
HYPERVISOR_APSARA = "apsara"
|
||||
HYPERVISOR_QCLOUD = "qcloud"
|
||||
HYPERVISOR_AZURE = "azure"
|
||||
HYPERVISOR_AWS = "aws"
|
||||
HYPERVISOR_HUAWEI = "huawei"
|
||||
HYPERVISOR_HCSO = "hcso"
|
||||
HYPERVISOR_OPENSTACK = "openstack"
|
||||
HYPERVISOR_UCLOUD = "ucloud"
|
||||
HYPERVISOR_ZSTACK = "zstack"
|
||||
HYPERVISOR_GOOGLE = "google"
|
||||
HYPERVISOR_CTYUN = "ctyun"
|
||||
HYPERVISOR_ECLOUD = "ecloud"
|
||||
HYPERVISOR_JDCLOUD = "jdcloud"
|
||||
HYPERVISOR_CLOUDPODS = "cloudpods"
|
||||
|
||||
// HYPERVISOR_DEFAULT = HYPERVISOR_KVM
|
||||
HYPERVISOR_DEFAULT = HYPERVISOR_KVM
|
||||
@@ -192,7 +192,7 @@ var HYPERVISORS = []string{
|
||||
HYPERVISOR_AWS,
|
||||
HYPERVISOR_QCLOUD,
|
||||
HYPERVISOR_HUAWEI,
|
||||
HYPERVISOR_HUAWEI_CLOUD_STACK,
|
||||
HYPERVISOR_HCSO,
|
||||
HYPERVISOR_OPENSTACK,
|
||||
HYPERVISOR_UCLOUD,
|
||||
HYPERVISOR_ZSTACK,
|
||||
@@ -227,53 +227,53 @@ var PRIVATE_CLOUD_HYPERVISORS = []string{
|
||||
HYPERVISOR_OPENSTACK,
|
||||
HYPERVISOR_APSARA,
|
||||
HYPERVISOR_CLOUDPODS,
|
||||
HYPERVISOR_HUAWEI_CLOUD_STACK,
|
||||
HYPERVISOR_HCSO,
|
||||
}
|
||||
|
||||
// var HYPERVISORS = []string{HYPERVISOR_ALIYUN}
|
||||
|
||||
var HYPERVISOR_HOSTTYPE = map[string]string{
|
||||
HYPERVISOR_KVM: HOST_TYPE_HYPERVISOR,
|
||||
HYPERVISOR_BAREMETAL: HOST_TYPE_BAREMETAL,
|
||||
HYPERVISOR_ESXI: HOST_TYPE_ESXI,
|
||||
HYPERVISOR_CONTAINER: HOST_TYPE_KUBELET,
|
||||
HYPERVISOR_ALIYUN: HOST_TYPE_ALIYUN,
|
||||
HYPERVISOR_APSARA: HOST_TYPE_APSARA,
|
||||
HYPERVISOR_AZURE: HOST_TYPE_AZURE,
|
||||
HYPERVISOR_AWS: HOST_TYPE_AWS,
|
||||
HYPERVISOR_QCLOUD: HOST_TYPE_QCLOUD,
|
||||
HYPERVISOR_HUAWEI: HOST_TYPE_HUAWEI,
|
||||
HYPERVISOR_HUAWEI_CLOUD_STACK: HOST_TYPE_HUAWEI_CLOUD_STACK,
|
||||
HYPERVISOR_OPENSTACK: HOST_TYPE_OPENSTACK,
|
||||
HYPERVISOR_UCLOUD: HOST_TYPE_UCLOUD,
|
||||
HYPERVISOR_ZSTACK: HOST_TYPE_ZSTACK,
|
||||
HYPERVISOR_GOOGLE: HOST_TYPE_GOOGLE,
|
||||
HYPERVISOR_CTYUN: HOST_TYPE_CTYUN,
|
||||
HYPERVISOR_ECLOUD: HOST_TYPE_ECLOUD,
|
||||
HYPERVISOR_JDCLOUD: HOST_TYPE_JDCLOUD,
|
||||
HYPERVISOR_CLOUDPODS: HOST_TYPE_CLOUDPODS,
|
||||
HYPERVISOR_KVM: HOST_TYPE_HYPERVISOR,
|
||||
HYPERVISOR_BAREMETAL: HOST_TYPE_BAREMETAL,
|
||||
HYPERVISOR_ESXI: HOST_TYPE_ESXI,
|
||||
HYPERVISOR_CONTAINER: HOST_TYPE_KUBELET,
|
||||
HYPERVISOR_ALIYUN: HOST_TYPE_ALIYUN,
|
||||
HYPERVISOR_APSARA: HOST_TYPE_APSARA,
|
||||
HYPERVISOR_AZURE: HOST_TYPE_AZURE,
|
||||
HYPERVISOR_AWS: HOST_TYPE_AWS,
|
||||
HYPERVISOR_QCLOUD: HOST_TYPE_QCLOUD,
|
||||
HYPERVISOR_HUAWEI: HOST_TYPE_HUAWEI,
|
||||
HYPERVISOR_HCSO: HOST_TYPE_HCSO,
|
||||
HYPERVISOR_OPENSTACK: HOST_TYPE_OPENSTACK,
|
||||
HYPERVISOR_UCLOUD: HOST_TYPE_UCLOUD,
|
||||
HYPERVISOR_ZSTACK: HOST_TYPE_ZSTACK,
|
||||
HYPERVISOR_GOOGLE: HOST_TYPE_GOOGLE,
|
||||
HYPERVISOR_CTYUN: HOST_TYPE_CTYUN,
|
||||
HYPERVISOR_ECLOUD: HOST_TYPE_ECLOUD,
|
||||
HYPERVISOR_JDCLOUD: HOST_TYPE_JDCLOUD,
|
||||
HYPERVISOR_CLOUDPODS: HOST_TYPE_CLOUDPODS,
|
||||
}
|
||||
|
||||
var HOSTTYPE_HYPERVISOR = map[string]string{
|
||||
HOST_TYPE_HYPERVISOR: HYPERVISOR_KVM,
|
||||
HOST_TYPE_BAREMETAL: HYPERVISOR_BAREMETAL,
|
||||
HOST_TYPE_ESXI: HYPERVISOR_ESXI,
|
||||
HOST_TYPE_KUBELET: HYPERVISOR_CONTAINER,
|
||||
HOST_TYPE_ALIYUN: HYPERVISOR_ALIYUN,
|
||||
HOST_TYPE_APSARA: HYPERVISOR_APSARA,
|
||||
HOST_TYPE_AZURE: HYPERVISOR_AZURE,
|
||||
HOST_TYPE_AWS: HYPERVISOR_AWS,
|
||||
HOST_TYPE_QCLOUD: HYPERVISOR_QCLOUD,
|
||||
HOST_TYPE_HUAWEI: HYPERVISOR_HUAWEI,
|
||||
HOST_TYPE_HUAWEI_CLOUD_STACK: HYPERVISOR_HUAWEI_CLOUD_STACK,
|
||||
HOST_TYPE_OPENSTACK: HYPERVISOR_OPENSTACK,
|
||||
HOST_TYPE_UCLOUD: HYPERVISOR_UCLOUD,
|
||||
HOST_TYPE_ZSTACK: HYPERVISOR_ZSTACK,
|
||||
HOST_TYPE_GOOGLE: HYPERVISOR_GOOGLE,
|
||||
HOST_TYPE_CTYUN: HYPERVISOR_CTYUN,
|
||||
HOST_TYPE_ECLOUD: HYPERVISOR_ECLOUD,
|
||||
HOST_TYPE_JDCLOUD: HYPERVISOR_JDCLOUD,
|
||||
HOST_TYPE_CLOUDPODS: HYPERVISOR_CLOUDPODS,
|
||||
HOST_TYPE_HYPERVISOR: HYPERVISOR_KVM,
|
||||
HOST_TYPE_BAREMETAL: HYPERVISOR_BAREMETAL,
|
||||
HOST_TYPE_ESXI: HYPERVISOR_ESXI,
|
||||
HOST_TYPE_KUBELET: HYPERVISOR_CONTAINER,
|
||||
HOST_TYPE_ALIYUN: HYPERVISOR_ALIYUN,
|
||||
HOST_TYPE_APSARA: HYPERVISOR_APSARA,
|
||||
HOST_TYPE_AZURE: HYPERVISOR_AZURE,
|
||||
HOST_TYPE_AWS: HYPERVISOR_AWS,
|
||||
HOST_TYPE_QCLOUD: HYPERVISOR_QCLOUD,
|
||||
HOST_TYPE_HUAWEI: HYPERVISOR_HUAWEI,
|
||||
HOST_TYPE_HCSO: HYPERVISOR_HCSO,
|
||||
HOST_TYPE_OPENSTACK: HYPERVISOR_OPENSTACK,
|
||||
HOST_TYPE_UCLOUD: HYPERVISOR_UCLOUD,
|
||||
HOST_TYPE_ZSTACK: HYPERVISOR_ZSTACK,
|
||||
HOST_TYPE_GOOGLE: HYPERVISOR_GOOGLE,
|
||||
HOST_TYPE_CTYUN: HYPERVISOR_CTYUN,
|
||||
HOST_TYPE_ECLOUD: HYPERVISOR_ECLOUD,
|
||||
HOST_TYPE_JDCLOUD: HYPERVISOR_JDCLOUD,
|
||||
HOST_TYPE_CLOUDPODS: HYPERVISOR_CLOUDPODS,
|
||||
}
|
||||
|
||||
const (
|
||||
|
||||
@@ -23,21 +23,21 @@ const (
|
||||
HOST_TYPE_HYPERV = "hyperv" // # Microsoft Hyper-V
|
||||
HOST_TYPE_XEN = "xen" // # XenServer
|
||||
|
||||
HOST_TYPE_ALIYUN = "aliyun"
|
||||
HOST_TYPE_APSARA = "apsara"
|
||||
HOST_TYPE_AWS = "aws"
|
||||
HOST_TYPE_QCLOUD = "qcloud"
|
||||
HOST_TYPE_AZURE = "azure"
|
||||
HOST_TYPE_HUAWEI = "huawei"
|
||||
HOST_TYPE_HUAWEI_CLOUD_STACK = "huaweicloudstack"
|
||||
HOST_TYPE_OPENSTACK = "openstack"
|
||||
HOST_TYPE_UCLOUD = "ucloud"
|
||||
HOST_TYPE_ZSTACK = "zstack"
|
||||
HOST_TYPE_GOOGLE = "google"
|
||||
HOST_TYPE_CTYUN = "ctyun"
|
||||
HOST_TYPE_ECLOUD = "ecloud"
|
||||
HOST_TYPE_JDCLOUD = "jdcloud"
|
||||
HOST_TYPE_CLOUDPODS = "cloudpods"
|
||||
HOST_TYPE_ALIYUN = "aliyun"
|
||||
HOST_TYPE_APSARA = "apsara"
|
||||
HOST_TYPE_AWS = "aws"
|
||||
HOST_TYPE_QCLOUD = "qcloud"
|
||||
HOST_TYPE_AZURE = "azure"
|
||||
HOST_TYPE_HUAWEI = "huawei"
|
||||
HOST_TYPE_HCSO = "hcso"
|
||||
HOST_TYPE_OPENSTACK = "openstack"
|
||||
HOST_TYPE_UCLOUD = "ucloud"
|
||||
HOST_TYPE_ZSTACK = "zstack"
|
||||
HOST_TYPE_GOOGLE = "google"
|
||||
HOST_TYPE_CTYUN = "ctyun"
|
||||
HOST_TYPE_ECLOUD = "ecloud"
|
||||
HOST_TYPE_JDCLOUD = "jdcloud"
|
||||
HOST_TYPE_CLOUDPODS = "cloudpods"
|
||||
|
||||
HOST_TYPE_DEFAULT = HOST_TYPE_HYPERVISOR
|
||||
|
||||
@@ -112,7 +112,7 @@ var HOST_TYPES = []string{
|
||||
HOST_TYPE_AWS,
|
||||
HOST_TYPE_QCLOUD,
|
||||
HOST_TYPE_HUAWEI,
|
||||
HOST_TYPE_HUAWEI_CLOUD_STACK,
|
||||
HOST_TYPE_HCSO,
|
||||
HOST_TYPE_OPENSTACK,
|
||||
HOST_TYPE_UCLOUD,
|
||||
HOST_TYPE_ZSTACK,
|
||||
|
||||
@@ -59,7 +59,7 @@ var (
|
||||
|
||||
REGIONAL_NETWORK_PROVIDERS = []string{
|
||||
CLOUD_PROVIDER_HUAWEI,
|
||||
CLOUD_PROVIDER_HUAWEI_CLOUD_STACK,
|
||||
CLOUD_PROVIDER_HCSO,
|
||||
CLOUD_PROVIDER_CTYUN,
|
||||
CLOUD_PROVIDER_UCLOUD,
|
||||
CLOUD_PROVIDER_GOOGLE,
|
||||
|
||||
@@ -320,7 +320,7 @@ type SCloudproviderDelegate struct {
|
||||
|
||||
Options struct {
|
||||
cloudprovider.SApsaraEndpoints
|
||||
cloudprovider.SHuaweiCloudStackEndpoints
|
||||
cloudprovider.SHCSOEndpoints
|
||||
}
|
||||
|
||||
ProxySetting proxyapi.SProxySetting
|
||||
@@ -337,7 +337,7 @@ func (self *SCloudprovider) GetDelegate() (*SCloudproviderDelegate, error) {
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "result.Unmarshal")
|
||||
}
|
||||
if provider.Provider == api.CLOUD_PROVIDER_APSARA || provider.Provider == api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK {
|
||||
if provider.Provider == api.CLOUD_PROVIDER_APSARA || provider.Provider == api.CLOUD_PROVIDER_HCSO {
|
||||
result, err := modules.Cloudaccounts.Get(s, provider.CloudaccountId, nil)
|
||||
if err != nil {
|
||||
return nil, errors.Wrapf(err, "modules.Cloudaccounts.Get")
|
||||
@@ -408,8 +408,8 @@ func (self *SCloudprovider) GetProvider() (cloudprovider.ICloudProvider, error)
|
||||
|
||||
ProxyFunc: proxyFunc,
|
||||
|
||||
SHuaweiCloudStackEndpoints: delegate.Options.SHuaweiCloudStackEndpoints,
|
||||
SApsaraEndpoints: delegate.Options.SApsaraEndpoints,
|
||||
SHCSOEndpoints: delegate.Options.SHCSOEndpoints,
|
||||
SApsaraEndpoints: delegate.Options.SApsaraEndpoints,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
@@ -355,7 +355,7 @@ func (manager *SCloudaccountManager) newFromICloudaccount(ctx context.Context, u
|
||||
}
|
||||
|
||||
func (self *SCloudaccount) registerHuaweSaml(ctx context.Context) error {
|
||||
if self.Provider != computeapi.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK {
|
||||
if self.Provider != computeapi.CLOUD_PROVIDER_HCSO {
|
||||
return nil
|
||||
}
|
||||
delegate, err := self.getCloudDelegate(ctx)
|
||||
@@ -482,7 +482,7 @@ type SCloudDelegate struct {
|
||||
Brand string
|
||||
|
||||
Options struct {
|
||||
cloudprovider.SHuaweiCloudStackEndpoints
|
||||
cloudprovider.SHCSOEndpoints
|
||||
cloudprovider.SApsaraEndpoints
|
||||
}
|
||||
ProxySetting proxyapi.SProxySetting
|
||||
@@ -568,8 +568,8 @@ func (account *SCloudDelegate) GetProvider() (cloudprovider.ICloudProvider, erro
|
||||
Secret: passwd,
|
||||
ProxyFunc: proxyFunc,
|
||||
|
||||
SApsaraEndpoints: account.Options.SApsaraEndpoints,
|
||||
SHuaweiCloudStackEndpoints: account.Options.SHuaweiCloudStackEndpoints,
|
||||
SApsaraEndpoints: account.Options.SApsaraEndpoints,
|
||||
SHCSOEndpoints: account.Options.SHCSOEndpoints,
|
||||
|
||||
AccountId: account.Id,
|
||||
})
|
||||
|
||||
@@ -45,7 +45,7 @@ func (d *SHuaweiSAMLDriver) GetSpInitiatedLoginData(ctx context.Context, userCre
|
||||
return data, httperrors.NewGeneralError(err)
|
||||
}
|
||||
account := _account.(*SCloudaccount)
|
||||
if account.Provider != api.CLOUD_PROVIDER_HUAWEI && account.Provider != api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK {
|
||||
if account.Provider != api.CLOUD_PROVIDER_HUAWEI && account.Provider != api.CLOUD_PROVIDER_HCSO {
|
||||
return data, httperrors.NewClientError("cloudaccount %s is %s not %s", account.Id, account.Provider, api.CLOUD_PROVIDER_HUAWEI)
|
||||
}
|
||||
if account.SAMLAuth.IsFalse() {
|
||||
|
||||
@@ -34,8 +34,8 @@ import (
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/azure/provider"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/esxi/provider"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/google/provider"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/hcso/provider"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/huawei/provider"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/huaweistack/provider"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/jdcloud/provider"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/qcloud/provider"
|
||||
_ "yunion.io/x/onecloud/pkg/multicloud/zstack/provider"
|
||||
|
||||
@@ -124,7 +124,7 @@ func (self *CloudReportBase) InitProviderInstance() (cloudprovider.ICloudProvide
|
||||
return nil, errors.Wrap(err, "getCloudAccount error")
|
||||
}
|
||||
endpoints := cloudprovider.SApsaraEndpoints{}
|
||||
hwendpoints := cloudprovider.SHuaweiCloudStackEndpoints{}
|
||||
hwendpoints := cloudprovider.SHCSOEndpoints{}
|
||||
options, err := cloudAccout.Get("options")
|
||||
if err == nil {
|
||||
err := options.Unmarshal(&endpoints)
|
||||
@@ -133,21 +133,21 @@ func (self *CloudReportBase) InitProviderInstance() (cloudprovider.ICloudProvide
|
||||
}
|
||||
err = options.Unmarshal(&hwendpoints)
|
||||
if err != nil {
|
||||
log.Errorf("Unmarshal SHuaweiCloudStackEndpoints err:%v", err)
|
||||
log.Errorf("Unmarshal SHCSOEndpoints err:%v", err)
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get cloudAccout options err:%v", err)
|
||||
}
|
||||
cfg := cloudprovider.ProviderConfig{
|
||||
Id: self.SProvider.Id,
|
||||
Name: self.SProvider.Name,
|
||||
URL: self.SProvider.AccessUrl,
|
||||
Account: self.SProvider.Account,
|
||||
Secret: secretDe,
|
||||
Vendor: self.SProvider.Provider,
|
||||
ProxyFunc: proxyFunc,
|
||||
SApsaraEndpoints: endpoints,
|
||||
SHuaweiCloudStackEndpoints: hwendpoints,
|
||||
Id: self.SProvider.Id,
|
||||
Name: self.SProvider.Name,
|
||||
URL: self.SProvider.AccessUrl,
|
||||
Account: self.SProvider.Account,
|
||||
Secret: secretDe,
|
||||
Vendor: self.SProvider.Provider,
|
||||
ProxyFunc: proxyFunc,
|
||||
SApsaraEndpoints: endpoints,
|
||||
SHCSOEndpoints: hwendpoints,
|
||||
}
|
||||
return cloudprovider.GetProvider(cfg)
|
||||
}
|
||||
|
||||
@@ -81,7 +81,7 @@ type ReportOptions struct {
|
||||
Timeout int64 `help:"command timeout unit:second" default:"10"`
|
||||
SinceTime string `help:"sinceTime"`
|
||||
EndTime string `help:"endTime"`
|
||||
Provider []string `help:"List objects from the provider" choices:"VMware|Aliyun|Qcloud|Azure|Aws|Huawei|ZStack|Google|Apsara|JDcloud|Ecloud|HuaweiCloudStack" json:"provider,omitempty"`
|
||||
Provider []string `help:"List objects from the provider" choices:"VMware|Aliyun|Qcloud|Azure|Aws|Huawei|ZStack|Google|Apsara|JDcloud|Ecloud|HCSO" json:"provider,omitempty"`
|
||||
PingProbeOptions
|
||||
}
|
||||
|
||||
|
||||
@@ -108,5 +108,5 @@ type SHwStackCloudReportFactory struct {
|
||||
}
|
||||
|
||||
func (self *SHwStackCloudReportFactory) GetId() string {
|
||||
return compute.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK
|
||||
return compute.CLOUD_PROVIDER_HCSO
|
||||
}
|
||||
|
||||
@@ -25,9 +25,9 @@ import (
|
||||
"yunion.io/x/onecloud/pkg/apis/compute"
|
||||
"yunion.io/x/onecloud/pkg/cloudmon/collectors/common"
|
||||
"yunion.io/x/onecloud/pkg/cloudprovider"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huawei"
|
||||
hw_moudules "yunion.io/x/onecloud/pkg/multicloud/huawei/client/modules"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack"
|
||||
"yunion.io/x/onecloud/pkg/util/influxdb"
|
||||
)
|
||||
|
||||
@@ -343,8 +343,8 @@ func (self *SHwCloudReport) collectMetricFromThisServer(server jsonutils.JSONObj
|
||||
func (self *SHwCloudReport) GetMetricData(region cloudprovider.ICloudRegion, metrics []hw_moudules.SMetricMeta,
|
||||
since time.Time, until time.Time) ([]hw_moudules.SMetricData, error) {
|
||||
switch self.SProvider.Provider {
|
||||
case compute.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK:
|
||||
hwReg := region.(*huaweistack.SRegion)
|
||||
case compute.CLOUD_PROVIDER_HCSO:
|
||||
hwReg := region.(*hcso.SRegion)
|
||||
return hwReg.GetMetricsData(metrics, since, until)
|
||||
default:
|
||||
hwReg := region.(*huawei.SRegion)
|
||||
|
||||
@@ -98,7 +98,7 @@ type SCloudaccountCredential struct {
|
||||
*SApsaraEndpoints
|
||||
|
||||
// Huawei Cloud Stack Online
|
||||
*SHuaweiCloudStackEndpoints
|
||||
*SHCSOEndpoints
|
||||
}
|
||||
|
||||
type SCloudaccount struct {
|
||||
@@ -161,7 +161,7 @@ type ProviderConfig struct {
|
||||
AccountId string
|
||||
|
||||
SApsaraEndpoints
|
||||
SHuaweiCloudStackEndpoints
|
||||
SHCSOEndpoints
|
||||
|
||||
ProxyFunc httputils.TransportProxyFunc
|
||||
}
|
||||
|
||||
@@ -35,12 +35,12 @@ type SApsaraEndpoints struct {
|
||||
ResourcemanagerEndpoint string `default:"$APSARA_RESOURCEMANAGER_ENDPOINT"`
|
||||
}
|
||||
|
||||
// SHuaweiCloudStackEndpoints 华为私有云endpoints配置
|
||||
// SHCSOEndpoints 华为私有云endpoints配置
|
||||
/*
|
||||
endpoint获取方式优先级:
|
||||
通过参数明确指定使用指定endpoint。否则,程序根据华为云endpoint命名规则自动拼接endpoint
|
||||
*/
|
||||
type SHuaweiCloudStackEndpoints struct {
|
||||
type SHCSOEndpoints struct {
|
||||
caches map[string]string
|
||||
|
||||
// 华为私有云Endpoint域名
|
||||
@@ -102,7 +102,7 @@ type SHuaweiCloudStackEndpoints struct {
|
||||
SfsTurbo string `default:"$HUAWEI_SFS_TURBO_ENDPOINT"`
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackEndpoints) GetEndpoint(serviceName string, region string) string {
|
||||
func (self *SHCSOEndpoints) GetEndpoint(serviceName string, region string) string {
|
||||
sn := utils.Kebab2Camel(serviceName, "-")
|
||||
if self.caches == nil {
|
||||
self.caches = make(map[string]string, 0)
|
||||
|
||||
@@ -34,74 +34,74 @@ import (
|
||||
"yunion.io/x/onecloud/pkg/util/rbacutils"
|
||||
)
|
||||
|
||||
type SHuaweiCloudStackGuestDriver struct {
|
||||
type SHCSOGuestDriver struct {
|
||||
SManagedVirtualizedGuestDriver
|
||||
}
|
||||
|
||||
func init() {
|
||||
driver := SHuaweiCloudStackGuestDriver{}
|
||||
driver := SHCSOGuestDriver{}
|
||||
models.RegisterGuestDriver(&driver)
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetHypervisor() string {
|
||||
return api.HYPERVISOR_HUAWEI_CLOUD_STACK
|
||||
func (self *SHCSOGuestDriver) GetHypervisor() string {
|
||||
return api.HYPERVISOR_HCSO
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetProvider() string {
|
||||
return api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK
|
||||
func (self *SHCSOGuestDriver) GetProvider() string {
|
||||
return api.CLOUD_PROVIDER_HCSO
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) DoScheduleSKUFilter() bool {
|
||||
func (self *SHCSOGuestDriver) DoScheduleSKUFilter() bool {
|
||||
return false
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetComputeQuotaKeys(scope rbacutils.TRbacScope, ownerId mcclient.IIdentityProvider, brand string) models.SComputeResourceKeys {
|
||||
func (self *SHCSOGuestDriver) GetComputeQuotaKeys(scope rbacutils.TRbacScope, ownerId mcclient.IIdentityProvider, brand string) models.SComputeResourceKeys {
|
||||
keys := models.SComputeResourceKeys{}
|
||||
keys.SBaseProjectQuotaKeys = quotas.OwnerIdProjectQuotaKeys(scope, ownerId)
|
||||
keys.CloudEnv = api.CLOUD_ENV_PRIVATE_CLOUD
|
||||
keys.Provider = api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK
|
||||
keys.Brand = api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK
|
||||
keys.Hypervisor = api.HYPERVISOR_HUAWEI_CLOUD_STACK
|
||||
keys.Provider = api.CLOUD_PROVIDER_HCSO
|
||||
keys.Brand = api.CLOUD_PROVIDER_HCSO
|
||||
keys.Hypervisor = api.HYPERVISOR_HCSO
|
||||
return keys
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetDefaultSysDiskBackend() string {
|
||||
func (self *SHCSOGuestDriver) GetDefaultSysDiskBackend() string {
|
||||
return api.STORAGE_HUAWEI_SAS
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetMinimalSysDiskSizeGb() int {
|
||||
func (self *SHCSOGuestDriver) GetMinimalSysDiskSizeGb() int {
|
||||
return 40
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetStorageTypes() []string {
|
||||
func (self *SHCSOGuestDriver) GetStorageTypes() []string {
|
||||
return []string{api.STORAGE_HUAWEI_SATA, api.STORAGE_HUAWEI_SAS, api.STORAGE_HUAWEI_SSD}
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) ChooseHostStorage(host *models.SHost, guest *models.SGuest, diskConfig *api.DiskConfig, storageIds []string) (*models.SStorage, error) {
|
||||
func (self *SHCSOGuestDriver) ChooseHostStorage(host *models.SHost, guest *models.SGuest, diskConfig *api.DiskConfig, storageIds []string) (*models.SStorage, error) {
|
||||
return self.chooseHostStorage(self, host, diskConfig.Backend, storageIds), nil
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetDetachDiskStatus() ([]string, error) {
|
||||
func (self *SHCSOGuestDriver) GetDetachDiskStatus() ([]string, error) {
|
||||
return []string{api.VM_READY, api.VM_RUNNING}, nil
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetAttachDiskStatus() ([]string, error) {
|
||||
func (self *SHCSOGuestDriver) GetAttachDiskStatus() ([]string, error) {
|
||||
return []string{api.VM_READY, api.VM_RUNNING}, nil
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetRebuildRootStatus() ([]string, error) {
|
||||
func (self *SHCSOGuestDriver) GetRebuildRootStatus() ([]string, error) {
|
||||
return []string{api.VM_READY, api.VM_RUNNING}, nil
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetChangeConfigStatus(guest *models.SGuest) ([]string, error) {
|
||||
func (self *SHCSOGuestDriver) GetChangeConfigStatus(guest *models.SGuest) ([]string, error) {
|
||||
return []string{api.VM_READY}, nil
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetDeployStatus() ([]string, error) {
|
||||
func (self *SHCSOGuestDriver) GetDeployStatus() ([]string, error) {
|
||||
return []string{api.VM_READY, api.VM_RUNNING}, nil
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) ValidateResizeDisk(guest *models.SGuest, disk *models.SDisk, storage *models.SStorage) error {
|
||||
func (self *SHCSOGuestDriver) ValidateResizeDisk(guest *models.SGuest, disk *models.SDisk, storage *models.SStorage) error {
|
||||
if !utils.IsInStringArray(guest.Status, []string{api.VM_RUNNING, api.VM_READY}) {
|
||||
return fmt.Errorf("Cannot resize disk when guest in status %s", guest.Status)
|
||||
}
|
||||
@@ -112,15 +112,15 @@ func (self *SHuaweiCloudStackGuestDriver) ValidateResizeDisk(guest *models.SGues
|
||||
return nil
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetGuestInitialStateAfterCreate() string {
|
||||
func (self *SHCSOGuestDriver) GetGuestInitialStateAfterCreate() string {
|
||||
return api.VM_RUNNING
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetGuestInitialStateAfterRebuild() string {
|
||||
func (self *SHCSOGuestDriver) GetGuestInitialStateAfterRebuild() string {
|
||||
return api.VM_RUNNING
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) GetInstanceCapability() cloudprovider.SInstanceCapability {
|
||||
func (self *SHCSOGuestDriver) GetInstanceCapability() cloudprovider.SInstanceCapability {
|
||||
return cloudprovider.SInstanceCapability{
|
||||
Hypervisor: self.GetHypervisor(),
|
||||
Provider: self.GetProvider(),
|
||||
@@ -149,7 +149,7 @@ func (self *SHuaweiCloudStackGuestDriver) GetInstanceCapability() cloudprovider.
|
||||
}
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) RemoteDeployGuestSyncHost(ctx context.Context, userCred mcclient.TokenCredential, guest *models.SGuest, host *models.SHost, iVM cloudprovider.ICloudVM) (cloudprovider.ICloudHost, error) {
|
||||
func (self *SHCSOGuestDriver) RemoteDeployGuestSyncHost(ctx context.Context, userCred mcclient.TokenCredential, guest *models.SGuest, host *models.SHost, iVM cloudprovider.ICloudVM) (cloudprovider.ICloudHost, error) {
|
||||
if hostId := iVM.GetIHostId(); len(hostId) > 0 {
|
||||
nh, err := db.FetchByExternalIdAndManagerId(models.HostManager, hostId, func(q *sqlchemy.SQuery) *sqlchemy.SQuery {
|
||||
return q.Equals("manager_id", host.ManagerId)
|
||||
@@ -160,7 +160,7 @@ func (self *SHuaweiCloudStackGuestDriver) RemoteDeployGuestSyncHost(ctx context.
|
||||
return nil, errors.Wrap(err, "FetchByExternalIdAndManagerId")
|
||||
}
|
||||
|
||||
// HYPERVISOR_HUAWEI_CLOUD_STACK VM被部署到一台全新的宿主机
|
||||
// HYPERVISOR_HCSO VM被部署到一台全新的宿主机
|
||||
zone, err := host.GetZone()
|
||||
if err != nil {
|
||||
log.Warningf("host %s GetZone: %s", host.GetId(), err)
|
||||
@@ -184,7 +184,7 @@ func (self *SHuaweiCloudStackGuestDriver) RemoteDeployGuestSyncHost(ctx context.
|
||||
return host.GetIHost()
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) IsSupportedBillingCycle(bc billing.SBillingCycle) bool {
|
||||
func (self *SHCSOGuestDriver) IsSupportedBillingCycle(bc billing.SBillingCycle) bool {
|
||||
months := bc.GetMonths()
|
||||
if (months >= 1 && months <= 9) || (months == 12) || (months == 24) || (months == 36) {
|
||||
return true
|
||||
@@ -193,10 +193,10 @@ func (self *SHuaweiCloudStackGuestDriver) IsSupportedBillingCycle(bc billing.SBi
|
||||
return false
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) IsNeedInjectPasswordByCloudInit(desc *cloudprovider.SManagedVMCreateConfig) bool {
|
||||
func (self *SHCSOGuestDriver) IsNeedInjectPasswordByCloudInit(desc *cloudprovider.SManagedVMCreateConfig) bool {
|
||||
return true
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackGuestDriver) IsSupportSetAutoRenew() bool {
|
||||
func (self *SHCSOGuestDriver) IsSupportSetAutoRenew() bool {
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -26,25 +26,25 @@ import (
|
||||
"yunion.io/x/onecloud/pkg/mcclient"
|
||||
)
|
||||
|
||||
type SHuaweiCloudStackHostDriver struct {
|
||||
type SHCSOHostDriver struct {
|
||||
SManagedVirtualizationHostDriver
|
||||
}
|
||||
|
||||
func init() {
|
||||
driver := SHuaweiCloudStackHostDriver{}
|
||||
driver := SHCSOHostDriver{}
|
||||
models.RegisterHostDriver(&driver)
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackHostDriver) GetHostType() string {
|
||||
return api.HOST_TYPE_HUAWEI_CLOUD_STACK
|
||||
func (self *SHCSOHostDriver) GetHostType() string {
|
||||
return api.HOST_TYPE_HCSO
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackHostDriver) GetHypervisor() string {
|
||||
return api.HYPERVISOR_HUAWEI_CLOUD_STACK
|
||||
func (self *SHCSOHostDriver) GetHypervisor() string {
|
||||
return api.HYPERVISOR_HCSO
|
||||
}
|
||||
|
||||
// 系统盘必须至少40G
|
||||
func (self *SHuaweiCloudStackHostDriver) ValidateDiskSize(storage *models.SStorage, sizeGb int) error {
|
||||
func (self *SHCSOHostDriver) ValidateDiskSize(storage *models.SStorage, sizeGb int) error {
|
||||
switch storage.StorageType {
|
||||
case api.STORAGE_HUAWEI_SSD, api.STORAGE_HUAWEI_SATA, api.STORAGE_HUAWEI_SAS:
|
||||
if sizeGb < 10 || sizeGb > 32768 {
|
||||
@@ -57,7 +57,7 @@ func (self *SHuaweiCloudStackHostDriver) ValidateDiskSize(storage *models.SStora
|
||||
return nil
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackHostDriver) ValidateResetDisk(ctx context.Context, userCred mcclient.TokenCredential, disk *models.SDisk, snapshot *models.SSnapshot, guests []models.SGuest, data *jsonutils.JSONDict) (*jsonutils.JSONDict, error) {
|
||||
func (self *SHCSOHostDriver) ValidateResetDisk(ctx context.Context, userCred mcclient.TokenCredential, disk *models.SDisk, snapshot *models.SSnapshot, guests []models.SGuest, data *jsonutils.JSONDict) (*jsonutils.JSONDict, error) {
|
||||
if len(guests) >= 1 {
|
||||
if disk.DiskType == api.DISK_TYPE_SYS {
|
||||
for _, g := range guests {
|
||||
|
||||
@@ -54,7 +54,7 @@ func (self *SManagedVirtualizationHostDriver) CheckAndSetCacheImage(ctx context.
|
||||
}
|
||||
|
||||
providerName := storageCache.GetProviderName()
|
||||
if utils.IsInStringArray(providerName, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK, api.CLOUD_PROVIDER_UCLOUD}) {
|
||||
if utils.IsInStringArray(providerName, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO, api.CLOUD_PROVIDER_UCLOUD}) {
|
||||
image.OsVersion, _ = params.GetString("os_full_version")
|
||||
}
|
||||
|
||||
|
||||
@@ -443,10 +443,10 @@ func (manager *SCloudaccountManager) validateCreateData(
|
||||
endpointOptions = jsonutils.Marshal(input.SCloudaccountCredential.SApsaraEndpoints)
|
||||
}
|
||||
|
||||
hcsoEndpoints := cloudprovider.SHuaweiCloudStackEndpoints{}
|
||||
if input.SCloudaccountCredential.SHuaweiCloudStackEndpoints != nil {
|
||||
hcsoEndpoints = *input.SCloudaccountCredential.SHuaweiCloudStackEndpoints
|
||||
endpointOptions = jsonutils.Marshal(input.SCloudaccountCredential.SHuaweiCloudStackEndpoints)
|
||||
hcsoEndpoints := cloudprovider.SHCSOEndpoints{}
|
||||
if input.SCloudaccountCredential.SHCSOEndpoints != nil {
|
||||
hcsoEndpoints = *input.SCloudaccountCredential.SHCSOEndpoints
|
||||
endpointOptions = jsonutils.Marshal(input.SCloudaccountCredential.SHCSOEndpoints)
|
||||
}
|
||||
|
||||
if endpointOptions != nil {
|
||||
@@ -511,8 +511,8 @@ func (manager *SCloudaccountManager) validateCreateData(
|
||||
Secret: input.Secret,
|
||||
ProxyFunc: proxyFunc,
|
||||
|
||||
SApsaraEndpoints: endpoints,
|
||||
SHuaweiCloudStackEndpoints: hcsoEndpoints,
|
||||
SApsaraEndpoints: endpoints,
|
||||
SHCSOEndpoints: hcsoEndpoints,
|
||||
})
|
||||
if err != nil {
|
||||
if err == cloudprovider.ErrNoSuchProvder {
|
||||
@@ -718,13 +718,13 @@ func (self *SCloudaccount) PerformUpdateCredential(ctx context.Context, userCred
|
||||
|
||||
originSecret, _ := self.getPassword()
|
||||
|
||||
hcsoEndpoints := cloudprovider.SHuaweiCloudStackEndpoints{}
|
||||
if self.Provider == api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK && input.SHuaweiCloudStackEndpoints != nil {
|
||||
hcsoEndpoints := cloudprovider.SHCSOEndpoints{}
|
||||
if self.Provider == api.CLOUD_PROVIDER_HCSO && input.SHCSOEndpoints != nil {
|
||||
if self.Options == nil {
|
||||
self.Options = jsonutils.NewDict()
|
||||
}
|
||||
|
||||
newOptions := jsonutils.Marshal(input.SHuaweiCloudStackEndpoints)
|
||||
newOptions := jsonutils.Marshal(input.SHCSOEndpoints)
|
||||
_, err = db.UpdateWithLock(ctx, self, func() error {
|
||||
self.Options.Update(newOptions)
|
||||
return nil
|
||||
@@ -740,12 +740,12 @@ func (self *SCloudaccount) PerformUpdateCredential(ctx context.Context, userCred
|
||||
}
|
||||
|
||||
accountId, err := cloudprovider.IsValidCloudAccount(cloudprovider.ProviderConfig{
|
||||
Vendor: self.Provider,
|
||||
URL: self.AccessUrl,
|
||||
Account: account.Account,
|
||||
Secret: account.Secret,
|
||||
SHuaweiCloudStackEndpoints: hcsoEndpoints,
|
||||
ProxyFunc: self.proxyFunc(),
|
||||
Vendor: self.Provider,
|
||||
URL: self.AccessUrl,
|
||||
Account: account.Account,
|
||||
Secret: account.Secret,
|
||||
SHCSOEndpoints: hcsoEndpoints,
|
||||
ProxyFunc: self.proxyFunc(),
|
||||
})
|
||||
if err != nil {
|
||||
return nil, httperrors.NewInputParameterError("invalid cloud account info error: %s", err.Error())
|
||||
@@ -938,9 +938,9 @@ func (self *SCloudaccount) getProviderInternal() (cloudprovider.ICloudProvider,
|
||||
return nil, fmt.Errorf("Invalid password %s", err)
|
||||
}
|
||||
endpoints := cloudprovider.SApsaraEndpoints{}
|
||||
hcsoEndpoints := cloudprovider.SHuaweiCloudStackEndpoints{}
|
||||
hcsoEndpoints := cloudprovider.SHCSOEndpoints{}
|
||||
if self.Options != nil {
|
||||
if self.Provider == api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK {
|
||||
if self.Provider == api.CLOUD_PROVIDER_HCSO {
|
||||
self.Options.Unmarshal(&hcsoEndpoints)
|
||||
} else if self.Provider == api.CLOUD_PROVIDER_APSARA {
|
||||
self.Options.Unmarshal(&endpoints)
|
||||
@@ -954,9 +954,9 @@ func (self *SCloudaccount) getProviderInternal() (cloudprovider.ICloudProvider,
|
||||
Account: self.Account,
|
||||
Secret: secret,
|
||||
|
||||
SApsaraEndpoints: endpoints,
|
||||
SHuaweiCloudStackEndpoints: hcsoEndpoints,
|
||||
ProxyFunc: self.proxyFunc(),
|
||||
SApsaraEndpoints: endpoints,
|
||||
SHCSOEndpoints: hcsoEndpoints,
|
||||
ProxyFunc: self.proxyFunc(),
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -875,9 +875,9 @@ func (self *SCloudprovider) GetProvider() (cloudprovider.ICloudProvider, error)
|
||||
account := self.GetCloudaccount()
|
||||
|
||||
endpoints := cloudprovider.SApsaraEndpoints{}
|
||||
hscsoEndpoints := cloudprovider.SHuaweiCloudStackEndpoints{}
|
||||
hscsoEndpoints := cloudprovider.SHCSOEndpoints{}
|
||||
if account.Options != nil {
|
||||
if self.Provider == api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK {
|
||||
if self.Provider == api.CLOUD_PROVIDER_HCSO {
|
||||
account.Options.Unmarshal(&hscsoEndpoints)
|
||||
} else if self.Provider == api.CLOUD_PROVIDER_APSARA {
|
||||
account.Options.Unmarshal(&endpoints)
|
||||
@@ -893,8 +893,8 @@ func (self *SCloudprovider) GetProvider() (cloudprovider.ICloudProvider, error)
|
||||
Secret: passwd,
|
||||
ProxyFunc: account.proxyFunc(),
|
||||
|
||||
SApsaraEndpoints: endpoints,
|
||||
SHuaweiCloudStackEndpoints: hscsoEndpoints,
|
||||
SApsaraEndpoints: endpoints,
|
||||
SHCSOEndpoints: hscsoEndpoints,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -1898,7 +1898,7 @@ func (self *SDisk) PerformPurge(ctx context.Context, userCred mcclient.TokenCred
|
||||
}
|
||||
|
||||
provider := self.GetCloudprovider()
|
||||
if provider != nil && utils.IsInStringArray(provider.Provider, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if provider != nil && utils.IsInStringArray(provider.Provider, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
cnt, err := self.GetSnapshotCount()
|
||||
if err != nil {
|
||||
return nil, httperrors.NewInternalServerError("GetSnapshotCount fail %s", err)
|
||||
@@ -1913,7 +1913,7 @@ func (self *SDisk) PerformPurge(ctx context.Context, userCred mcclient.TokenCred
|
||||
|
||||
func (self *SDisk) CustomizeDelete(ctx context.Context, userCred mcclient.TokenCredential, query jsonutils.JSONObject, data jsonutils.JSONObject) error {
|
||||
if !jsonutils.QueryBoolean(query, "delete_snapshots", false) {
|
||||
if provider := self.GetCloudprovider(); provider != nil && utils.IsInStringArray(provider.Provider, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if provider := self.GetCloudprovider(); provider != nil && utils.IsInStringArray(provider.Provider, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
cnt, err := self.GetSnapshotCount()
|
||||
if err != nil {
|
||||
return httperrors.NewInternalServerError("GetSnapshotCount fail %s", err)
|
||||
|
||||
@@ -152,7 +152,7 @@ func (manager *SElasticipManager) ListItemFilter(
|
||||
return nil, httperrors.NewGeneralError(err)
|
||||
}
|
||||
guest := serverObj.(*SGuest)
|
||||
if guest.Hypervisor == api.HYPERVISOR_KVM || (utils.IsInStringArray(guest.Hypervisor, api.PRIVATE_CLOUD_HYPERVISORS) && guest.Hypervisor != api.HYPERVISOR_HUAWEI_CLOUD_STACK) {
|
||||
if guest.Hypervisor == api.HYPERVISOR_KVM || (utils.IsInStringArray(guest.Hypervisor, api.PRIVATE_CLOUD_HYPERVISORS) && guest.Hypervisor != api.HYPERVISOR_HCSO) {
|
||||
zone, _ := guest.getZone()
|
||||
networks := NetworkManager.Query().SubQuery()
|
||||
wires := WireManager.Query().SubQuery()
|
||||
|
||||
@@ -1735,19 +1735,9 @@ func (self *SHost) syncRemoveCloudHost(ctx context.Context, userCred mcclient.To
|
||||
|
||||
err := self.ValidatePurgeCondition(ctx)
|
||||
if err != nil {
|
||||
err = self.SetStatus(userCred, api.HOST_OFFLINE, "sync to delete")
|
||||
if err == nil {
|
||||
_, err = self.PerformDisable(ctx, userCred, nil, apis.PerformDisableInput{})
|
||||
}
|
||||
guests, err := self.GetGuests()
|
||||
err = self.purge(ctx, userCred)
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "GetGuests")
|
||||
}
|
||||
for _, guest := range guests {
|
||||
err = guest.SetStatus(userCred, api.VM_UNKNOWN, "sync to delete")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return errors.Wrap(err, "purge")
|
||||
}
|
||||
} else {
|
||||
err = self.RealDelete(ctx, userCred)
|
||||
|
||||
@@ -130,7 +130,7 @@ func (man *SCachedLoadbalancerAclManager) ValidateCreateData(ctx context.Context
|
||||
}
|
||||
}
|
||||
|
||||
if utils.IsInStringArray(providerV.Model.(*SCloudprovider).Provider, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if utils.IsInStringArray(providerV.Model.(*SCloudprovider).Provider, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
listenerV := validators.NewModelIdOrNameValidator("listener", "loadbalancerlistener", ownerId)
|
||||
if err := listenerV.Validate(data); err != nil {
|
||||
return nil, err
|
||||
@@ -319,7 +319,7 @@ func (self *SCachedLoadbalancerAcl) syncRemoveCloudLoadbalanceAcl(ctx context.Co
|
||||
func (acl *SCachedLoadbalancerAcl) SyncWithCloudLoadbalancerAcl(ctx context.Context, userCred mcclient.TokenCredential, extAcl cloudprovider.ICloudLoadbalancerAcl, projectId mcclient.IIdentityProvider) error {
|
||||
diff, err := db.UpdateWithLock(ctx, acl, func() error {
|
||||
// todo: 华为云acl没有name字段应此不需要同步名称
|
||||
if !utils.IsInStringArray(acl.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if !utils.IsInStringArray(acl.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
acl.Name = extAcl.GetName()
|
||||
} else {
|
||||
ext_listener_id := extAcl.GetAclListenerID()
|
||||
@@ -355,7 +355,7 @@ func (man *SCachedLoadbalancerAclManager) GetOrCreateCachedAcl(ctx context.Conte
|
||||
defer lockman.ReleaseClass(ctx, man, ownerProjId)
|
||||
|
||||
listenerId := ""
|
||||
if utils.IsInStringArray(lblis.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if utils.IsInStringArray(lblis.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
listenerId = lblis.Id
|
||||
}
|
||||
if lblis.GetProviderName() == api.CLOUD_PROVIDER_OPENSTACK {
|
||||
|
||||
@@ -732,7 +732,7 @@ func (lbr *SLoadbalancerListenerRule) constructFieldsFromCloudListenerRule(userC
|
||||
}
|
||||
|
||||
if groupId := extRule.GetBackendGroupId(); len(groupId) > 0 {
|
||||
if utils.IsInStringArray(lbr.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if utils.IsInStringArray(lbr.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
group, err := db.FetchByExternalId(HuaweiCachedLbbgManager, groupId)
|
||||
if err != nil {
|
||||
if err == sql.ErrNoRows {
|
||||
@@ -774,7 +774,7 @@ func (lbr *SLoadbalancerListenerRule) updateCachedLoadbalancerBackendGroupAssoci
|
||||
}
|
||||
|
||||
switch lbr.GetProviderName() {
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK:
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO:
|
||||
_group, err := db.FetchByExternalId(HuaweiCachedLbbgManager, exteralLbbgId)
|
||||
if err != nil {
|
||||
if err == sql.ErrNoRows {
|
||||
|
||||
@@ -369,7 +369,7 @@ func (man *SLoadbalancerListenerManager) ValidateAcl(aclStatusV *validators.Vali
|
||||
return httperrors.NewMissingParameterError("acl_type")
|
||||
}
|
||||
} else {
|
||||
if !utils.IsInStringArray(providerName, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if !utils.IsInStringArray(providerName, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
data.Set("acl_id", jsonutils.NewString(""))
|
||||
data.Set("cached_acl_id", jsonutils.NewString(""))
|
||||
}
|
||||
@@ -1013,7 +1013,7 @@ func (lblis *SLoadbalancerListener) constructFieldsFromCloudListener(userCred mc
|
||||
|
||||
switch lblis.ListenerType {
|
||||
case api.LB_LISTENER_TYPE_UDP:
|
||||
if !utils.IsInStringArray(lblis.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if !utils.IsInStringArray(lblis.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
lblis.HealthCheckExp = extListener.GetHealthCheckExp()
|
||||
lblis.HealthCheckReq = extListener.GetHealthCheckReq()
|
||||
}
|
||||
@@ -1056,7 +1056,7 @@ func (lblis *SLoadbalancerListener) constructFieldsFromCloudListener(userCred mc
|
||||
|
||||
groupId := extListener.GetBackendGroupId()
|
||||
switch lblis.GetProviderName() {
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK:
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO:
|
||||
if len(groupId) > 0 {
|
||||
group, err := db.FetchByExternalIdAndManagerId(HuaweiCachedLbbgManager, groupId, func(q *sqlchemy.SQuery) *sqlchemy.SQuery {
|
||||
return q.Equals("manager_id", lb.ManagerId)
|
||||
@@ -1148,7 +1148,7 @@ func (lblis *SLoadbalancerListener) updateCachedLoadbalancerBackendGroupAssociat
|
||||
}
|
||||
|
||||
switch lblis.GetProviderName() {
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK:
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO:
|
||||
_group, err := db.FetchByExternalIdAndManagerId(HuaweiCachedLbbgManager, exteralLbbgId, func(q *sqlchemy.SQuery) *sqlchemy.SQuery {
|
||||
return q.Equals("manager_id", managerId)
|
||||
})
|
||||
|
||||
@@ -505,7 +505,7 @@ func (lb *SLoadbalancer) GetCreateLoadbalancerParams(iRegion cloudprovider.IClou
|
||||
params.EgressMbps = lb.EgressMbps
|
||||
}
|
||||
|
||||
if lb.AddressType == api.LB_ADDR_TYPE_INTRANET || utils.IsInStringArray(lb.SManagedResourceBase.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK, api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_AWS, api.CLOUD_PROVIDER_QCLOUD}) {
|
||||
if lb.AddressType == api.LB_ADDR_TYPE_INTRANET || utils.IsInStringArray(lb.SManagedResourceBase.GetProviderName(), []string{api.CLOUD_PROVIDER_HCSO, api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_AWS, api.CLOUD_PROVIDER_QCLOUD}) {
|
||||
vpc, err := lb.GetVpc()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -517,7 +517,7 @@ func (lb *SLoadbalancer) GetCreateLoadbalancerParams(iRegion cloudprovider.IClou
|
||||
params.VpcID = iVpc.GetId()
|
||||
}
|
||||
|
||||
if lb.AddressType == api.LB_ADDR_TYPE_INTRANET || utils.IsInStringArray(lb.SManagedResourceBase.GetProviderName(), []string{api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK, api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_AWS}) {
|
||||
if lb.AddressType == api.LB_ADDR_TYPE_INTRANET || utils.IsInStringArray(lb.SManagedResourceBase.GetProviderName(), []string{api.CLOUD_PROVIDER_HCSO, api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_AWS}) {
|
||||
networks, err := lb.GetNetworks()
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to find network for lb %s: %s", lb.Name, err)
|
||||
|
||||
@@ -362,7 +362,7 @@ func (self *SMountTarget) ValidateDeleteCondition(ctx context.Context) error {
|
||||
if err != nil {
|
||||
return httperrors.NewGeneralError(errors.Wrapf(err, "GetRegion"))
|
||||
}
|
||||
if utils.IsInStringArray(region.Provider, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK}) {
|
||||
if utils.IsInStringArray(region.Provider, []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO}) {
|
||||
return httperrors.NewNotSupportedError("not allow to delete")
|
||||
}
|
||||
return self.SStatusStandaloneResourceBase.ValidateDeleteCondition(ctx)
|
||||
|
||||
@@ -551,7 +551,7 @@ func (lbbg *SLoadbalancerBackendGroup) purgeCachedlbbg(ctx context.Context, user
|
||||
switch lbbg.GetProviderName() {
|
||||
case api.CLOUD_PROVIDER_AWS:
|
||||
return lbbg.purgeAwsCachedlbbg(ctx, userCred)
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK:
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO:
|
||||
return lbbg.purgeHuaweiCachedlbbg(ctx, userCred)
|
||||
}
|
||||
|
||||
@@ -632,7 +632,7 @@ func (lbb *SLoadbalancerBackend) purgeCachedlbb(ctx context.Context, userCred mc
|
||||
switch lbb.GetProviderName() {
|
||||
case api.CLOUD_PROVIDER_AWS:
|
||||
return lbb.purgeAwsCachedlbb(ctx, userCred)
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK:
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO:
|
||||
return lbb.purgeHuaweiCachedlbb(ctx, userCred)
|
||||
}
|
||||
|
||||
|
||||
@@ -606,7 +606,7 @@ func (self *SSecurityGroupCache) StartSecurityGroupCacheDeleteTask(ctx context.C
|
||||
}
|
||||
|
||||
func (manager *SSecurityGroupCacheManager) InitializeData() error {
|
||||
providerIds := CloudproviderManager.Query("id").In("provider", []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK, api.CLOUD_PROVIDER_CTYUN, api.CLOUD_PROVIDER_QCLOUD}).SubQuery()
|
||||
providerIds := CloudproviderManager.Query("id").In("provider", []string{api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO, api.CLOUD_PROVIDER_CTYUN, api.CLOUD_PROVIDER_QCLOUD}).SubQuery()
|
||||
|
||||
deprecatedSecgroups := []SSecurityGroupCache{}
|
||||
q := manager.Query().In("manager_id", providerIds).NotEquals("vpc_id", api.NORMAL_VPC_ID)
|
||||
|
||||
@@ -19,19 +19,19 @@ import (
|
||||
"yunion.io/x/onecloud/pkg/compute/models"
|
||||
)
|
||||
|
||||
type SHuaweiCloudStackRegionDriver struct {
|
||||
type SHCSORegionDriver struct {
|
||||
SHuaWeiRegionDriver
|
||||
}
|
||||
|
||||
func init() {
|
||||
driver := SHuaweiCloudStackRegionDriver{}
|
||||
driver := SHCSORegionDriver{}
|
||||
models.RegisterRegionDriver(&driver)
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackRegionDriver) GetProvider() string {
|
||||
return api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK
|
||||
func (self *SHCSORegionDriver) GetProvider() string {
|
||||
return api.CLOUD_PROVIDER_HCSO
|
||||
}
|
||||
|
||||
func (self *SHuaweiCloudStackRegionDriver) IsSupportedElasticcache() bool {
|
||||
func (self *SHCSORegionDriver) IsSupportedElasticcache() bool {
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ func init() {
|
||||
|
||||
func getOnLoadbalancerListenerCreateCompleteFunc(provider string) func(ctx context.Context, lblis *models.SLoadbalancerListener, data jsonutils.JSONObject, self *LoadbalancerListenerCreateTask) {
|
||||
switch provider {
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK:
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO:
|
||||
return onHuaweiLoadbalancerListenerCreateComplete
|
||||
case api.CLOUD_PROVIDER_OPENSTACK:
|
||||
return onOpenstackLoadbalancerListenerCreateComplete
|
||||
|
||||
@@ -37,7 +37,7 @@ func init() {
|
||||
|
||||
func getOnPrepareLoadbalancerBackendgroupFunc(provider string) func(ctx context.Context, region *models.SCloudregion, lbr *models.SLoadbalancerListenerRule, data jsonutils.JSONObject, self *LoadbalancerListenerRuleCreateTask) {
|
||||
switch provider {
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HUAWEI_CLOUD_STACK:
|
||||
case api.CLOUD_PROVIDER_HUAWEI, api.CLOUD_PROVIDER_HCSO:
|
||||
return onHuaiweiPrepareLoadbalancerBackendgroup
|
||||
case api.CLOUD_PROVIDER_AWS:
|
||||
return onAwsPrepareLoadbalancerBackendgroup
|
||||
|
||||
@@ -271,15 +271,15 @@ func (opts *SHuaweiCloudAccountCreateOptions) Params() (jsonutils.JSONObject, er
|
||||
return params, nil
|
||||
}
|
||||
|
||||
type SHuaweiCloudStackAccountCreateOptions struct {
|
||||
type SHCSOAccountCreateOptions struct {
|
||||
SCloudAccountCreateBaseOptions
|
||||
cloudprovider.SHuaweiCloudStackEndpoints
|
||||
cloudprovider.SHCSOEndpoints
|
||||
SAccessKeyCredential
|
||||
}
|
||||
|
||||
func (opts *SHuaweiCloudStackAccountCreateOptions) Params() (jsonutils.JSONObject, error) {
|
||||
func (opts *SHCSOAccountCreateOptions) Params() (jsonutils.JSONObject, error) {
|
||||
params := jsonutils.Marshal(opts)
|
||||
params.(*jsonutils.JSONDict).Add(jsonutils.NewString("HuaweiCloudStack"), "provider")
|
||||
params.(*jsonutils.JSONDict).Add(jsonutils.NewString("HCSO"), "provider")
|
||||
return params, nil
|
||||
}
|
||||
|
||||
@@ -460,13 +460,13 @@ func (opts *SHuaweiCloudAccountUpdateCredentialOptions) Params() (jsonutils.JSON
|
||||
return jsonutils.Marshal(opts), nil
|
||||
}
|
||||
|
||||
type SHuaweiCloudStackAccountUpdateCredentialOptions struct {
|
||||
type SHCSOAccountUpdateCredentialOptions struct {
|
||||
SCloudAccountIdOptions
|
||||
cloudprovider.SHuaweiCloudStackEndpoints
|
||||
cloudprovider.SHCSOEndpoints
|
||||
SAccessKeyCredential
|
||||
}
|
||||
|
||||
func (opts *SHuaweiCloudStackAccountUpdateCredentialOptions) Params() (jsonutils.JSONObject, error) {
|
||||
func (opts *SHCSOAccountUpdateCredentialOptions) Params() (jsonutils.JSONObject, error) {
|
||||
return jsonutils.Marshal(opts), nil
|
||||
}
|
||||
|
||||
@@ -791,11 +791,11 @@ func (opts *SHuaweiCloudAccountUpdateOptions) Params() (jsonutils.JSONObject, er
|
||||
return params, nil
|
||||
}
|
||||
|
||||
type SHuaweiCloudStackAccountUpdateOptions struct {
|
||||
type SHCSOAccountUpdateOptions struct {
|
||||
SCloudAccountUpdateBaseOptions
|
||||
}
|
||||
|
||||
func (opts *SHuaweiCloudStackAccountUpdateOptions) Params() (jsonutils.JSONObject, error) {
|
||||
func (opts *SHCSOAccountUpdateOptions) Params() (jsonutils.JSONObject, error) {
|
||||
return jsonutils.Marshal(opts), nil
|
||||
}
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package huaweistack
|
||||
package hcso
|
||||
|
||||
import (
|
||||
"context"
|
||||
+1
-1
@@ -12,4 +12,4 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package credentials // import "yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth/credentials"
|
||||
package credentials // import "yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth/credentials"
|
||||
@@ -12,4 +12,4 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package shell // import "yunion.io/x/onecloud/pkg/multicloud/huaweistack/shell"
|
||||
package auth // import "yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth"
|
||||
+3
-3
@@ -24,9 +24,9 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth/credentials"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth/signers"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/requests"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth/credentials"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth/signers"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/requests"
|
||||
)
|
||||
|
||||
type Signer interface {
|
||||
+1
-1
@@ -12,4 +12,4 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package signers // import "yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth/signers"
|
||||
package signers // import "yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth/signers"
|
||||
+1
-1
@@ -19,7 +19,7 @@ import (
|
||||
"crypto/sha256"
|
||||
"encoding/hex"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth/credentials"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth/credentials"
|
||||
)
|
||||
|
||||
type AccessKeySigner struct {
|
||||
@@ -18,9 +18,9 @@ import (
|
||||
"net/http"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/cloudprovider"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth/credentials"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/modules"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth/credentials"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/modules"
|
||||
)
|
||||
|
||||
type Client struct {
|
||||
@@ -91,7 +91,7 @@ type Client struct {
|
||||
|
||||
type SClientConfig struct {
|
||||
signer auth.Signer
|
||||
endpoints *cloudprovider.SHuaweiCloudStackEndpoints
|
||||
endpoints *cloudprovider.SHCSOEndpoints
|
||||
regionId string
|
||||
domainId string
|
||||
projectId string
|
||||
@@ -103,7 +103,7 @@ func (self *SClientConfig) GetSigner() auth.Signer {
|
||||
return self.signer
|
||||
}
|
||||
|
||||
func (self *SClientConfig) GetEndpoints() *cloudprovider.SHuaweiCloudStackEndpoints {
|
||||
func (self *SClientConfig) GetEndpoints() *cloudprovider.SHCSOEndpoints {
|
||||
return self.endpoints
|
||||
}
|
||||
|
||||
@@ -181,7 +181,7 @@ func (self *Client) SetHttpClient(httpClient *http.Client) {
|
||||
self.Services.SetHttpClient(httpClient)
|
||||
}
|
||||
|
||||
func (self *Client) InitWithAccessKey(regionId, domainId, projectId, accessKey, secretKey string, debug bool, endpoints *cloudprovider.SHuaweiCloudStackEndpoints) error {
|
||||
func (self *Client) InitWithAccessKey(regionId, domainId, projectId, accessKey, secretKey string, debug bool, endpoints *cloudprovider.SHCSOEndpoints) error {
|
||||
// accessKey signer
|
||||
credential := &credentials.AccessKeyCredential{
|
||||
AccessKeyId: accessKey,
|
||||
@@ -273,7 +273,7 @@ func (self *Client) initManagers() {
|
||||
self.init = true
|
||||
}
|
||||
|
||||
func NewClientWithAccessKey(regionId, domainId, projectId, accessKey, secretKey string, debug bool, endpoints *cloudprovider.SHuaweiCloudStackEndpoints) (*Client, error) {
|
||||
func NewClientWithAccessKey(regionId, domainId, projectId, accessKey, secretKey string, debug bool, endpoints *cloudprovider.SHCSOEndpoints) (*Client, error) {
|
||||
c := &Client{}
|
||||
err := c.InitWithAccessKey(regionId, domainId, projectId, accessKey, secretKey, debug, endpoints)
|
||||
return c, err
|
||||
@@ -12,4 +12,4 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package client // import "yunion.io/x/onecloud/pkg/multicloud/huaweistack/client"
|
||||
package client // import "yunion.io/x/onecloud/pkg/multicloud/hcso/client"
|
||||
+1
-1
@@ -12,4 +12,4 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package manager // import "yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
package manager // import "yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
+3
-3
@@ -18,8 +18,8 @@ import (
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/cloudprovider"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type IManagerContext interface {
|
||||
@@ -74,7 +74,7 @@ type IManager interface {
|
||||
|
||||
type IManagerConfig interface {
|
||||
GetSigner() auth.Signer
|
||||
GetEndpoints() *cloudprovider.SHuaweiCloudStackEndpoints
|
||||
GetEndpoints() *cloudprovider.SHCSOEndpoints
|
||||
GetRegionId() string
|
||||
GetDomainId() string
|
||||
GetProjectId() string
|
||||
+1
-1
@@ -12,4 +12,4 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package modules // import "yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/modules"
|
||||
package modules // import "yunion.io/x/onecloud/pkg/multicloud/hcso/client/modules"
|
||||
+4
-4
@@ -28,10 +28,10 @@ import (
|
||||
|
||||
"yunion.io/x/onecloud/pkg/cloudprovider"
|
||||
"yunion.io/x/onecloud/pkg/httperrors"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/auth"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/requests"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/auth"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/requests"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/util/httputils"
|
||||
)
|
||||
|
||||
+3
-3
@@ -21,9 +21,9 @@ import (
|
||||
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/requests"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/requests"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type ServiceNameType string
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SBandwidthManager struct {
|
||||
+2
-2
@@ -21,9 +21,9 @@ import (
|
||||
"yunion.io/x/pkg/errors"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/httperrors"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/requests"
|
||||
hw_mod "yunion.io/x/onecloud/pkg/multicloud/huawei/client/modules"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/requests"
|
||||
)
|
||||
|
||||
type SCloudEyeManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SCredentialManager struct {
|
||||
+2
-2
@@ -20,8 +20,8 @@ import (
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/cloudprovider"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SDBInstanceManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SDBInstanceBackupManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SDBInstanceDatastoreManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SDBInstanceFlavorManager struct {
|
||||
+1
-1
@@ -17,7 +17,7 @@ package modules
|
||||
import (
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SDBInstanceJobManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SDBInstanceStorageManager struct {
|
||||
+2
-2
@@ -18,8 +18,8 @@ import (
|
||||
"yunion.io/x/jsonutils"
|
||||
"yunion.io/x/log"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SDiskManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SNatDRuleManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SDomainManager struct {
|
||||
+1
-1
@@ -17,7 +17,7 @@ package modules
|
||||
import (
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SEipManager struct {
|
||||
+2
-2
@@ -19,8 +19,8 @@ import (
|
||||
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SElasticcacheManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SEndpointManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SEnterpriseProjectManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SFlavorManager struct {
|
||||
+2
-2
@@ -20,8 +20,8 @@ import (
|
||||
"yunion.io/x/pkg/errors"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/cloudprovider"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SGroupManager struct {
|
||||
+2
-2
@@ -18,8 +18,8 @@ import (
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/httperrors"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/requests"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/requests"
|
||||
)
|
||||
|
||||
type SImageManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SInterfaceManager struct {
|
||||
+2
-2
@@ -19,8 +19,8 @@ import (
|
||||
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SJobManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SKeypairManager struct {
|
||||
+1
-1
@@ -17,7 +17,7 @@ package modules
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SElbBackendManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SElbBackendGroupManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SElbCertificatesManager struct {
|
||||
+1
-1
@@ -17,7 +17,7 @@ package modules
|
||||
import (
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SElbHealthCheckManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SElbListenersManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SElbL7policiesManager struct {
|
||||
+1
-1
@@ -17,7 +17,7 @@ package modules
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SElbPoliciesManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SElbWhitelistManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SLoadbalancerManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SAMLProviderMappingManager struct {
|
||||
+2
-2
@@ -15,8 +15,8 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/requests"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/requests"
|
||||
)
|
||||
|
||||
type SNatGatewayManager struct {
|
||||
+2
-2
@@ -15,8 +15,8 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/requests"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/requests"
|
||||
)
|
||||
|
||||
type SPortManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SProjectManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SQuotaManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SRegionManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SRoleManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SAMLProviderManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SSecgroupRuleManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SSecurityGroupManager struct {
|
||||
+2
-2
@@ -21,8 +21,8 @@ import (
|
||||
"yunion.io/x/jsonutils"
|
||||
"yunion.io/x/log"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SServerManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SServiceManager struct {
|
||||
+2
-2
@@ -17,8 +17,8 @@ package modules
|
||||
import (
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SfsTurboManager struct {
|
||||
+2
-2
@@ -15,8 +15,8 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SSnapshotManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SNatSRuleManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SSubnetManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type STraceManager struct {
|
||||
+2
-2
@@ -19,8 +19,8 @@ import (
|
||||
|
||||
"yunion.io/x/jsonutils"
|
||||
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/responses"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/responses"
|
||||
)
|
||||
|
||||
type SUserManager struct {
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
package modules
|
||||
|
||||
import (
|
||||
"yunion.io/x/onecloud/pkg/multicloud/huaweistack/client/manager"
|
||||
"yunion.io/x/onecloud/pkg/multicloud/hcso/client/manager"
|
||||
)
|
||||
|
||||
type SVpcPeeringManager struct {
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user