Skip to content

Commit 41f2fa7

Browse files
authored
Merge pull request #1340 from ioito/hotfix/qx-aliyun-dns-line
fix(aliyun): dns line
2 parents 96aa0d7 + 1ba98bc commit 41f2fa7

File tree

2 files changed

+18
-64
lines changed

2 files changed

+18
-64
lines changed

pkg/cloudprovider/dnszone.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ const (
4444
DnsPolicyTypeByCarrier = TDnsPolicyType("ByCarrier") //运营商
4545
DnsPolicyTypeByGeoLocation = TDnsPolicyType("ByGeoLocation") //地理区域
4646
DnsPolicyTypeBySearchEngine = TDnsPolicyType("BySearchEngine") //搜索引擎
47+
DnsPolicyTypeByCloudPlatform = TDnsPolicyType("ByCloudPlatform") //云厂商
4748
DnsPolicyTypeIpRange = TDnsPolicyType("IpRange") //自定义IP范围
4849
DnsPolicyTypeWeighted = TDnsPolicyType("Weighted") //加权
4950
DnsPolicyTypeFailover = TDnsPolicyType("Failover") //故障转移

pkg/multicloud/aliyun/dns_domain_record.go

Lines changed: 17 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -114,50 +114,15 @@ func (client *SAliyunClient) DescribeDomainRecordInfo(recordId string) (*SDomain
114114
return &srecord, nil
115115
}
116116

117-
func GetRecordLineLineType(policyinfo cloudprovider.TDnsPolicyValue) string {
118-
switch policyinfo {
119-
case cloudprovider.DnsPolicyValueOversea:
120-
return "oversea"
121-
case cloudprovider.DnsPolicyValueTelecom:
122-
return "telecom"
123-
case cloudprovider.DnsPolicyValueUnicom:
124-
return "unicom"
125-
case cloudprovider.DnsPolicyValueChinaMobile:
126-
return "mobile"
127-
case cloudprovider.DnsPolicyValueCernet:
128-
return "edu"
129-
case cloudprovider.DnsPolicyValueDrPeng:
130-
return "drpeng"
131-
case cloudprovider.DnsPolicyValueBtvn:
132-
return "btvn"
133-
case cloudprovider.DnsPolicyValueNAmerica:
134-
return "os_namerica"
135-
case cloudprovider.DnsPolicyValueEuro:
136-
return "os_euro"
137-
138-
case cloudprovider.DnsPolicyValueBaidu:
139-
return "baidu"
140-
case cloudprovider.DnsPolicyValueGoogle:
141-
return "google"
142-
case cloudprovider.DnsPolicyValueYoudao:
143-
return "youdao"
144-
case cloudprovider.DnsPolicyValueBing:
145-
return "biying"
146-
default:
147-
return "default"
148-
}
149-
}
150-
151117
func (client *SAliyunClient) AddDomainRecord(domainName string, opts *cloudprovider.DnsRecord) (string, error) {
152-
line := GetRecordLineLineType(opts.PolicyValue)
153118
params := map[string]string{}
154119
params["Action"] = "AddDomainRecord"
155120
params["RR"] = opts.DnsName
156121
params["Type"] = string(opts.DnsType)
157122
params["Value"] = opts.DnsValue
158123
params["DomainName"] = domainName
159124
params["TTL"] = strconv.FormatInt(opts.Ttl, 10)
160-
params["Line"] = line
125+
params["Line"] = string(opts.PolicyValue)
161126
if opts.DnsType == cloudprovider.DnsTypeMX {
162127
params["Priority"] = strconv.FormatInt(opts.MxPriority, 10)
163128
}
@@ -242,12 +207,14 @@ func (self *SDomainRecord) GetMxPriority() int64 {
242207

243208
func (self *SDomainRecord) GetPolicyType() cloudprovider.TDnsPolicyType {
244209
switch self.Line {
245-
case "telecom", "unicom", "mobile", "edu", "drpeng", "btvn":
210+
case "telecom", "unicom", "mobile", "edu", "drpeng", "btvn", "cstnet", "wexchange", "founder", "topway", "ocn", "cnix", "bgctv":
246211
return cloudprovider.DnsPolicyTypeByCarrier
247-
case "google", "baidu", "biying", "youdao":
212+
case "google", "baidu", "biying", "youdao", "yahoo", "qihu", "sougou":
248213
return cloudprovider.DnsPolicyTypeBySearchEngine
249214
case "oversea":
250215
return cloudprovider.DnsPolicyTypeByGeoLocation
216+
case "aliyun", "os_aliyun":
217+
return cloudprovider.DnsPolicyTypeByCloudPlatform
251218
default:
252219
for _, prefix := range []string{
253220
"cn_telecom",
@@ -256,6 +223,9 @@ func (self *SDomainRecord) GetPolicyType() cloudprovider.TDnsPolicyType {
256223
"cn_edu",
257224
"cn_drpeng",
258225
"cn_btvn",
226+
"cn_cstnet",
227+
"cn_wexchange",
228+
"cn_founder",
259229
} {
260230
if strings.HasPrefix(self.Line, prefix) {
261231
return cloudprovider.DnsPolicyTypeByCarrier
@@ -270,35 +240,19 @@ func (self *SDomainRecord) GetPolicyType() cloudprovider.TDnsPolicyType {
270240
return cloudprovider.DnsPolicyTypeByGeoLocation
271241
}
272242
}
243+
for _, prefix := range []string{
244+
"aliyun_",
245+
} {
246+
if strings.HasPrefix(self.Line, prefix) {
247+
return cloudprovider.DnsPolicyTypeByCloudPlatform
248+
}
249+
}
250+
273251
return cloudprovider.DnsPolicyTypeSimple
274252
}
275253
}
276254

277255
func (self *SDomainRecord) GetPolicyValue() cloudprovider.TDnsPolicyValue {
278-
switch self.Line {
279-
case "telecom":
280-
return cloudprovider.DnsPolicyValueTelecom
281-
case "unicom":
282-
return cloudprovider.DnsPolicyValueUnicom
283-
case "mobile":
284-
return cloudprovider.DnsPolicyValueChinaMobile
285-
case "oversea":
286-
return cloudprovider.DnsPolicyValueOversea
287-
case "edu":
288-
return cloudprovider.DnsPolicyValueCernet
289-
case "drpeng":
290-
return cloudprovider.DnsPolicyValueDrPeng
291-
case "btvn":
292-
return cloudprovider.DnsPolicyValueBtvn
293-
case "google":
294-
return cloudprovider.DnsPolicyValueGoogle
295-
case "baidu":
296-
return cloudprovider.DnsPolicyValueBaidu
297-
case "biying":
298-
return cloudprovider.DnsPolicyValueBing
299-
case "youdao":
300-
return cloudprovider.DnsPolicyValueYoudao
301-
}
302256
return cloudprovider.TDnsPolicyValue(self.Line)
303257
}
304258

@@ -382,15 +336,14 @@ func (self *SDomainRecord) GetExtraAddresses() ([]string, error) {
382336

383337
// line
384338
func (client *SAliyunClient) UpdateDomainRecord(id string, opts *cloudprovider.DnsRecord) error {
385-
line := GetRecordLineLineType(opts.PolicyValue)
386339
params := map[string]string{}
387340
params["Action"] = "UpdateDomainRecord"
388341
params["RR"] = opts.DnsName
389342
params["RecordId"] = id
390343
params["Type"] = string(opts.DnsType)
391344
params["Value"] = opts.DnsValue
392345
params["TTL"] = strconv.FormatInt(opts.Ttl, 10)
393-
params["Line"] = line
346+
params["Line"] = string(opts.PolicyValue)
394347
if opts.DnsType == cloudprovider.DnsTypeMX {
395348
params["Priority"] = strconv.FormatInt(opts.MxPriority, 10)
396349
}

0 commit comments

Comments
 (0)