Skip to content

Commit c3b2b2c

Browse files
committed
add
1 parent 0ad1376 commit c3b2b2c

File tree

8 files changed

+1527
-1246
lines changed

8 files changed

+1527
-1246
lines changed

go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ require (
4343
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/chdfs v1.0.600
4444
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ciam v1.0.695
4545
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.1073
46-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.1107
46+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.1.55
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.3.4
49+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.55
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.1.52

go.sum

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -863,6 +863,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.1073 h1:+nT
863863
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.1073/go.mod h1:D9xdyB3utAtgGwTExSGxHSVQMfVHEUo/bfaBTxjHkao=
864864
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.1107 h1:sUiyGfYHzNpHKJx6DlRu1K8xBEGaWlOQT+8W5Ws0v4U=
865865
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.1107/go.mod h1:L1r6mc7XjFlyLlOVqRvPEhjXneHywnyjyv9EoiGBRvM=
866+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.1.55 h1:+Ev7tV+pjE/RZqHiopmYPKChF30OjRGn6KS8ubBByq8=
867+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.1.55/go.mod h1:EL80jbu+ubwrNnTZHsp+jaWat2fKGkS/B9MYB/42exA=
866868
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit v1.0.1033 h1:dIr+MVsZeUBiKZELfJh5HRJdI+BI6lCp5pv/2oXekuk=
867869
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit v1.0.1033/go.mod h1:7oFlNimGSTHFy6JV7W/IZKuJWr+NUjCnGLTvb9MWNrY=
868870
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.1148 h1:tPQHJE07DGCJWrQJklrkrF0CasB86M7AEb0PrkXNjAM=
@@ -935,10 +937,15 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.46/go.mod h
935937
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.48/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
936938
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.49/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
937939
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.50/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
940+
<<<<<<< HEAD
938941
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.52/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
939942
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.3/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
940943
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.4 h1:k8QEWznn11evs+N5ZGQMCCPnzAHxnul2mRIZJB8Lwbo=
941944
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.4/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
945+
=======
946+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.55 h1:8kT5ktFibG46S7WImjNkHx6N5b6vNFIVxPuj6rDMgb8=
947+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.55/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
948+
>>>>>>> 2e9465052 (add)
942949
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993 h1:WlPgXldQCxt7qi5Xrc6j6zTrsXWzN5BcOGs7Irq7fwQ=
943950
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993/go.mod h1:Z9U8zNtyuyKhjS0698wqsrG/kLx1TQ5CEixXBwVe7xY=
944951
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/csip v1.0.860 h1:F3esKBIT3HW9+7Gt8cVgf8X06VdGIczpgLBUECzSEzU=

tencentcloud/services/clb/resource_tc_clb_listener.go

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -293,6 +293,36 @@ func ResourceTencentCloudClbListener() *schema.Resource {
293293
Optional: true,
294294
Description: "Connection idle timeout period (in seconds). It's only available to TCP listeners. Value range: 300-900 for shared and dedicated instances; 300-2000 for LCU-supported CLB instances. It defaults to 900. To set a period longer than 2000 seconds (up to 3600 seconds). Please submit a work order for processing.",
295295
},
296+
"reschedule_target_zero_weight": {
297+
Type: schema.TypeBool,
298+
Computed: true,
299+
Optional: true,
300+
Description: "The rescheduling function, with a weight of 0 as a switch, triggers rescheduling when the weight of the backend server is set to 0. Only supported by TCP/UDP listeners.",
301+
},
302+
"reschedule_unhealthy": {
303+
Type: schema.TypeBool,
304+
Computed: true,
305+
Optional: true,
306+
Description: "Rescheduling function, health check exception switch. Enabling this switch triggers rescheduling when a backend server fails a health check. Supported only by TCP/UDP listeners.",
307+
},
308+
"reschedule_expand_target": {
309+
Type: schema.TypeBool,
310+
Computed: true,
311+
Optional: true,
312+
Description: "The rescheduling function, a switch for scaling backend services, triggers rescheduling when backend servers are added or removed. Only supported by TCP/UDP listeners.",
313+
},
314+
"reschedule_start_time": {
315+
Type: schema.TypeInt,
316+
Computed: true,
317+
Optional: true,
318+
Description: "Reschedule the trigger start time, with a value ranging from 0 to 3600 seconds. Only supported by TCP/UDP listeners.",
319+
},
320+
"reschedule_interval": {
321+
Type: schema.TypeInt,
322+
Computed: true,
323+
Optional: true,
324+
Description: "Rescheduled trigger duration, ranging from 0 to 3600 seconds. Supported only by TCP/UDP listeners.",
325+
},
296326
//computed
297327
"listener_id": {
298328
Type: schema.TypeString,
@@ -431,6 +461,26 @@ func resourceTencentCloudClbListenerCreate(d *schema.ResourceData, meta interfac
431461
request.IdleConnectTimeout = helper.IntInt64(v.(int))
432462
}
433463

464+
if v, ok := d.GetOkExists("reschedule_target_zero_weight"); ok {
465+
request.RescheduleTargetZeroWeight = helper.Bool(v.(bool))
466+
}
467+
468+
if v, ok := d.GetOkExists("reschedule_unhealthy"); ok {
469+
request.RescheduleUnhealthy = helper.Bool(v.(bool))
470+
}
471+
472+
if v, ok := d.GetOkExists("reschedule_expand_target"); ok {
473+
request.RescheduleExpandTarget = helper.Bool(v.(bool))
474+
}
475+
476+
if v, ok := d.GetOkExists("reschedule_start_time"); ok {
477+
request.RescheduleStartTime = helper.IntInt64(v.(int))
478+
}
479+
480+
if v, ok := d.GetOkExists("reschedule_interval"); ok {
481+
request.RescheduleInterval = helper.IntInt64(v.(int))
482+
}
483+
434484
var response *clb.CreateListenerResponse
435485
err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
436486
result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseClbClient().CreateListener(request)
@@ -652,6 +702,33 @@ func resourceTencentCloudClbListenerRead(d *schema.ResourceData, meta interface{
652702
_ = d.Set("idle_connect_timeout", instance.IdleConnectTimeout)
653703
}
654704

705+
if instance.RescheduleInterval != nil {
706+
_ = d.Set("reschedule_interval", instance.RescheduleInterval)
707+
}
708+
709+
if instance.RescheduleStartTime != nil {
710+
_ = d.Set("reschedule_start_time", instance.RescheduleStartTime)
711+
}
712+
713+
_ = d.Set("reschedule_target_zero_weight", false)
714+
_ = d.Set("reschedule_unhealthy", false)
715+
_ = d.Set("reschedule_expand_target", false)
716+
if instance.AttrFlags != nil {
717+
for _, item := range instance.AttrFlags {
718+
if item != nil && *item == "RescheduleTargetZeroWeight" {
719+
_ = d.Set("reschedule_target_zero_weight", true)
720+
}
721+
722+
if item != nil && *item == "RescheduleUnhealthy" {
723+
_ = d.Set("reschedule_unhealthy", true)
724+
}
725+
726+
if item != nil && *item == "RescheduleExpandTarget" {
727+
_ = d.Set("reschedule_expand_target", true)
728+
}
729+
}
730+
}
731+
655732
return nil
656733
}
657734

@@ -777,6 +854,41 @@ func resourceTencentCloudClbListenerUpdate(d *schema.ResourceData, meta interfac
777854
}
778855
}
779856

857+
if d.HasChange("reschedule_target_zero_weight") {
858+
changed = true
859+
if v, ok := d.GetOkExists("reschedule_target_zero_weight"); ok {
860+
request.RescheduleTargetZeroWeight = helper.Bool(v.(bool))
861+
}
862+
}
863+
864+
if d.HasChange("reschedule_unhealthy") {
865+
changed = true
866+
if v, ok := d.GetOkExists("reschedule_unhealthy"); ok {
867+
request.RescheduleUnhealthy = helper.Bool(v.(bool))
868+
}
869+
}
870+
871+
if d.HasChange("reschedule_expand_target") {
872+
changed = true
873+
if v, ok := d.GetOkExists("reschedule_expand_target"); ok {
874+
request.RescheduleExpandTarget = helper.Bool(v.(bool))
875+
}
876+
}
877+
878+
if d.HasChange("reschedule_start_time") {
879+
changed = true
880+
if v, ok := d.GetOkExists("reschedule_start_time"); ok {
881+
request.RescheduleStartTime = helper.IntInt64(v.(int))
882+
}
883+
}
884+
885+
if d.HasChange("reschedule_interval") {
886+
changed = true
887+
if v, ok := d.GetOkExists("reschedule_interval"); ok {
888+
request.RescheduleInterval = helper.IntInt64(v.(int))
889+
}
890+
}
891+
780892
if changed {
781893
err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
782894
response, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseClbClient().ModifyListener(request)

0 commit comments

Comments
 (0)