Skip to content

Commit dab2586

Browse files
tongyimingmikatong
andauthored
feat: support clickhouse instance (#1642)
* init * support clickhouse instance * add changelog * update --------- Co-authored-by: mikatong <mikatong@tencent.com>
1 parent 7748467 commit dab2586

File tree

16 files changed

+4503
-5
lines changed

16 files changed

+4503
-5
lines changed

.changelog/1642.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:new-resource
2+
tencentcloud_clickhouse_instance
3+
```

go.mod

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ require (
3434
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cbs v1.0.591
3535
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdb v1.0.699
3636
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.539
37+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdwch v1.0.698
3738
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cfs v1.0.627
3839
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/chdfs v1.0.600
3940
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ciam v1.0.695

go.sum

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -792,6 +792,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdb v1.0.699 h1:LhFt0HW
792792
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdb v1.0.699/go.mod h1:wgCS1KCnSX7HbSI/mYghFSwfEDnZVeb3gwtPBXIppv4=
793793
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.539 h1:0L6nZhT2bToTc/n1z3HOpNgdu5VX5ulmqIuPY+8UozA=
794794
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.539/go.mod h1:6Syk7W5fdDf0BLvX+RXL5obQ6unkt3Id4aN2QqVrV6U=
795+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdwch v1.0.698 h1:KB6LWRcQ9x8pnQ46dJ6hMFr0isNnjljNKYVpNfFfwso=
796+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdwch v1.0.698/go.mod h1:QYtc8Z/v5lGpY7fq4YefsWPcQ71qBdoiTu0P97vrNTw=
795797
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cfs v1.0.627 h1:nChNdoCUWQZciiJj3gRCWoHBO/8LituLQOdCRREIrS4=
796798
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cfs v1.0.627/go.mod h1:lr3IyWgJk4rLWr0vVd8J1Tfs5O+wNcwSZ9ciMhGUrlI=
797799
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/chdfs v1.0.600 h1:qSpp4rEgAzfXhi1rPxes+AJp2mwnsyRGPY/Km1FuYGs=

tencentcloud/connectivity/client.go

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import (
2929
cbs "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cbs/v20170312"
3030
cdb "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdb/v20170320"
3131
cdn "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn/v20180606"
32+
cdwch "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdwch/v20200915"
3233
cfs "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cfs/v20190719"
3334
chdfs "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/chdfs/v20201112"
3435
ckafka "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka/v20190819"
@@ -169,6 +170,7 @@ type TencentCloudClient struct {
169170
apmConn *apm.Client
170171
ciamConn *ciam.Client
171172
tseConn *tse.Client
173+
cdwchConn *cdwch.Client
172174
}
173175

174176
// NewClientProfile returns a new ClientProfile
@@ -1194,6 +1196,20 @@ func (me *TencentCloudClient) UseTseClient() *tse.Client {
11941196
return me.tseConn
11951197
}
11961198

1199+
// UseCdwchClient returns cdwch client for service
1200+
func (me *TencentCloudClient) UseCdwchClient() *cdwch.Client {
1201+
if me.cdwchConn != nil {
1202+
return me.cdwchConn
1203+
}
1204+
1205+
cpf := me.NewClientProfile(300)
1206+
cpf.Language = "zh-CN"
1207+
me.cdwchConn, _ = cdwch.NewClient(me.Credential, me.Region, cpf)
1208+
me.cdwchConn.WithHttpTransport(&LogRoundTripper{})
1209+
1210+
return me.cdwchConn
1211+
}
1212+
11971213
func getEnvDefault(key string, defVal int) int {
11981214
val, ex := os.LookupEnv(key)
11991215
if !ex {

tencentcloud/extension_cdwch.go

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package tencentcloud
2+
3+
const (
4+
CDWCH_PAY_MODE_HOUR = "hour"
5+
CDWCH_PAY_MODE_PREPAY = "prepay"
6+
)
7+
8+
const (
9+
CDWCH_CHARGE_TYPE_PREPAID = "PREPAID"
10+
CDWCH_CHARGE_TYPE_POSTPAID_BY_HOUR = "POSTPAID_BY_HOUR"
11+
)
12+
13+
const (
14+
NODE_TYPE_CLICKHOUSE = "DATA"
15+
NODE_TYPE_ZOOKEEPER = "COMMON"
16+
)
17+
18+
var PAY_MODE_TO_CHARGE_TYPE = map[string]string{
19+
CDWCH_PAY_MODE_HOUR: CDWCH_CHARGE_TYPE_POSTPAID_BY_HOUR,
20+
CDWCH_PAY_MODE_PREPAY: CDWCH_CHARGE_TYPE_PREPAID,
21+
}

tencentcloud/provider.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1569,6 +1569,10 @@ Tencent Cloud Service Engine(TSE)
15691569
Resource
15701570
tencentcloud_tse_instance
15711571
1572+
ClickHouse(CDWCH)
1573+
Resource
1574+
tencentcloud_clickhouse_instance
1575+
15721576
*/
15731577
package tencentcloud
15741578

@@ -2910,6 +2914,7 @@ func Provider() *schema.Provider {
29102914
"tencentcloud_api_gateway_api_doc": resourceTencentCloudAPIGatewayAPIDoc(),
29112915
"tencentcloud_api_gateway_api_app": resourceTencentCloudAPIGatewayAPIApp(),
29122916
"tencentcloud_tse_instance": resourceTencentCloudTseInstance(),
2917+
"tencentcloud_clickhouse_instance": resourceTencentCloudClickhouseInstance(),
29132918
},
29142919

29152920
ConfigureFunc: providerConfigure,

0 commit comments

Comments
 (0)