Skip to content

Commit 881bd41

Browse files
authored
fix(teo): [127481722] support teo certificate upstream_cert_info (#3524)
* fix: support teo certificate upstream_cert_info * fix: support teo certificate upstream_cert_info * fix: add changelog * fix: modify properties * fix: modify properties * fix: modify properties * fix: modify properties * fix: modify upstream_cert_info
1 parent d607fff commit 881bd41

File tree

11 files changed

+378
-17
lines changed

11 files changed

+378
-17
lines changed

.changelog/3524.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:enhancement
2+
resource/tencentcloud_teo_certificate_config: support `upstream_cert_info` fields
3+
```

go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ require (
4646
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.1107
4747
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit v1.0.1033
4848
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.1148
49-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.22
49+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.27
5050
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.1206
5151
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762
5252
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.1161
@@ -90,7 +90,7 @@ require (
9090
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tdcpg v1.0.533
9191
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tdmq v1.0.955
9292
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tem v1.0.578
93-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.5
93+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.27
9494
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.1.14
9595
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/trocket v1.1.0
9696
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tse v1.0.857

go.sum

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -961,6 +961,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.14 h1:+I+n8
961961
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.14/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
962962
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.22 h1:1unTmvNXynDN0mOZSWh9tL5Wp9Rb5paMGwFvua+HHoI=
963963
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.22/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
964+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.27 h1:FG3AiNSNW5tG+mtTSE+dBc5ZhHwlYUW0Z6oSkfAWV0A=
965+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.27/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
964966
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993 h1:WlPgXldQCxt7qi5Xrc6j6zTrsXWzN5BcOGs7Irq7fwQ=
965967
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993/go.mod h1:Z9U8zNtyuyKhjS0698wqsrG/kLx1TQ5CEixXBwVe7xY=
966968
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/csip v1.0.860 h1:F3esKBIT3HW9+7Gt8cVgf8X06VdGIczpgLBUECzSEzU=
@@ -1080,6 +1082,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.0.1203 h1:oEpdN0
10801082
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.0.1203/go.mod h1:/tuR/74u27UEv+a36Y1x1Zdgf2WqixNq+/1wfC0QQQc=
10811083
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.5 h1:ZLBuFek7n9ri1RNqrwG+2UbJJ/2U/tAQUkiNhamP82o=
10821084
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.5/go.mod h1:7tgthqW14nJik2A5huXBBQFldo27RFzPfDOVz9MarvE=
1085+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.27 h1:vcQitUadhSZi40x1cscUvNHId4Un2xnQFIE2IxvZU70=
1086+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.27/go.mod h1:2+6+xYfcJa8mO8tMljGjGCvhluPGjhRhlIv1jZK6y6c=
10831087
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998 h1:f4/n0dVKQTD06xJ84B5asHViNJHrZmGojdAWEPIsITM=
10841088
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998/go.mod h1:fyi/HUwCwVe2NCCCjz8k/C5GwPu3QazCZO+OBJ3MhLk=
10851089
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1196 h1:+Fz9UoC3II3H3+rz9UUOHeSp2ntGGmMLAnCjHTUYliU=

tencentcloud/services/teo/resource_tc_teo_certificate_config.go

Lines changed: 68 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tencentcloud/services/teo/resource_tc_teo_certificate_config_extension.go

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,55 @@ func resourceTencentCloudTeoCertificateConfigReadPostHandleResponse0(ctx context
7272

7373
_ = d.Set("server_cert_info", serverCertInfoList)
7474

75+
upstreamCertInfoMap := map[string]interface{}{}
76+
if accelerationDomain.Certificate.UpstreamCertInfo != nil {
77+
upstreamMutualTLSMap := map[string]interface{}{}
78+
79+
if accelerationDomain.Certificate.UpstreamCertInfo.UpstreamMutualTLS != nil {
80+
if accelerationDomain.Certificate.UpstreamCertInfo.UpstreamMutualTLS.Switch != nil {
81+
upstreamMutualTLSMap["switch"] = accelerationDomain.Certificate.UpstreamCertInfo.UpstreamMutualTLS.Switch
82+
}
83+
84+
certInfosList := make([]map[string]interface{}, 0, len(accelerationDomain.Certificate.UpstreamCertInfo.UpstreamMutualTLS.CertInfos))
85+
if accelerationDomain.Certificate.UpstreamCertInfo.UpstreamMutualTLS.CertInfos != nil {
86+
for _, certInfos := range accelerationDomain.Certificate.UpstreamCertInfo.UpstreamMutualTLS.CertInfos {
87+
certInfosMap := map[string]interface{}{}
88+
89+
if certInfos.CertId != nil {
90+
certInfosMap["cert_id"] = certInfos.CertId
91+
}
92+
93+
if certInfos.Alias != nil {
94+
certInfosMap["alias"] = certInfos.Alias
95+
}
96+
97+
if certInfos.Type != nil {
98+
certInfosMap["type"] = certInfos.Type
99+
}
100+
101+
if certInfos.ExpireTime != nil {
102+
certInfosMap["expire_time"] = certInfos.ExpireTime
103+
}
104+
105+
if certInfos.DeployTime != nil {
106+
certInfosMap["deploy_time"] = certInfos.DeployTime
107+
}
108+
109+
if certInfos.SignAlgo != nil {
110+
certInfosMap["sign_algo"] = certInfos.SignAlgo
111+
}
112+
113+
certInfosList = append(certInfosList, certInfosMap)
114+
}
115+
116+
upstreamMutualTLSMap["cert_infos"] = certInfosList
117+
}
118+
upstreamCertInfoMap["upstream_mutual_tls"] = []interface{}{upstreamMutualTLSMap}
119+
}
120+
121+
_ = d.Set("upstream_cert_info", []interface{}{upstreamCertInfoMap})
122+
}
123+
75124
if certificate.Mode != nil {
76125
_ = d.Set("mode", certificate.Mode)
77126
}
@@ -155,6 +204,28 @@ func resourceTencentCloudTeoCertificateConfigUpdateOnStart(ctx context.Context)
155204
}
156205
}
157206

207+
if upstreamCertInfoMap, ok := helper.InterfacesHeadMap(d, "upstream_cert_info"); ok {
208+
upstreamCertInfo := teo.UpstreamCertInfo{}
209+
if upstreamMutualTLSMap, ok := helper.ConvertInterfacesHeadToMap(upstreamCertInfoMap["upstream_mutual_tls"]); ok {
210+
mutualTLS2 := teo.MutualTLS{}
211+
if v, ok := upstreamMutualTLSMap["switch"].(string); ok && v != "" {
212+
mutualTLS2.Switch = helper.String(v)
213+
}
214+
if v, ok := upstreamMutualTLSMap["cert_infos"]; ok {
215+
for _, item := range v.([]interface{}) {
216+
certInfosMap := item.(map[string]interface{})
217+
certificateInfo := teo.CertificateInfo{}
218+
if v, ok := certInfosMap["cert_id"].(string); ok && v != "" {
219+
certificateInfo.CertId = helper.String(v)
220+
}
221+
mutualTLS2.CertInfos = append(mutualTLS2.CertInfos, &certificateInfo)
222+
}
223+
}
224+
upstreamCertInfo.UpstreamMutualTLS = &mutualTLS2
225+
}
226+
request.UpstreamCertInfo = &upstreamCertInfo
227+
}
228+
158229
if v, ok := d.GetOk("mode"); ok {
159230
request.Mode = helper.String(v.(string))
160231
}

vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo/v20220901/client.go

Lines changed: 52 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo/v20220901/errors.go

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)