Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .changelog/3617.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
```release-note:new-resource
tencentcloud_cynosdb_cluster_transparent_encrypt
```
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ require (
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.3
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.1206
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.1161
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.1.52
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dayu v1.0.335
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dbbrain v1.0.652
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dc v1.0.633
Expand Down
4 changes: 4 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -983,6 +983,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.49 h1:BQwUw
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.49/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.50 h1:wZGiUXmzr4L0S1coFhnjddkyNrO5ZTtfxBDrbeR+1d8=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.50/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.52 h1:GtExKpiqbmmOq9ojeBYR6M1vgVL27s14GIDkjmgAX8A=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.1.52/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.3 h1:r05ohLc0LVEpiEQeOJ5QwCiKk6XM9kjTca6+UAbNR/8=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.3.3/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993 h1:WlPgXldQCxt7qi5Xrc6j6zTrsXWzN5BcOGs7Irq7fwQ=
Expand All @@ -995,6 +997,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762 h1:2egy69S
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762/go.mod h1:1XylIfNUbAzmNqi4XMhwcM3VhmUHdu1OYybOeaJ4sOw=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.1161 h1:0oG7oMuDBXN2WyRtTU/650zRhLAAmYBgpttNn53NhK0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.1161/go.mod h1:38t5HcmRqwC93ct7NgG82N+IQIjKLPLLvEUn263jejQ=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.1.52 h1:h/OquZHmxmfZXHfo07dmh74DrclFVjyUV3tfk66oP9o=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.1.52/go.mod h1:0F66TApiFl1wlux8XGoJTVLbrE48FNd5OJOX5V9OvBQ=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dasb v1.0.970 h1:qVIRHgG1twsqF4aVN/x2T2yMRfPpsZBTNefDkqzM06M=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dasb v1.0.970/go.mod h1:NJuuQD4z6vcnsZnC7Tvz2U9hElNS1wroc34UQbZvP2U=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dayu v1.0.335 h1:D8qrelkK5udv8RzJJIABMzItGIyaZoYnxEVeIsYqiNw=
Expand Down
1 change: 1 addition & 0 deletions tencentcloud/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -1807,6 +1807,7 @@ func Provider() *schema.Provider {
"tencentcloud_cynosdb_upgrade_proxy_version": cynosdb.ResourceTencentCloudCynosdbUpgradeProxyVersion(),
"tencentcloud_cynosdb_backup_config": cynosdb.ResourceTencentCloudCynosdbBackupConfig(),
"tencentcloud_cynosdb_ssl": cynosdb.ResourceTencentCloudCynosdbSsl(),
"tencentcloud_cynosdb_cluster_transparent_encrypt": cynosdb.ResourceTencentCloudCynosdbClusterTransparentEncrypt(),
"tencentcloud_cynosdb_audit_log_file": cynosdb.ResourceTencentCloudCynosdbAuditLogFile(),
"tencentcloud_cynosdb_security_group": cynosdb.ResourceTencentCloudCynosdbSecurityGroup(),
"tencentcloud_cynosdb_audit_service": cynosdb.ResourceTencentCloudCynosdbAuditService(),
Expand Down
1 change: 1 addition & 0 deletions tencentcloud/provider.md
Original file line number Diff line number Diff line change
Expand Up @@ -546,6 +546,7 @@ tencentcloud_cynosdb_proxy_end_point
tencentcloud_cynosdb_upgrade_proxy_version
tencentcloud_cynosdb_backup_config
tencentcloud_cynosdb_ssl
tencentcloud_cynosdb_cluster_transparent_encrypt
tencentcloud_cynosdb_audit_service

Direct Connect(DC)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ func resourceTencentCloudCynosdbClusterSlaveZoneRead(d *schema.ResourceData, met
clusterId := idSplit[0]
slaveZone := idSplit[1]

clusterSlaveZone, err := service.DescribeCynosdbClusterSlaveZoneById(ctx, clusterId)
clusterSlaveZone, err := service.DescribeCynosdbClusterById(ctx, clusterId)
if err != nil {
return err
}
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Provides a resource to create a cynosdb cluster_transparent_encrypt

~> **NOTE:** Once activated, it cannot be deactivated.

~> **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.

Example Usage

```hcl
resource "tencentcloud_cynosdb_cluster_transparent_encrypt" "cynosdb_cluster_transparent_encrypt" {
cluster_id = cynosdbmysql-bu6hlulf
is_open_global_encryption = false
key_id = "f063c18b-xxxx-xxxx-xxxx-525400d3a886"
key_region = "ap-guangzhou"
key_type = "custom"
}
```

Import

cynosdb cluster_transparent_encrypt can be imported using the id, e.g.

```
terraform import tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt cynosdbmysql-bu6hlulf
```
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package cynosdb
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package cynosdb_test

import (
"testing"

"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
tcacctest "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/acctest"
)

func TestAccTencentCloudCynosdbClusterTransparentEncryptResource_basic(t *testing.T) {
t.Parallel()
resource.Test(t, resource.TestCase{
PreCheck: func() {
tcacctest.AccPreCheck(t)
},
Providers: tcacctest.AccProviders,
Steps: []resource.TestStep{
{
Config: testAccCynosdbClusterTransparentEncrypt,
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "id"),
resource.TestCheckResourceAttrSet("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "key_id"),
resource.TestCheckResourceAttrSet("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "key_region"),
resource.TestCheckResourceAttrSet("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "key_type"),
resource.TestCheckResourceAttr("tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt", "is_open_global_encryption", "false"),
),
},
{
ResourceName: "tencentcloud_cynosdb_cluster_transparent_encrypt.cynosdb_cluster_transparent_encrypt",
ImportState: true,
},
},
})
}

const testAccCynosdbClusterTransparentEncrypt = testAccCynosdbCluster + `
resource "tencentcloud_cynosdb_cluster_transparent_encrypt" "cynosdb_cluster_transparent_encrypt" {
cluster_id = tencentcloud_cynosdb_cluster.foo.id
is_open_global_encryption = false
key_id = "f063c18b-654b-11ef-9d9f-525400d3a886"
key_region = "ap-guangzhou"
key_type = "custom"
}
`
29 changes: 27 additions & 2 deletions tencentcloud/services/cynosdb/service_tencentcloud_cynosdb.go
Original file line number Diff line number Diff line change
Expand Up @@ -2669,7 +2669,7 @@ func (me *CynosdbService) DeleteCynosdbResourcePackageById(ctx context.Context,
return
}

func (me *CynosdbService) DescribeCynosdbClusterSlaveZoneById(ctx context.Context, clusterId string) (clusterSlaveZone *cynosdb.CynosdbClusterDetail, errRet error) {
func (me *CynosdbService) DescribeCynosdbClusterById(ctx context.Context, clusterId string) (cluster *cynosdb.CynosdbClusterDetail, errRet error) {
logId := tccommon.GetLogId(ctx)

request := cynosdb.NewDescribeClusterDetailRequest()
Expand All @@ -2690,7 +2690,7 @@ func (me *CynosdbService) DescribeCynosdbClusterSlaveZoneById(ctx context.Contex
}
log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), response.ToJsonString())

clusterSlaveZone = response.Response.Detail
cluster = response.Response.Detail
return
}

Expand Down Expand Up @@ -3011,6 +3011,31 @@ func (me *CynosdbService) taskStateRefreshFunc(taskId string, failStates []strin
}
}

func (me *CynosdbService) DescribeCynosdbClusterTransparentEncryptById(ctx context.Context, clusterId string) (ret *cynosdb.DescribeClusterTransparentEncryptInfoResponseParams, errRet error) {
logId := tccommon.GetLogId(ctx)

request := cynosdb.NewDescribeClusterTransparentEncryptInfoRequest()
request.ClusterId = &clusterId

defer func() {
if errRet != nil {
log.Printf("[CRITAL]%s api[%s] fail, request body [%s], reason[%s]\n", logId, request.GetAction(), request.ToJsonString(), errRet.Error())
}
}()

ratelimit.Check(request.GetAction())

response, err := me.client.UseCynosdbClient().DescribeClusterTransparentEncryptInfo(request)
if err != nil {
errRet = err
return
}
log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), response.ToJsonString())

ret = response.Response
return
}

func (me *CynosdbService) DescribeCynosdbAuditServiceById(ctx context.Context, instanceId string) (ret *cynosdb.InstanceAuditStatus, errRet error) {
logId := tccommon.GetLogId(ctx)
request := cynosdb.NewDescribeAuditInstanceListRequest()
Expand Down
Loading
Loading