Skip to content

Commit 38a00b0

Browse files
authored
fix(teo): [123456789] teo rule origin pull protocol (#3538)
* fix: support origin_pull_protocol * feat: support origin_pull_protocol_parameters * feat: add changelog
1 parent f5ad450 commit 38a00b0

File tree

11 files changed

+512
-17
lines changed

11 files changed

+512
-17
lines changed

.changelog/3538.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_l7_acc_rule_v2: support `origin_pull_protocol_parameters` 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.35
49+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.36
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.27
93+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.36
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: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -941,21 +941,22 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.5/go.mod h1
941941
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.7/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
942942
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.13/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
943943
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.14/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
944-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.27/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
945-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.30 h1:zUdoyFU3E5IuCMsH6joN+8mMNEh+C/x+BBxN5j59JPg=
946-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.30/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
947-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.31 h1:PKa4c2BLYbW5LUOWGNXt20+rV9L8JnLqBXZjnOXsHKQ=
948-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.31/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
949-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.27 h1:FG3AiNSNW5tG+mtTSE+dBc5ZhHwlYUW0Z6oSkfAWV0A=
950-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.27/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
951944
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.22 h1:1unTmvNXynDN0mOZSWh9tL5Wp9Rb5paMGwFvua+HHoI=
952945
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.22/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
953946
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.23 h1:YZOxepoaH/yNaD1sYpCXR6PuFd22hbKdlXAGXWre8aM=
954947
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.23/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
955948
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.25 h1:bTN1RYwKti9GX4qdI/yd+ybh0QY/BkoGSG+wgArS0L8=
956949
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.25/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
950+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.27 h1:FG3AiNSNW5tG+mtTSE+dBc5ZhHwlYUW0Z6oSkfAWV0A=
951+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.27/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
952+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.30 h1:zUdoyFU3E5IuCMsH6joN+8mMNEh+C/x+BBxN5j59JPg=
953+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.30/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
954+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.31 h1:PKa4c2BLYbW5LUOWGNXt20+rV9L8JnLqBXZjnOXsHKQ=
955+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.31/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
957956
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.35 h1:gcnqnP30UeTFn1Jm1yMiAOlX7x1r12KAQ3cNIQTg/Gc=
958957
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.35/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
958+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.36 h1:9zBwuj7prOhpObcw8idPnTn78TbNeK2RfAYoUaB6O/o=
959+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.36/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
959960
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993 h1:WlPgXldQCxt7qi5Xrc6j6zTrsXWzN5BcOGs7Irq7fwQ=
960961
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993/go.mod h1:Z9U8zNtyuyKhjS0698wqsrG/kLx1TQ5CEixXBwVe7xY=
961962
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/csip v1.0.860 h1:F3esKBIT3HW9+7Gt8cVgf8X06VdGIczpgLBUECzSEzU=
@@ -1067,6 +1068,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tem v1.0.578 h1:vBpQhUr
10671068
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tem v1.0.578/go.mod h1:UlojGQh/9wb7/uXPNi7PvMral1CNAskVDNgqJEV83l0=
10681069
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.27 h1:vcQitUadhSZi40x1cscUvNHId4Un2xnQFIE2IxvZU70=
10691070
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.27/go.mod h1:2+6+xYfcJa8mO8tMljGjGCvhluPGjhRhlIv1jZK6y6c=
1071+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.36 h1:BTtKtN6YumpmOinUGQQI0o51VHucvszxbV7NRzeNUFs=
1072+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.1.36/go.mod h1:eGP3bdq20leDIC2Wrv+EpDDNRxHnGI16jPr6uRZvwDE=
10701073
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998 h1:f4/n0dVKQTD06xJ84B5asHViNJHrZmGojdAWEPIsITM=
10711074
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998/go.mod h1:fyi/HUwCwVe2NCCCjz8k/C5GwPu3QazCZO+OBJ3MhLk=
10721075
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.1.14 h1:Us7MGqMmPdyAQL5jSQPuS4t3Yq5rbVdLP+/rtgEJnRs=

tencentcloud/services/teo/resource_tc_teo_l7_acc_rule_extension.go

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -566,6 +566,21 @@ func TencentTeoL7RuleBranchBasicInfo(depth int) map[string]*schema.Schema {
566566
},
567567
},
568568
},
569+
"origin_pull_protocol_parameters": {
570+
Type: schema.TypeList,
571+
Optional: true,
572+
MaxItems: 1,
573+
Description: "Back-to-origin HTTPS configuration parameter. This parameter is required when the Name value is `OriginPullProtocol`.",
574+
Elem: &schema.Resource{
575+
Schema: map[string]*schema.Schema{
576+
"protocol": {
577+
Type: schema.TypeString,
578+
Optional: true,
579+
Description: "Back-to-origin protocol configuration. Possible values are: `http`: use HTTP protocol for back-to-origin; `https`: use HTTPS protocol for back-to-origin; `follow`: follow the protocol.",
580+
},
581+
},
582+
},
583+
},
569584
"compression_parameters": {
570585
Type: schema.TypeList,
571586
Optional: true,
@@ -1396,6 +1411,13 @@ func resourceTencentCloudTeoL7AccRuleGetBranchs(rulesMap map[string]interface{})
13961411
}
13971412
ruleEngineAction.ForceRedirectHTTPSParameters = &forceRedirectHTTPSParameters
13981413
}
1414+
if originPullProtocolParametersMap, ok := helper.ConvertInterfacesHeadToMap(actionsMap["origin_pull_protocol_parameters"]); ok {
1415+
originPullProtocolParameters := teov20220901.OriginPullProtocolParameters{}
1416+
if v, ok := originPullProtocolParametersMap["protocol"].(string); ok && v != "" {
1417+
originPullProtocolParameters.Protocol = helper.String(v)
1418+
}
1419+
ruleEngineAction.OriginPullProtocolParameters = &originPullProtocolParameters
1420+
}
13991421
if compressionParametersMap, ok := helper.ConvertInterfacesHeadToMap(actionsMap["compression_parameters"]); ok {
14001422
compressionParameters := teov20220901.CompressionParameters{}
14011423
if v, ok := compressionParametersMap["switch"].(string); ok && v != "" {
@@ -2088,6 +2110,16 @@ func resourceTencentCloudTeoL7AccRuleSetBranchs(ruleBranches []*teo.RuleBranch)
20882110
actionsMap["force_redirect_https_parameters"] = []interface{}{forceRedirectHTTPSParametersMap}
20892111
}
20902112

2113+
originPullProtocolParametersMap := map[string]interface{}{}
2114+
2115+
if actions.OriginPullProtocolParameters != nil {
2116+
if actions.OriginPullProtocolParameters.Protocol != nil {
2117+
originPullProtocolParametersMap["protocol"] = actions.OriginPullProtocolParameters.Protocol
2118+
}
2119+
2120+
actionsMap["origin_pull_protocol_parameters"] = []interface{}{originPullProtocolParametersMap}
2121+
}
2122+
20912123
compressionParametersMap := map[string]interface{}{}
20922124

20932125
if actions.CompressionParameters != nil {

tencentcloud/services/teo/resource_tc_teo_l7_acc_rule_v2_test.go

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ func TestAccTencentCloudTeoL7AccRuleV2Resource_basic(t *testing.T) {
1717
Config: testAccTeoL7V2AccRule,
1818
Check: resource.ComposeTestCheckFunc(
1919
resource.TestCheckResourceAttrSet("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "id"),
20-
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "zone_id", "zone-39quuimqg8r6"),
20+
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "zone_id", "zone-3fkff38fyw8s"),
2121
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "description.#", "1"),
2222
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "rule_name", "网站加速1"),
2323
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "status", "enable"),
@@ -63,9 +63,11 @@ func TestAccTencentCloudTeoL7AccRuleV2Resource_basic(t *testing.T) {
6363
Check: resource.ComposeTestCheckFunc(
6464
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "description.0", "2"),
6565
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "rule_name", "网站加速2"),
66-
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "branches.0.actions.#", "1"),
66+
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "branches.0.actions.#", "2"),
6767
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "branches.0.sub_rules.#", "1"),
68-
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "branches.0.sub_rules.0.description.0", "01-1"),
68+
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "branches.0.actions.1.name", "OriginPullProtocol"),
69+
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "branches.0.actions.1.origin_pull_protocol_parameters.#", "1"),
70+
resource.TestCheckResourceAttr("tencentcloud_teo_l7_acc_rule_v2.teo_l7_acc_rule_v2", "branches.0.actions.1.origin_pull_protocol_parameters.0.protocol", "https"),
6971
),
7072
},
7173
{
@@ -79,7 +81,7 @@ func TestAccTencentCloudTeoL7AccRuleV2Resource_basic(t *testing.T) {
7981

8082
const testAccTeoL7V2AccRule = `
8183
resource "tencentcloud_teo_l7_acc_rule_v2" "teo_l7_acc_rule_v2" {
82-
zone_id = "zone-39quuimqg8r6"
84+
zone_id = "zone-3fkff38fyw8s"
8385
description = ["1"]
8486
rule_name = "网站加速1"
8587
status = "enable"
@@ -142,7 +144,7 @@ resource "tencentcloud_teo_l7_acc_rule_v2" "teo_l7_acc_rule_v2" {
142144

143145
const testAccTeoL7V2AccRuleUpdate = `
144146
resource "tencentcloud_teo_l7_acc_rule_v2" "teo_l7_acc_rule_v2" {
145-
zone_id = "zone-39quuimqg8r6"
147+
zone_id = "zone-3fkff38fyw8s"
146148
description = ["2"]
147149
rule_name = "网站加速2"
148150
status = "enable"
@@ -158,6 +160,12 @@ resource "tencentcloud_teo_l7_acc_rule_v2" "teo_l7_acc_rule_v2" {
158160
}
159161
}
160162
}
163+
actions {
164+
name = "OriginPullProtocol"
165+
origin_pull_protocol_parameters {
166+
protocol = "https"
167+
}
168+
}
161169
162170
sub_rules {
163171
description = ["01-1"]

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.

0 commit comments

Comments
 (0)