Skip to content

Commit bee82fc

Browse files
tongyimingmikatong
and
mikatong
authored
fix(cdwch): [122484233]update demo (#3242)
* update demo * add changelog --------- Co-authored-by: mikatong <[email protected]>
1 parent c166e25 commit bee82fc

File tree

4 files changed

+249
-66
lines changed

4 files changed

+249
-66
lines changed

.changelog/3242.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_clickhouse_instance: update demo
3+
```

tencentcloud/services/cdwch/resource_tc_clickhouse_instance.md

Lines changed: 88 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -3,50 +3,110 @@ Provides a resource to create a clickhouse instance.
33
Example Usage
44

55
```hcl
6+
variable "availability_zone" {
7+
default = "ap-guangzhou-6"
8+
}
9+
10+
data "tencentcloud_clickhouse_spec" "spec" {
11+
zone = var.availability_zone
12+
pay_mode = "POSTPAID_BY_HOUR"
13+
is_elastic = false
14+
}
15+
16+
locals {
17+
data_spec = [for i in data.tencentcloud_clickhouse_spec.spec.data_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
18+
data_spec_name_4c16m = local.data_spec.0.name
19+
common_spec = [for i in data.tencentcloud_clickhouse_spec.spec.common_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
20+
common_spec_name_4c16m = local.common_spec.0.name
21+
}
22+
23+
resource "tencentcloud_vpc" "vpc" {
24+
name = "cdwch-vpc"
25+
cidr_block = "10.0.0.0/16"
26+
}
27+
28+
resource "tencentcloud_subnet" "subnet" {
29+
vpc_id = tencentcloud_vpc.vpc.id
30+
name = "cdwch-subnet"
31+
cidr_block = "10.0.0.0/16"
32+
availability_zone = var.availability_zone
33+
is_multicast = false
34+
}
35+
636
resource "tencentcloud_clickhouse_instance" "cdwch_instance" {
7-
zone="ap-guangzhou-6"
8-
ha_flag=true
9-
vpc_id="vpc-xxxxxx"
10-
subnet_id="subnet-xxxxxx"
11-
product_version="21.8.12.29"
37+
zone = var.availability_zone
38+
ha_flag = true
39+
vpc_id = tencentcloud_vpc.vpc.id
40+
subnet_id = tencentcloud_subnet.subnet.id
41+
product_version = "21.8.12.29"
1242
data_spec {
13-
spec_name="SCH6"
14-
count=2
15-
disk_size=300
43+
spec_name = local.data_spec_name_4c16m
44+
count = 2
45+
disk_size = 300
1646
}
1747
common_spec {
18-
spec_name="SCH6"
19-
count=3
20-
disk_size=300
48+
spec_name = local.common_spec_name_4c16m
49+
count = 3
50+
disk_size = 300
2151
}
22-
charge_type="POSTPAID_BY_HOUR"
23-
instance_name="tf-test-clickhouse"
52+
charge_type = "POSTPAID_BY_HOUR"
53+
instance_name = "tf-test-clickhouse"
2454
}
2555
```
2656

2757
PREPAID instance
2858

2959
```hcl
60+
variable "availability_zone" {
61+
default = "ap-guangzhou-6"
62+
}
63+
64+
data "tencentcloud_clickhouse_spec" "spec" {
65+
zone = var.availability_zone
66+
pay_mode = "POSTPAID_BY_HOUR"
67+
is_elastic = false
68+
}
69+
70+
locals {
71+
data_spec = [for i in data.tencentcloud_clickhouse_spec.spec.data_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
72+
data_spec_name_4c16m = local.data_spec.0.name
73+
common_spec = [for i in data.tencentcloud_clickhouse_spec.spec.common_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
74+
common_spec_name_4c16m = local.common_spec.0.name
75+
}
76+
77+
resource "tencentcloud_vpc" "vpc" {
78+
name = "cdwch-vpc"
79+
cidr_block = "10.0.0.0/16"
80+
}
81+
82+
resource "tencentcloud_subnet" "subnet" {
83+
vpc_id = tencentcloud_vpc.vpc.id
84+
name = "cdwch-subnet"
85+
cidr_block = "10.0.0.0/16"
86+
availability_zone = var.availability_zone
87+
is_multicast = false
88+
}
89+
3090
resource "tencentcloud_clickhouse_instance" "cdwch_instance_prepaid" {
31-
zone="ap-guangzhou-6"
32-
ha_flag=true
33-
vpc_id="vpc-xxxxxx"
34-
subnet_id="subnet-xxxxxx"
35-
product_version="21.8.12.29"
91+
zone = var.availability_zone
92+
ha_flag = true
93+
vpc_id = tencentcloud_vpc.vpc.id
94+
subnet_id = tencentcloud_subnet.subnet.id
95+
product_version = "21.8.12.29"
3696
data_spec {
37-
spec_name="SCH6"
38-
count=2
39-
disk_size=300
97+
spec_name = local.data_spec_name_4c16m
98+
count = 2
99+
disk_size = 300
40100
}
41101
common_spec {
42-
spec_name="SCH6"
43-
count=3
44-
disk_size=300
102+
spec_name = local.common_spec_name_4c16m
103+
count = 3
104+
disk_size = 300
45105
}
46-
charge_type="PREPAID"
47-
renew_flag=1
48-
time_span=1
49-
instance_name="tf-test-clickhouse-prepaid"
106+
charge_type = "PREPAID"
107+
renew_flag = 1
108+
time_span = 1
109+
instance_name = "tf-test-clickhouse-prepaid"
50110
}
51111
```
52112

tencentcloud/services/cdwch/resource_tc_clickhouse_instance_test.go

Lines changed: 88 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -49,47 +49,107 @@ func TestAccTencentCloudClickhouseInstanceResource_prepaid(t *testing.T) {
4949
}
5050

5151
const testAccClickhouseInstanceBasic = `
52+
variable "availability_zone" {
53+
default = "ap-guangzhou-6"
54+
}
55+
56+
data "tencentcloud_clickhouse_spec" "spec" {
57+
zone = var.availability_zone
58+
pay_mode = "POSTPAID_BY_HOUR"
59+
is_elastic = false
60+
}
61+
62+
locals {
63+
data_spec = [for i in data.tencentcloud_clickhouse_spec.spec.data_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
64+
data_spec_name_4c16m = local.data_spec.0.name
65+
common_spec = [for i in data.tencentcloud_clickhouse_spec.spec.common_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
66+
common_spec_name_4c16m = local.common_spec.0.name
67+
}
68+
69+
resource "tencentcloud_vpc" "vpc" {
70+
name = "cdwch-vpc"
71+
cidr_block = "10.0.0.0/16"
72+
}
73+
74+
resource "tencentcloud_subnet" "subnet" {
75+
vpc_id = tencentcloud_vpc.vpc.id
76+
name = "cdwch-subnet"
77+
cidr_block = "10.0.0.0/16"
78+
availability_zone = var.availability_zone
79+
is_multicast = false
80+
}
81+
5282
resource "tencentcloud_clickhouse_instance" "cdwch_instance" {
53-
zone="ap-guangzhou-6"
54-
ha_flag=true
55-
vpc_id="vpc-j4u8r51f"
56-
subnet_id="subnet-nvb6lfti"
57-
product_version="21.8.12.29"
83+
zone = var.availability_zone
84+
ha_flag = true
85+
vpc_id = tencentcloud_vpc.vpc.id
86+
subnet_id = tencentcloud_subnet.subnet.id
87+
product_version = "21.8.12.29"
5888
data_spec {
59-
spec_name="SCH6"
60-
count=2
61-
disk_size=300
89+
spec_name = local.data_spec_name_4c16m
90+
count = 2
91+
disk_size = 300
6292
}
6393
common_spec {
64-
spec_name="SCH6"
65-
count=3
66-
disk_size=300
94+
spec_name = local.common_spec_name_4c16m
95+
count = 3
96+
disk_size = 300
6797
}
68-
charge_type="POSTPAID_BY_HOUR"
69-
instance_name="tf-test-clickhouse"
98+
charge_type = "POSTPAID_BY_HOUR"
99+
instance_name = "tf-test-clickhouse"
70100
}
71101
`
72102

73103
const testAccClickhouseInstancePrepaid = `
104+
variable "availability_zone" {
105+
default = "ap-guangzhou-6"
106+
}
107+
108+
data "tencentcloud_clickhouse_spec" "spec" {
109+
zone = var.availability_zone
110+
pay_mode = "POSTPAID_BY_HOUR"
111+
is_elastic = false
112+
}
113+
114+
locals {
115+
data_spec = [for i in data.tencentcloud_clickhouse_spec.spec.data_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
116+
data_spec_name_4c16m = local.data_spec.0.name
117+
common_spec = [for i in data.tencentcloud_clickhouse_spec.spec.common_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
118+
common_spec_name_4c16m = local.common_spec.0.name
119+
}
120+
121+
resource "tencentcloud_vpc" "vpc" {
122+
name = "cdwch-vpc"
123+
cidr_block = "10.0.0.0/16"
124+
}
125+
126+
resource "tencentcloud_subnet" "subnet" {
127+
vpc_id = tencentcloud_vpc.vpc.id
128+
name = "cdwch-subnet"
129+
cidr_block = "10.0.0.0/16"
130+
availability_zone = var.availability_zone
131+
is_multicast = false
132+
}
133+
74134
resource "tencentcloud_clickhouse_instance" "cdwch_instance_prepaid" {
75-
zone="ap-guangzhou-6"
76-
ha_flag=true
77-
vpc_id="vpc-j4u8r51f"
78-
subnet_id="subnet-nvb6lfti"
79-
product_version="21.8.12.29"
135+
zone = var.availability_zone
136+
ha_flag = true
137+
vpc_id = tencentcloud_vpc.vpc.id
138+
subnet_id = tencentcloud_subnet.subnet.id
139+
product_version = "21.8.12.29"
80140
data_spec {
81-
spec_name="SCH6"
82-
count=2
83-
disk_size=300
141+
spec_name = local.data_spec_name_4c16m
142+
count = 2
143+
disk_size = 300
84144
}
85145
common_spec {
86-
spec_name="SCH6"
87-
count=3
88-
disk_size=300
146+
spec_name = local.common_spec_name_4c16m
147+
count = 3
148+
disk_size = 300
89149
}
90-
charge_type="PREPAID"
91-
renew_flag=1
92-
time_span=1
93-
instance_name="tf-test-clickhouse-prepaid"
150+
charge_type = "PREPAID"
151+
renew_flag = 1
152+
time_span = 1
153+
instance_name = "tf-test-clickhouse-prepaid"
94154
}
95155
`

website/docs/r/clickhouse_instance.html.markdown

Lines changed: 70 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,49 @@ Provides a resource to create a clickhouse instance.
1414
## Example Usage
1515

1616
```hcl
17+
variable "availability_zone" {
18+
default = "ap-guangzhou-6"
19+
}
20+
21+
data "tencentcloud_clickhouse_spec" "spec" {
22+
zone = var.availability_zone
23+
pay_mode = "POSTPAID_BY_HOUR"
24+
is_elastic = false
25+
}
26+
27+
locals {
28+
data_spec = [for i in data.tencentcloud_clickhouse_spec.spec.data_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
29+
data_spec_name_4c16m = local.data_spec.0.name
30+
common_spec = [for i in data.tencentcloud_clickhouse_spec.spec.common_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
31+
common_spec_name_4c16m = local.common_spec.0.name
32+
}
33+
34+
resource "tencentcloud_vpc" "vpc" {
35+
name = "cdwch-vpc"
36+
cidr_block = "10.0.0.0/16"
37+
}
38+
39+
resource "tencentcloud_subnet" "subnet" {
40+
vpc_id = tencentcloud_vpc.vpc.id
41+
name = "cdwch-subnet"
42+
cidr_block = "10.0.0.0/16"
43+
availability_zone = var.availability_zone
44+
is_multicast = false
45+
}
46+
1747
resource "tencentcloud_clickhouse_instance" "cdwch_instance" {
18-
zone = "ap-guangzhou-6"
48+
zone = var.availability_zone
1949
ha_flag = true
20-
vpc_id = "vpc-xxxxxx"
21-
subnet_id = "subnet-xxxxxx"
50+
vpc_id = tencentcloud_vpc.vpc.id
51+
subnet_id = tencentcloud_subnet.subnet.id
2252
product_version = "21.8.12.29"
2353
data_spec {
24-
spec_name = "SCH6"
54+
spec_name = local.data_spec_name_4c16m
2555
count = 2
2656
disk_size = 300
2757
}
2858
common_spec {
29-
spec_name = "SCH6"
59+
spec_name = local.common_spec_name_4c16m
3060
count = 3
3161
disk_size = 300
3262
}
@@ -38,19 +68,49 @@ resource "tencentcloud_clickhouse_instance" "cdwch_instance" {
3868
### PREPAID instance
3969

4070
```hcl
71+
variable "availability_zone" {
72+
default = "ap-guangzhou-6"
73+
}
74+
75+
data "tencentcloud_clickhouse_spec" "spec" {
76+
zone = var.availability_zone
77+
pay_mode = "POSTPAID_BY_HOUR"
78+
is_elastic = false
79+
}
80+
81+
locals {
82+
data_spec = [for i in data.tencentcloud_clickhouse_spec.spec.data_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
83+
data_spec_name_4c16m = local.data_spec.0.name
84+
common_spec = [for i in data.tencentcloud_clickhouse_spec.spec.common_spec : i if lookup(i, "cpu") == 4 && lookup(i, "mem") == 16]
85+
common_spec_name_4c16m = local.common_spec.0.name
86+
}
87+
88+
resource "tencentcloud_vpc" "vpc" {
89+
name = "cdwch-vpc"
90+
cidr_block = "10.0.0.0/16"
91+
}
92+
93+
resource "tencentcloud_subnet" "subnet" {
94+
vpc_id = tencentcloud_vpc.vpc.id
95+
name = "cdwch-subnet"
96+
cidr_block = "10.0.0.0/16"
97+
availability_zone = var.availability_zone
98+
is_multicast = false
99+
}
100+
41101
resource "tencentcloud_clickhouse_instance" "cdwch_instance_prepaid" {
42-
zone = "ap-guangzhou-6"
102+
zone = var.availability_zone
43103
ha_flag = true
44-
vpc_id = "vpc-xxxxxx"
45-
subnet_id = "subnet-xxxxxx"
104+
vpc_id = tencentcloud_vpc.vpc.id
105+
subnet_id = tencentcloud_subnet.subnet.id
46106
product_version = "21.8.12.29"
47107
data_spec {
48-
spec_name = "SCH6"
108+
spec_name = local.data_spec_name_4c16m
49109
count = 2
50110
disk_size = 300
51111
}
52112
common_spec {
53-
spec_name = "SCH6"
113+
spec_name = local.common_spec_name_4c16m
54114
count = 3
55115
disk_size = 300
56116
}

0 commit comments

Comments
 (0)