Skip to content

Commit e244a29

Browse files
authored
fix(cynosdb): [128546502]support cynosdb ClusterTransparentEncrypt (#3617)
* fix(cynosdb): [128546502]support cynosdb ClusterTransparentEncrypt * fix: add changelog
1 parent e99a23c commit e244a29

17 files changed

+2956
-267
lines changed

.changelog/3617.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_cynosdb_cluster_transparent_encrypt
3+
```

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ require (
4949
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.3
5050
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.1206
5151
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762
52-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.1161
52+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.1.52
5353
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dayu v1.0.335
5454
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dbbrain v1.0.652
5555
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dc v1.0.633

go.sum

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -983,6 +983,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.49 h1:BQwUw
983983
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.49/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
984984
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.50 h1:wZGiUXmzr4L0S1coFhnjddkyNrO5ZTtfxBDrbeR+1d8=
985985
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.50/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
986+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.52 h1:GtExKpiqbmmOq9ojeBYR6M1vgVL27s14GIDkjmgAX8A=
987+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.52/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
986988
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.3 h1:r05ohLc0LVEpiEQeOJ5QwCiKk6XM9kjTca6+UAbNR/8=
987989
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.3/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
988990
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993 h1:WlPgXldQCxt7qi5Xrc6j6zTrsXWzN5BcOGs7Irq7fwQ=
@@ -995,6 +997,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762 h1:2egy69S
995997
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762/go.mod h1:1XylIfNUbAzmNqi4XMhwcM3VhmUHdu1OYybOeaJ4sOw=
996998
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.1161 h1:0oG7oMuDBXN2WyRtTU/650zRhLAAmYBgpttNn53NhK0=
997999
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.1161/go.mod h1:38t5HcmRqwC93ct7NgG82N+IQIjKLPLLvEUn263jejQ=
1000+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.1.52 h1:h/OquZHmxmfZXHfo07dmh74DrclFVjyUV3tfk66oP9o=
1001+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.1.52/go.mod h1:0F66TApiFl1wlux8XGoJTVLbrE48FNd5OJOX5V9OvBQ=
9981002
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dasb v1.0.970 h1:qVIRHgG1twsqF4aVN/x2T2yMRfPpsZBTNefDkqzM06M=
9991003
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dasb v1.0.970/go.mod h1:NJuuQD4z6vcnsZnC7Tvz2U9hElNS1wroc34UQbZvP2U=
10001004
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dayu v1.0.335 h1:D8qrelkK5udv8RzJJIABMzItGIyaZoYnxEVeIsYqiNw=

tencentcloud/provider.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1807,6 +1807,7 @@ func Provider() *schema.Provider {
18071807
"tencentcloud_cynosdb_upgrade_proxy_version": cynosdb.ResourceTencentCloudCynosdbUpgradeProxyVersion(),
18081808
"tencentcloud_cynosdb_backup_config": cynosdb.ResourceTencentCloudCynosdbBackupConfig(),
18091809
"tencentcloud_cynosdb_ssl": cynosdb.ResourceTencentCloudCynosdbSsl(),
1810+
"tencentcloud_cynosdb_cluster_transparent_encrypt": cynosdb.ResourceTencentCloudCynosdbClusterTransparentEncrypt(),
18101811
"tencentcloud_cynosdb_audit_log_file": cynosdb.ResourceTencentCloudCynosdbAuditLogFile(),
18111812
"tencentcloud_cynosdb_security_group": cynosdb.ResourceTencentCloudCynosdbSecurityGroup(),
18121813
"tencentcloud_cynosdb_audit_service": cynosdb.ResourceTencentCloudCynosdbAuditService(),

tencentcloud/provider.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -546,6 +546,7 @@ tencentcloud_cynosdb_proxy_end_point
546546
tencentcloud_cynosdb_upgrade_proxy_version
547547
tencentcloud_cynosdb_backup_config
548548
tencentcloud_cynosdb_ssl
549+
tencentcloud_cynosdb_cluster_transparent_encrypt
549550
tencentcloud_cynosdb_audit_service
550551

551552
Direct Connect(DC)

tencentcloud/services/cynosdb/resource_tc_cynosdb_cluster_slave_zone.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ func resourceTencentCloudCynosdbClusterSlaveZoneRead(d *schema.ResourceData, met
127127
clusterId := idSplit[0]
128128
slaveZone := idSplit[1]
129129

130-
clusterSlaveZone, err := service.DescribeCynosdbClusterSlaveZoneById(ctx, clusterId)
130+
clusterSlaveZone, err := service.DescribeCynosdbClusterById(ctx, clusterId)
131131
if err != nil {
132132
return err
133133
}

tencentcloud/services/cynosdb/resource_tc_cynosdb_cluster_transparent_encrypt.go

Lines changed: 197 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
Provides a resource to create a cynosdb cluster_transparent_encrypt
2+
3+
~> **NOTE:** Once activated, it cannot be deactivated.
4+
5+
~> **NOTE:** If you have not enabled the KMS service or authorized the KMS key before, you will need to enable the KMS service and then authorize the KMS key in order to complete the corresponding enabling or authorization operations and unlock the subsequent settings for data encryption.
6+
7+
Example Usage
8+
9+
```hcl
10+
resource "tencentcloud_cynosdb_cluster_transparent_encrypt" "cynosdb_cluster_transparent_encrypt" {
11+
cluster_id = cynosdbmysql-bu6hlulf
12+
is_open_global_encryption = false
13+
key_id = "f063c18b-xxxx-xxxx-xxxx-525400d3a886"
14+
key_region = "ap-guangzhou"
15+
key_type = "custom"
16+
}
17+
```
18+
19+
Import
20+
21+
cynosdb cluster_transparent_encrypt can be imported using the id, e.g.
22+
23+
```
24+
terraform import tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt cynosdbmysql-bu6hlulf
25+
```
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
package cynosdb
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
package cynosdb_test
2+
3+
import (
4+
"testing"
5+
6+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
7+
tcacctest "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/acctest"
8+
)
9+
10+
func TestAccTencentCloudCynosdbClusterTransparentEncryptResource_basic(t *testing.T) {
11+
t.Parallel()
12+
resource.Test(t, resource.TestCase{
13+
PreCheck: func() {
14+
tcacctest.AccPreCheck(t)
15+
},
16+
Providers: tcacctest.AccProviders,
17+
Steps: []resource.TestStep{
18+
{
19+
Config: testAccCynosdbClusterTransparentEncrypt,
20+
Check: resource.ComposeTestCheckFunc(
21+
resource.TestCheckResourceAttrSet("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "id"),
22+
resource.TestCheckResourceAttrSet("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "key_id"),
23+
resource.TestCheckResourceAttrSet("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "key_region"),
24+
resource.TestCheckResourceAttrSet("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "key_type"),
25+
resource.TestCheckResourceAttr("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "is_open_global_encryption", "false"),
26+
),
27+
},
28+
{
29+
ResourceName: "tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt",
30+
ImportState: true,
31+
},
32+
},
33+
})
34+
}
35+
36+
const testAccCynosdbClusterTransparentEncrypt = testAccCynosdbCluster + `
37+
resource "tencentcloud_cynosdb_cluster_transparent_encrypt" "cynosdb_cluster_transparent_encrypt" {
38+
cluster_id = tencentcloud_cynosdb_cluster.foo.id
39+
is_open_global_encryption = false
40+
key_id = "f063c18b-654b-11ef-9d9f-525400d3a886"
41+
key_region = "ap-guangzhou"
42+
key_type = "custom"
43+
}
44+
`

0 commit comments

Comments
 (0)