Skip to content

Commit 431fbb1

Browse files
authored
Feat/example kms (#1953)
* example readjust: tencentcloud_kubernetes_serverless_node_pool * add pre-commit-local * adjust example * add example code * update golangci-lint v1.45.2 to v1.50.0 * update make tools to v1.50.0 * test * revert golangci-limnt version
1 parent 7ce4149 commit 431fbb1

File tree

8 files changed

+180
-46
lines changed

8 files changed

+180
-46
lines changed

.github/workflows/golangci-lint.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,3 @@ jobs:
3737
with:
3838
version: v1.45.2
3939
working-directory: ./tencentcloud
40-
41-
42-

.go-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.17.1
1+
1.17.1

examples/tencentcloud-kms/main.tf

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,44 @@
1+
terraform {
2+
required_providers {
3+
tencentcloud = {
4+
source = "tencentcloudstack/tencentcloud"
5+
}
6+
}
7+
}
8+
19
provider "tencentcloud" {
210
region = "ap-guangzhou"
311
}
412

5-
resource "tencentcloud_kms_external_key" "external_key" {
6-
alias = "tf-kms-external-key"
7-
description = "create a CMK and import key_material_base64."
8-
wrapping_algorithm = "RSAES_PKCS1_V1_5"
9-
key_material_base64 = "MTIzMTIzMTIzMTIzMTIzQQ=="
10-
is_enabled = false
13+
resource "tencentcloud_kms_external_key" "example" {
14+
alias = "tf-kms-external-key"
15+
description = "create a CMK and import key_material_base64."
16+
wrapping_algorithm = "RSAES_PKCS1_V1_5"
17+
key_material_base64 = "your_public_key_base64_encoded"
18+
is_enabled = false
1119

1220
tags = {
13-
"test-tag":"test"
21+
"test-tag" : "test"
1422
}
1523
}
1624

17-
resource "tencentcloud_kms_key" "key" {
18-
alias = "tf-kms-key"
19-
description = "create a CMK generated by KMS."
25+
resource "tencentcloud_kms_key" "example" {
26+
alias = "tf-kms-key"
27+
description = "create a CMK generated by KMS."
2028
key_rotation_enabled = false
21-
is_enabled = true
29+
is_enabled = true
2230

2331
tags = {
24-
"test-tag":"test"
32+
"test-tag" : "test"
2533
}
2634
}
2735

2836
data "tencentcloud_kms_keys" "keys" {
2937
key_usage = "ALL"
30-
origin = "EXTERNAL"
38+
origin = "TENCENT_KMS"
39+
key_state = 1
40+
}
41+
42+
output "kms_keys" {
43+
value = data.tencentcloud_kms_keys.keys
3144
}

tencentcloud/resource_tc_kms_external_key.go

Lines changed: 42 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,48 @@ Provide a resource to create a KMS external key.
33
44
Example Usage
55
6+
Create a basic instance.
7+
8+
```hcl
9+
resource "tencentcloud_kms_external_key" "example" {
10+
alias = "tf-example-kms-externalkey"
11+
description = "example of kms external key"
12+
13+
tags = {
14+
"createdBy" = "terraform"
15+
}
16+
}
17+
```
18+
19+
Specify the encryption algorithm and public key.
20+
21+
```hcl
22+
resource "tencentcloud_kms_external_key" "example" {
23+
alias = "tf-example-kms-externalkey"
24+
description = "example of kms external key"
25+
wrapping_algorithm = "RSAES_PKCS1_V1_5"
26+
key_material_base64 = "your_public_key_base64_encoded"
27+
is_enabled = true
28+
29+
tags = {
30+
"createdBy" = "terraform"
31+
}
32+
}
33+
```
34+
35+
Disable the external kms key.
36+
637
```hcl
7-
resource "tencentcloud_kms_external_key" "foo" {
8-
alias = "test"
9-
description = "describe key test message."
10-
wrapping_algorithm = "RSAES_PKCS1_V1_5"
11-
key_material_base64 = "MTIzMTIzMTIzMTIzMTIzQQ=="
12-
valid_to = 2147443200
13-
is_enabled = true
38+
resource "tencentcloud_kms_external_key" "example" {
39+
alias = "tf-example-kms-externalkey"
40+
description = "example of kms external key"
41+
wrapping_algorithm = "RSAES_PKCS1_V1_5"
42+
key_material_base64 = "your_public_key_base64_encoded"
43+
is_enabled = false
44+
45+
tags = {
46+
"test-tag" = "unit-test"
47+
}
1448
}
1549
```
1650
@@ -19,7 +53,7 @@ Import
1953
KMS external keys can be imported using the id, e.g.
2054
2155
```
22-
$ terraform import tencentcloud_kms_external_key.foo 287e8f40-7cbb-11eb-9a3a-5254004f7f94
56+
$ terraform import tencentcloud_kms_external_key.example 287e8f40-7cbb-11eb-9a3a-xxxxx
2357
```
2458
*/
2559
package tencentcloud

tencentcloud/resource_tc_kms_key.go

Lines changed: 37 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,44 @@ Provide a resource to create a KMS key.
33
44
Example Usage
55
6+
Create and enable a instance.
7+
68
```hcl
7-
resource "tencentcloud_kms_key" "foo" {
8-
alias = "test"
9-
description = "describe key test message."
10-
key_rotation_enabled = true
11-
is_enabled = true
12-
13-
tags = {
14-
"test-tag":"key-test"
15-
}
9+
resource "tencentcloud_kms_key" "example" {
10+
alias = "tf-example-kms-key"
11+
description = "example of kms key"
12+
key_rotation_enabled = false
13+
is_enabled = true
14+
15+
tags = {
16+
"createdBy" = "terraform"
17+
}
18+
}
19+
```
20+
21+
Specify the Key Usage as an asymmetry method.
22+
23+
```hcl
24+
resource "tencentcloud_kms_key" "example2" {
25+
alias = "tf-example-kms-key"
26+
description = "example of kms key"
27+
key_usage = "ASYMMETRIC_DECRYPT_RSA_2048"
28+
is_enabled = false
29+
}
30+
```
31+
32+
Disable the kms key instance.
33+
34+
```hcl
35+
resource "tencentcloud_kms_key" "example3" {
36+
alias = "tf-example-kms-key"
37+
description = "example of kms key"
38+
key_rotation_enabled = false
39+
is_enabled = false
40+
41+
tags = {
42+
"test-tag" = "unit-test"
43+
}
1644
}
1745
```
1846

vendor/github.com/quasilyte/gogrep/Makefile

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

website/docs/r/kms_external_key.html.markdown

Lines changed: 40 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,48 @@ Provide a resource to create a KMS external key.
1313

1414
## Example Usage
1515

16+
### Create a basic instance.
17+
18+
```hcl
19+
resource "tencentcloud_kms_external_key" "example" {
20+
alias = "tf-example-kms-externalkey"
21+
description = "example of kms external key"
22+
23+
tags = {
24+
"createdBy" = "terraform"
25+
}
26+
}
27+
```
28+
29+
### Specify the encryption algorithm and public key.
30+
1631
```hcl
17-
resource "tencentcloud_kms_external_key" "foo" {
18-
alias = "test"
19-
description = "describe key test message."
32+
resource "tencentcloud_kms_external_key" "example" {
33+
alias = "tf-example-kms-externalkey"
34+
description = "example of kms external key"
2035
wrapping_algorithm = "RSAES_PKCS1_V1_5"
21-
key_material_base64 = "MTIzMTIzMTIzMTIzMTIzQQ=="
22-
valid_to = 2147443200
36+
key_material_base64 = "your_public_key_base64_encoded"
2337
is_enabled = true
38+
39+
tags = {
40+
"createdBy" = "terraform"
41+
}
42+
}
43+
```
44+
45+
### Disable the external kms key.
46+
47+
```hcl
48+
resource "tencentcloud_kms_external_key" "example" {
49+
alias = "tf-example-kms-externalkey"
50+
description = "example of kms external key"
51+
wrapping_algorithm = "RSAES_PKCS1_V1_5"
52+
key_material_base64 = "your_public_key_base64_encoded"
53+
is_enabled = false
54+
55+
tags = {
56+
"test-tag" = "unit-test"
57+
}
2458
}
2559
```
2660

@@ -51,6 +85,6 @@ In addition to all arguments above, the following attributes are exported:
5185
KMS external keys can be imported using the id, e.g.
5286

5387
```
54-
$ terraform import tencentcloud_kms_external_key.foo 287e8f40-7cbb-11eb-9a3a-5254004f7f94
88+
$ terraform import tencentcloud_kms_external_key.example 287e8f40-7cbb-11eb-9a3a-xxxxx
5589
```
5690

website/docs/r/kms_key.html.markdown

Lines changed: 33 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,43 @@ Provide a resource to create a KMS key.
1313

1414
## Example Usage
1515

16+
### Create and enable a instance.
17+
1618
```hcl
17-
resource "tencentcloud_kms_key" "foo" {
18-
alias = "test"
19-
description = "describe key test message."
20-
key_rotation_enabled = true
19+
resource "tencentcloud_kms_key" "example" {
20+
alias = "tf-example-kms-key"
21+
description = "example of kms key"
22+
key_rotation_enabled = false
2123
is_enabled = true
2224
2325
tags = {
24-
"test-tag" : "key-test"
26+
"createdBy" = "terraform"
27+
}
28+
}
29+
```
30+
31+
### Specify the Key Usage as an asymmetry method.
32+
33+
```hcl
34+
resource "tencentcloud_kms_key" "example2" {
35+
alias = "tf-example-kms-key"
36+
description = "example of kms key"
37+
key_usage = "ASYMMETRIC_DECRYPT_RSA_2048"
38+
is_enabled = false
39+
}
40+
```
41+
42+
### Disable the kms key instance.
43+
44+
```hcl
45+
resource "tencentcloud_kms_key" "example3" {
46+
alias = "tf-example-kms-key"
47+
description = "example of kms key"
48+
key_rotation_enabled = false
49+
is_enabled = false
50+
51+
tags = {
52+
"test-tag" = "unit-test"
2553
}
2654
}
2755
```

0 commit comments

Comments
 (0)