Skip to content

Commit b484bfa

Browse files
authored
Fix/monitor exporter integration update (#1320)
* fix: Modify field undefined problem * fix: tke monitor sdk upgrade * fix: update unit * fix: update exporter_integration * fix: update exporter_integration * fix: update exporter_integration * fix: update exporter_integration * fix: update exporter_integration * fix: merge master * fix: update exporter_integration * fix: Modify field undefined problem * fix: Modify field undefined problem * fix: add changelog * fix: update changelog Co-authored-by: arunma <arunma@tencent.com>
1 parent 8470b8f commit b484bfa

File tree

15 files changed

+741
-101
lines changed

15 files changed

+741
-101
lines changed

.changelog/1320.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_monitor_tmp_exporter_integration: support cluster initialization
3+
```

go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ require (
3434
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.445
3535
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit v1.0.199
3636
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.412
37-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.515
37+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.519
3838
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.445
3939
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.488
4040
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dayu v1.0.335
@@ -47,7 +47,7 @@ require (
4747
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/kms v1.0.199
4848
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/lighthouse v1.0.413
4949
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.199
50-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.494
50+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.518
5151
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.391
5252
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.290
5353
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.490
@@ -62,7 +62,7 @@ require (
6262
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tdmq v1.0.268
6363
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tem v1.0.472
6464
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.0.500
65-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.489
65+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.519
6666
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.199
6767
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.515
6868
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wss v1.0.199

go.sum

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -498,6 +498,12 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.503/go.mod
498498
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.514/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
499499
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.515 h1:00k2TZVyhjggGSiAOezadymUA3ImlOq5xz8NrZJCDWs=
500500
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.515/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
501+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.517 h1:s0/O60BswNrnV/gItvJ+QP4p9GsNWJujM3ZSiKsnLb4=
502+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.517/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
503+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.518 h1:RI2cRKuBTPNsa7KZs1Z0j0I4B1ugseh4gu0TYIPseew=
504+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.518/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
505+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.519 h1:EuhhXQDmc2zTZmFMmZPWp6PaPIM/gnRcqqbRyFA6UGw=
506+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.519/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
501507
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.445 h1:Bh7XD0ypNMHYyBOM8hhKsSu+y0VVKUnJVS+YKKhfpGg=
502508
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.445/go.mod h1:jMDD351efCFpT1+KVFbcpu6SbmP4TYmp4qkoCfr63nQ=
503509
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.488 h1:A1seXWtMf2atBjSNYvcwxyDoFzCMgqyVnsxnWzhqJEA=
@@ -529,6 +535,10 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.199 h1:2js
529535
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.199/go.mod h1:f5GhbJyuYQBzRaDHGe3I4U9utb0Pmx2NlI+XcqSQRp0=
530536
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.494 h1:vc9AJ+u9hyYWg+/1jHsPsy6UzXKBbyOp0eOqG8KMyBc=
531537
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.494/go.mod h1:rxkByn6FRvdQmvhYTNL5JGO49qApmpRmHXTTRRB5YGc=
538+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.517 h1:yhjjDQSSo9G47R/BGL8a1CWBZQbrDjdDQ2MUCYmdBhA=
539+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.517/go.mod h1:Wj1+sAZpfAq13s/n2T2lHd97Fo2UqhLIXrFOE2Si9rY=
540+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.518 h1:XClo3Xa5F9pko91olHT85aZXXcRkQiOYBCMqm8+tHG8=
541+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.518/go.mod h1:WDTvvrrc90KE+90iizkoSQRsoSSQ3881eBC6NeypmTI=
532542
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.391 h1:1yZh5MrlFqawVGhLdd38hi5HoaKc4LgB+8cEgLT2Qo4=
533543
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.391/go.mod h1:BZSQiBjNQ+6/gL1fFXBr/0BOuPTdHmSYoIg4/AkmZB4=
534544
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.290 h1:osYZxh9ApEc8UpvIMwjAUfdl7ytRcWUpcnnqLIpiJ/U=
@@ -565,6 +575,12 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.480 h1:oZptW2F
565575
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.480/go.mod h1:rs+BUoY53xfiE5sRsVk2RpsjgzODtq52xiBTc6WTWWM=
566576
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.489 h1:61QTzF5vjDthscsPh2WGL1bLlmOjIJ6PB2+pIihzeTI=
567577
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.489/go.mod h1:ECfO9sL5b6ZDhQWx2k85JtrCWOC3kH1KFw00TGlBL6Y=
578+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.517 h1:bwTmL3SvsC7HNPSzA4OqzEmB9qAGCeFaujKdBypZMvM=
579+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.517/go.mod h1:WIzYtjaZHbXe0+qyZ1r+DurpqefjY+V6dyy5qOW9wlo=
580+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.518 h1:DvPvATNz3xZuvw3wGESTxMMJEqlAB9lo35e7YLqYvOo=
581+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.518/go.mod h1:CyOeomGpHSZjL13JoqUnryEll7Uup2BnxI/NotKe3k4=
582+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.519 h1:o8NsQPLV6T8TD4sHxufCwtCsqYM4CUM1132zut6toww=
583+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.519/go.mod h1:ydWSzYKc8AwtT9I8Cd0JdICqiyp9h+u2J5maDWxC9Mo=
568584
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.199 h1:6Yt74l4pA5QtzhwMNIEUt0spXdSBKH744DDqTHJOCP0=
569585
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.199/go.mod h1:Yw6OQ33z3s4k0HVYTNSffB12qOzEJ2Zf1Vj4+5S3sRs=
570586
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.479 h1:eArkuh12SjyaHaKDNfF2oLjkY3f8SnuazgM/2dV9hcA=

tencentcloud/resource_tc_monitor_tmp_exporter_integration.go

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ import (
2222
"strconv"
2323
"strings"
2424

25+
tke "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20180525"
26+
2527
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
2628
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
2729
monitor "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor/v20180724"
@@ -110,7 +112,45 @@ func resourceTencentCloudMonitorTmpExporterIntegrationCreate(d *schema.ResourceD
110112
request.ClusterId = helper.String(clusterId)
111113
}
112114

113-
err := resource.Retry(writeRetryTimeout, func() *resource.RetryError {
115+
initStatus := tke.NewDescribePrometheusInstanceInitStatusRequest()
116+
initStatus.InstanceId = request.InstanceId
117+
err := resource.Retry(8*readRetryTimeout, func() *resource.RetryError {
118+
results, errRet := meta.(*TencentCloudClient).apiV3Conn.UseTkeClient().DescribePrometheusInstanceInitStatus(initStatus)
119+
if errRet != nil {
120+
return retryError(errRet, InternalError)
121+
}
122+
status := results.Response.Status
123+
if status == nil {
124+
return resource.NonRetryableError(fmt.Errorf("prometheusInstanceInit status is nil, operate failed"))
125+
}
126+
if *status == "running" {
127+
return nil
128+
}
129+
if *status == "uninitialized" {
130+
iniRequest := tke.NewRunPrometheusInstanceRequest()
131+
iniRequest.InstanceId = request.InstanceId
132+
err := resource.Retry(writeRetryTimeout, func() *resource.RetryError {
133+
result, e := meta.(*TencentCloudClient).apiV3Conn.UseTkeClient().RunPrometheusInstance(iniRequest)
134+
if e != nil {
135+
return retryError(e)
136+
} else {
137+
log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n",
138+
logId, request.GetAction(), request.ToJsonString(), result.ToJsonString())
139+
}
140+
return nil
141+
})
142+
if err != nil {
143+
return resource.NonRetryableError(fmt.Errorf("prometheusInstanceInit error %v, operate failed", err))
144+
}
145+
return resource.RetryableError(fmt.Errorf("prometheusInstance initializing, retry..."))
146+
}
147+
return resource.RetryableError(fmt.Errorf("prometheusInstanceInit status is %v, retry...", *status))
148+
})
149+
if err != nil {
150+
return err
151+
}
152+
153+
err = resource.Retry(writeRetryTimeout, func() *resource.RetryError {
114154
result, e := meta.(*TencentCloudClient).apiV3Conn.UseMonitorClient().CreateExporterIntegration(request)
115155
if e != nil {
116156
return retryError(e)

tencentcloud/resource_tc_monitor_tmp_exporter_integration_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ func testSweepExporterIntegration(region string) error {
3838
}
3939

4040
if instances == nil {
41-
return nil
41+
break
4242
}
4343

4444
id := strings.Join([]string{*instances.Name, instanceId, strconv.Itoa(1), clusterId, defaultKind}, FILED_SP)
@@ -47,6 +47,7 @@ func testSweepExporterIntegration(region string) error {
4747
return err
4848
}
4949
}
50+
return nil
5051
}
5152

5253
func TestAccTencentCloudMonitorExporterIntegration_basic(t *testing.T) {

tencentcloud/resource_tc_monitor_tmp_tke_cluster_agent.go

Lines changed: 21 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -337,22 +337,27 @@ func resourceTencentCloudMonitorTmpTkeClusterAgentRead(d *schema.ResourceData, m
337337
return fmt.Errorf("resource `global_notification` %s does not exist", instanceId)
338338
}
339339

340-
_ = d.Set("cluster_id", clusterAgent.ClusterId)
341-
_ = d.Set("cluster_type", clusterAgent.ClusterType)
342-
_ = d.Set("status", clusterAgent.Status)
343-
_ = d.Set("cluster_name", clusterAgent.ClusterName)
344-
if clusterAgent.ExternalLabels != nil {
345-
clusterAgentList := clusterAgent.ExternalLabels
346-
result := make([]map[string]interface{}, 0, len(clusterAgentList))
347-
for _, v := range clusterAgentList {
348-
mapping := map[string]interface{}{
349-
"name": v.Name,
350-
"value": v.Value,
351-
}
352-
result = append(result, mapping)
353-
}
354-
_ = d.Set("external_labels", result)
355-
}
340+
var agents []map[string]interface{}
341+
agent := make(map[string]interface{})
342+
agent["cluster_id"] = clusterAgent.ClusterId
343+
agent["cluster_type"] = clusterAgent.ClusterType
344+
agent["status"] = clusterAgent.Status
345+
agent["cluster_name"] = clusterAgent.ClusterName
346+
agent["region"] = clusterAgent.Region
347+
//if clusterAgent.ExternalLabels != nil {
348+
// clusterAgentList := clusterAgent.ExternalLabels
349+
// result := make([]map[string]interface{}, 0, len(clusterAgentList))
350+
// for _, v := range clusterAgentList {
351+
// mapping := map[string]interface{}{
352+
// "name": v.Name,
353+
// "value": v.Value,
354+
// }
355+
// result = append(result, mapping)
356+
// }
357+
// agent["external_labels"] = result
358+
//}
359+
agents = append(agents, agent)
360+
_ = d.Set("agents", agents)
356361

357362
return nil
358363
}

tencentcloud/resource_tc_monitor_tmp_tke_config.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ resource "tencentcloud_monitor_tmp_tke_config" "foo" {
3131
package tencentcloud
3232

3333
import (
34+
"context"
3435
"fmt"
3536
"log"
3637
"strings"
@@ -153,11 +154,12 @@ func resourceTencentCloudTkeTmpConfigRead(d *schema.ResourceData, meta interface
153154

154155
var (
155156
logId = getLogId(contextNil)
157+
ctx = context.WithValue(context.TODO(), logIdKey, logId)
156158
service = TkeService{client: meta.(*TencentCloudClient).apiV3Conn}
157159
configId = d.Id()
158160
)
159161

160-
params, err := service.DescribeTkeTmpConfigById(logId, configId)
162+
params, err := service.DescribeTkeTmpConfigById(ctx, configId)
161163

162164
if err != nil {
163165
return err
@@ -288,6 +290,7 @@ func resourceTencentCloudTkeTmpConfigDelete(d *schema.ResourceData, meta interfa
288290

289291
var (
290292
logId = getLogId(contextNil)
293+
ctx = context.WithValue(context.TODO(), logIdKey, logId)
291294
service = TkeService{client: meta.(*TencentCloudClient).apiV3Conn}
292295
ServiceMonitors = []*string{}
293296
PodMonitors = []*string{}
@@ -306,7 +309,7 @@ func resourceTencentCloudTkeTmpConfigDelete(d *schema.ResourceData, meta interfa
306309
RawJobs = serializePromConfigItemNames(v)
307310
}
308311

309-
if err := service.DeleteTkeTmpConfigByName(logId, d.Id(), ServiceMonitors, PodMonitors, RawJobs); err != nil {
312+
if err := service.DeleteTkeTmpConfigByName(ctx, d.Id(), ServiceMonitors, PodMonitors, RawJobs); err != nil {
310313
return err
311314
}
312315

tencentcloud/resource_tc_monitor_tmp_tke_config_test.go

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package tencentcloud
22

33
import (
4+
"context"
45
"fmt"
56
"strings"
67
"testing"
@@ -17,13 +18,14 @@ func init() {
1718
Name: "tencentcloud_monitor_tmp_tke_config",
1819
F: func(r string) error {
1920
logId := getLogId(contextNil)
21+
ctx := context.WithValue(context.TODO(), logIdKey, logId)
2022
cli, _ := sharedClientForRegion(r)
2123
client := cli.(*TencentCloudClient).apiV3Conn
2224
configId := packConfigId(defaultPrometheusId, defaultTkeClusterType, defaultTkeClusterId)
2325

2426
service := TkeService{client}
2527

26-
promConfigs, err := service.DescribeTkeTmpConfigById(logId, configId)
28+
promConfigs, err := service.DescribeTkeTmpConfigById(ctx, configId)
2729

2830
if err != nil {
2931
return err
@@ -36,7 +38,10 @@ func init() {
3638
ServiceMonitors := transObj2StrNames(promConfigs.ServiceMonitors)
3739
PodMonitors := transObj2StrNames(promConfigs.PodMonitors)
3840
RawJobs := transObj2StrNames(promConfigs.RawJobs)
39-
_ = service.DeleteTkeTmpConfigByName(logId, configId, ServiceMonitors, PodMonitors, RawJobs)
41+
err = service.DeleteTkeTmpConfigByName(ctx, configId, ServiceMonitors, PodMonitors, RawJobs)
42+
if err != nil {
43+
return err
44+
}
4045

4146
return nil
4247
},
@@ -45,17 +50,15 @@ func init() {
4550

4651
func TestAccTencentCloudMonitorTmpTkeConfig_basic(t *testing.T) {
4752
t.Parallel()
48-
id := new(string)
49-
5053
resource.Test(t, resource.TestCase{
5154
PreCheck: func() { testAccPreCheckCommon(t, ACCOUNT_TYPE_COMMON) },
5255
Providers: testAccProviders,
53-
CheckDestroy: testAccCheckTmpTkeConfigDestroy(id),
56+
CheckDestroy: testAccCheckTmpTkeConfigDestroy,
5457
Steps: []resource.TestStep{
5558
{
5659
Config: testAccTmpTkeConfig_basic,
5760
Check: resource.ComposeTestCheckFunc(
58-
testAccCheckTmpTkeConfigExists("tencentcloud_monitor_tmp_tke_config.basic", id),
61+
testAccCheckTmpTkeConfigExists("tencentcloud_monitor_tmp_tke_config.basic"),
5962
resource.TestCheckResourceAttr("tencentcloud_monitor_tmp_tke_config.basic", "instance_id", defaultPrometheusId),
6063
resource.TestCheckResourceAttr("tencentcloud_monitor_tmp_tke_config.basic", "cluster_type", defaultTkeClusterType),
6164
resource.TestCheckResourceAttr("tencentcloud_monitor_tmp_tke_config.basic", "cluster_id", defaultTkeClusterId),
@@ -67,7 +70,7 @@ func TestAccTencentCloudMonitorTmpTkeConfig_basic(t *testing.T) {
6770
{
6871
Config: testAccTmpTkeConfig_update,
6972
Check: resource.ComposeTestCheckFunc(
70-
testAccCheckTmpTkeConfigExists("tencentcloud_monitor_tmp_tke_config.update", id),
73+
testAccCheckTmpTkeConfigExists("tencentcloud_monitor_tmp_tke_config.update"),
7174
resource.TestCheckResourceAttr("tencentcloud_monitor_tmp_tke_config.update", "instance_id", defaultPrometheusId),
7275
resource.TestCheckResourceAttr("tencentcloud_monitor_tmp_tke_config.update", "cluster_type", defaultTkeClusterType),
7376
resource.TestCheckResourceAttr("tencentcloud_monitor_tmp_tke_config.update", "cluster_id", defaultTkeClusterId),
@@ -80,14 +83,16 @@ func TestAccTencentCloudMonitorTmpTkeConfig_basic(t *testing.T) {
8083
})
8184
}
8285

83-
func testAccCheckTmpTkeConfigDestroy(configId *string) resource.TestCheckFunc {
84-
return func(s *terraform.State) error {
85-
logId := getLogId(contextNil)
86-
client := testAccProvider.Meta().(*TencentCloudClient).apiV3Conn
87-
service := TkeService{client}
88-
89-
promConfigs, err := service.DescribeTkeTmpConfigById(logId, *configId)
86+
func testAccCheckTmpTkeConfigDestroy(s *terraform.State) error {
87+
logId := getLogId(contextNil)
88+
ctx := context.WithValue(context.TODO(), logIdKey, logId)
89+
service := TkeService{client: testAccProvider.Meta().(*TencentCloudClient).apiV3Conn}
90+
for _, rs := range s.RootModule().Resources {
91+
if rs.Type != "tencentcloud_monitor_tmp_tke_config" {
92+
continue
93+
}
9094

95+
promConfigs, err := service.DescribeTkeTmpConfigById(ctx, rs.Primary.ID)
9196
if err != nil {
9297
return err
9398
}
@@ -113,36 +118,32 @@ func testAccCheckTmpTkeConfigDestroy(configId *string) resource.TestCheckFunc {
113118
return errors.New("promConfigs raw_jobs still exists")
114119
}
115120
}
116-
117-
return nil
118121
}
122+
return nil
119123
}
120124

121-
func testAccCheckTmpTkeConfigExists(n string, id *string) resource.TestCheckFunc {
125+
func testAccCheckTmpTkeConfigExists(r string) resource.TestCheckFunc {
122126
return func(s *terraform.State) error {
123127
logId := getLogId(contextNil)
124-
client := testAccProvider.Meta().(*TencentCloudClient).apiV3Conn
125-
service := TkeService{client}
128+
ctx := context.WithValue(context.TODO(), logIdKey, logId)
126129

127-
rs, ok := s.RootModule().Resources[n]
130+
rs, ok := s.RootModule().Resources[r]
128131
if !ok {
129-
return fmt.Errorf("not found: %s", n)
132+
return fmt.Errorf("resource %s is not found", r)
130133
}
131-
132-
configId := rs.Primary.ID
133-
if configId == "" {
134-
return errors.New("no prometheus config ID is set")
134+
if rs.Primary.ID == "" {
135+
return fmt.Errorf("instance id is not set")
135136
}
136137

137-
promConfigs, err := service.DescribeTkeTmpConfigById(logId, configId)
138+
tkeService := TkeService{client: testAccProvider.Meta().(*TencentCloudClient).apiV3Conn}
139+
promConfigs, err := tkeService.DescribeTkeTmpConfigById(ctx, rs.Primary.ID)
138140
if err != nil {
139141
return err
140142
}
141143

142144
if promConfigs == nil || (len(promConfigs.ServiceMonitors) == 0 && len(promConfigs.PodMonitors) == 0 && len(promConfigs.RawJobs) == 0) {
143145
return fmt.Errorf("prometheus config not found: %s", rs.Primary.ID)
144146
}
145-
*id = configId
146147

147148
return nil
148149
}

tencentcloud/service_tencentcloud_tke.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1904,7 +1904,8 @@ func (me *TkeService) DeleteTkeTmpAlertPolicyById(ctx context.Context, instanceI
19041904
return
19051905
}
19061906

1907-
func (me *TkeService) DescribeTkeTmpConfigById(logId string, configId string) (respParams *tke.DescribePrometheusConfigResponseParams, errRet error) {
1907+
func (me *TkeService) DescribeTkeTmpConfigById(ctx context.Context, configId string) (respParams *tke.DescribePrometheusConfigResponseParams, errRet error) {
1908+
logId := getLogId(ctx)
19081909
request := tke.NewDescribePrometheusConfigRequest()
19091910

19101911
defer func() {
@@ -1943,7 +1944,8 @@ func (me *TkeService) DescribeTkeTmpConfigById(logId string, configId string) (r
19431944
return
19441945
}
19451946

1946-
func (me *TkeService) DeleteTkeTmpConfigByName(logId string, configId string, ServiceMonitors []*string, PodMonitors []*string, RawJobs []*string) (errRet error) {
1947+
func (me *TkeService) DeleteTkeTmpConfigByName(ctx context.Context, configId string, ServiceMonitors []*string, PodMonitors []*string, RawJobs []*string) (errRet error) {
1948+
logId := getLogId(ctx)
19471949
request := tke.NewDeletePrometheusConfigRequest()
19481950

19491951
defer func() {

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)