Merge pull request #12126 from ioito/hotfix/qx-apsara-default-region

fix(region): apsara default region
This commit is contained in:
Zexi Li
2021-09-08 13:58:07 +08:00
committed by GitHub
4 changed files with 10 additions and 1 deletions
+1
View File
@@ -33,6 +33,7 @@ type SApsaraEndpoints struct {
RamEndpoint string `default:"$APSARA_RAM_ENDPOINT"`
MetricsEndpoint string `default:"$APSRRA_METRICS_ENDPOINT"`
ResourcemanagerEndpoint string `default:"$APSARA_RESOURCEMANAGER_ENDPOINT"`
DefaultRegion string `default:"$APSARA_DEFAULT_REGION"`
}
// SHCSOEndpoints 华为私有云endpoints配置
+1
View File
@@ -866,6 +866,7 @@ func (opts *SVMwareCloudAccountPrepareNetsOptions) Params() (jsonutils.JSONObjec
type SApsaraCloudAccountCreateOptions struct {
SCloudAccountCreateBaseOptions
cloudprovider.SApsaraEndpoints
Endpoint string
SAccessKeyCredential
}
+5 -1
View File
@@ -301,7 +301,11 @@ func (self *SApsaraClient) trialRequest(apiName string, params map[string]string
}
func (self *SApsaraClient) fetchRegions() error {
body, err := self.ecsRequest("DescribeRegions", map[string]string{"AcceptLanguage": "zh-CN"})
params := map[string]string{"AcceptLanguage": "zh-CN"}
if len(self.endpoints.DefaultRegion) > 0 {
params["RegionId"] = self.endpoints.DefaultRegion
}
body, err := self.ecsRequest("DescribeRegions", params)
if err != nil {
return errors.Wrapf(err, "DescribeRegions")
}
@@ -57,6 +57,9 @@ func (self *SApsaraProviderFactory) ValidateCreateCloudaccountData(ctx context.C
return output, httperrors.NewMissingParameterError("endpoint")
}
output.AccessUrl = input.Endpoint
if input.SApsaraEndpoints == nil || len(input.SApsaraEndpoints.DefaultRegion) == 0 {
return output, httperrors.NewMissingParameterError("default_region")
}
return output, nil
}