diff --git a/.github/workflows/golangci-lint.yml b/.github/workflows/golangci-lint.yml index b5fc96f089..458f241aae 100644 --- a/.github/workflows/golangci-lint.yml +++ b/.github/workflows/golangci-lint.yml @@ -37,6 +37,3 @@ jobs: with: version: v1.45.2 working-directory: ./tencentcloud - - - diff --git a/.go-version b/.go-version index 511a76e6fa..507266ba01 100644 --- a/.go-version +++ b/.go-version @@ -1 +1 @@ -1.17.1 +1.17.1 \ No newline at end of file diff --git a/examples/tencentcloud-kms/main.tf b/examples/tencentcloud-kms/main.tf index ca9a708e92..bbd189fc6d 100644 --- a/examples/tencentcloud-kms/main.tf +++ b/examples/tencentcloud-kms/main.tf @@ -1,31 +1,44 @@ +terraform { + required_providers { + tencentcloud = { + source = "tencentcloudstack/tencentcloud" + } + } +} + provider "tencentcloud" { region = "ap-guangzhou" } -resource "tencentcloud_kms_external_key" "external_key" { - alias = "tf-kms-external-key" - description = "create a CMK and import key_material_base64." - wrapping_algorithm = "RSAES_PKCS1_V1_5" - key_material_base64 = "MTIzMTIzMTIzMTIzMTIzQQ==" - is_enabled = false +resource "tencentcloud_kms_external_key" "example" { + alias = "tf-kms-external-key" + description = "create a CMK and import key_material_base64." + wrapping_algorithm = "RSAES_PKCS1_V1_5" + key_material_base64 = "your_public_key_base64_encoded" + is_enabled = false tags = { - "test-tag":"test" + "test-tag" : "test" } } -resource "tencentcloud_kms_key" "key" { - alias = "tf-kms-key" - description = "create a CMK generated by KMS." +resource "tencentcloud_kms_key" "example" { + alias = "tf-kms-key" + description = "create a CMK generated by KMS." key_rotation_enabled = false - is_enabled = true + is_enabled = true tags = { - "test-tag":"test" + "test-tag" : "test" } } data "tencentcloud_kms_keys" "keys" { key_usage = "ALL" - origin = "EXTERNAL" + origin = "TENCENT_KMS" + key_state = 1 +} + +output "kms_keys" { + value = data.tencentcloud_kms_keys.keys } diff --git a/tencentcloud/resource_tc_kms_external_key.go b/tencentcloud/resource_tc_kms_external_key.go index abebc90ccc..4ddc29cab1 100644 --- a/tencentcloud/resource_tc_kms_external_key.go +++ b/tencentcloud/resource_tc_kms_external_key.go @@ -3,14 +3,48 @@ Provide a resource to create a KMS external key. Example Usage +Create a basic instance. + +```hcl +resource "tencentcloud_kms_external_key" "example" { + alias = "tf-example-kms-externalkey" + description = "example of kms external key" + + tags = { + "createdBy" = "terraform" + } +} +``` + +Specify the encryption algorithm and public key. + +```hcl +resource "tencentcloud_kms_external_key" "example" { + alias = "tf-example-kms-externalkey" + description = "example of kms external key" + wrapping_algorithm = "RSAES_PKCS1_V1_5" + key_material_base64 = "your_public_key_base64_encoded" + is_enabled = true + + tags = { + "createdBy" = "terraform" + } +} +``` + +Disable the external kms key. + ```hcl -resource "tencentcloud_kms_external_key" "foo" { - alias = "test" - description = "describe key test message." - wrapping_algorithm = "RSAES_PKCS1_V1_5" - key_material_base64 = "MTIzMTIzMTIzMTIzMTIzQQ==" - valid_to = 2147443200 - is_enabled = true +resource "tencentcloud_kms_external_key" "example" { + alias = "tf-example-kms-externalkey" + description = "example of kms external key" + wrapping_algorithm = "RSAES_PKCS1_V1_5" + key_material_base64 = "your_public_key_base64_encoded" + is_enabled = false + + tags = { + "test-tag" = "unit-test" + } } ``` @@ -19,7 +53,7 @@ Import KMS external keys can be imported using the id, e.g. ``` -$ terraform import tencentcloud_kms_external_key.foo 287e8f40-7cbb-11eb-9a3a-5254004f7f94 +$ terraform import tencentcloud_kms_external_key.example 287e8f40-7cbb-11eb-9a3a-xxxxx ``` */ package tencentcloud diff --git a/tencentcloud/resource_tc_kms_key.go b/tencentcloud/resource_tc_kms_key.go index cb3de91bcb..0608ecd532 100644 --- a/tencentcloud/resource_tc_kms_key.go +++ b/tencentcloud/resource_tc_kms_key.go @@ -3,16 +3,44 @@ Provide a resource to create a KMS key. Example Usage +Create and enable a instance. + ```hcl -resource "tencentcloud_kms_key" "foo" { - alias = "test" - description = "describe key test message." - key_rotation_enabled = true - is_enabled = true - - tags = { - "test-tag":"key-test" - } +resource "tencentcloud_kms_key" "example" { + alias = "tf-example-kms-key" + description = "example of kms key" + key_rotation_enabled = false + is_enabled = true + + tags = { + "createdBy" = "terraform" + } +} +``` + +Specify the Key Usage as an asymmetry method. + +```hcl +resource "tencentcloud_kms_key" "example2" { + alias = "tf-example-kms-key" + description = "example of kms key" + key_usage = "ASYMMETRIC_DECRYPT_RSA_2048" + is_enabled = false +} +``` + +Disable the kms key instance. + +```hcl +resource "tencentcloud_kms_key" "example3" { + alias = "tf-example-kms-key" + description = "example of kms key" + key_rotation_enabled = false + is_enabled = false + + tags = { + "test-tag" = "unit-test" + } } ``` diff --git a/vendor/github.com/quasilyte/gogrep/Makefile b/vendor/github.com/quasilyte/gogrep/Makefile index 01dd2192e8..5cd07e6049 100644 --- a/vendor/github.com/quasilyte/gogrep/Makefile +++ b/vendor/github.com/quasilyte/gogrep/Makefile @@ -6,7 +6,7 @@ test: @echo "everything is OK" ci-lint: - curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(GOPATH_DIR)/bin v1.45.2 + curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(GOPATH_DIR)/bin v1.50.0 $(GOPATH_DIR)/bin/golangci-lint run ./... go install github.com/quasilyte/go-consistent@master $(GOPATH_DIR)/bin/go-consistent . ./internal/... ./nodetag/... ./filters/... diff --git a/website/docs/r/kms_external_key.html.markdown b/website/docs/r/kms_external_key.html.markdown index 382bebdb12..1818c49d46 100644 --- a/website/docs/r/kms_external_key.html.markdown +++ b/website/docs/r/kms_external_key.html.markdown @@ -13,14 +13,48 @@ Provide a resource to create a KMS external key. ## Example Usage +### Create a basic instance. + +```hcl +resource "tencentcloud_kms_external_key" "example" { + alias = "tf-example-kms-externalkey" + description = "example of kms external key" + + tags = { + "createdBy" = "terraform" + } +} +``` + +### Specify the encryption algorithm and public key. + ```hcl -resource "tencentcloud_kms_external_key" "foo" { - alias = "test" - description = "describe key test message." +resource "tencentcloud_kms_external_key" "example" { + alias = "tf-example-kms-externalkey" + description = "example of kms external key" wrapping_algorithm = "RSAES_PKCS1_V1_5" - key_material_base64 = "MTIzMTIzMTIzMTIzMTIzQQ==" - valid_to = 2147443200 + key_material_base64 = "your_public_key_base64_encoded" is_enabled = true + + tags = { + "createdBy" = "terraform" + } +} +``` + +### Disable the external kms key. + +```hcl +resource "tencentcloud_kms_external_key" "example" { + alias = "tf-example-kms-externalkey" + description = "example of kms external key" + wrapping_algorithm = "RSAES_PKCS1_V1_5" + key_material_base64 = "your_public_key_base64_encoded" + is_enabled = false + + tags = { + "test-tag" = "unit-test" + } } ``` @@ -51,6 +85,6 @@ In addition to all arguments above, the following attributes are exported: KMS external keys can be imported using the id, e.g. ``` -$ terraform import tencentcloud_kms_external_key.foo 287e8f40-7cbb-11eb-9a3a-5254004f7f94 +$ terraform import tencentcloud_kms_external_key.example 287e8f40-7cbb-11eb-9a3a-xxxxx ``` diff --git a/website/docs/r/kms_key.html.markdown b/website/docs/r/kms_key.html.markdown index 81fccec5e5..8ad3cf1eb6 100644 --- a/website/docs/r/kms_key.html.markdown +++ b/website/docs/r/kms_key.html.markdown @@ -13,15 +13,43 @@ Provide a resource to create a KMS key. ## Example Usage +### Create and enable a instance. + ```hcl -resource "tencentcloud_kms_key" "foo" { - alias = "test" - description = "describe key test message." - key_rotation_enabled = true +resource "tencentcloud_kms_key" "example" { + alias = "tf-example-kms-key" + description = "example of kms key" + key_rotation_enabled = false is_enabled = true tags = { - "test-tag" : "key-test" + "createdBy" = "terraform" + } +} +``` + +### Specify the Key Usage as an asymmetry method. + +```hcl +resource "tencentcloud_kms_key" "example2" { + alias = "tf-example-kms-key" + description = "example of kms key" + key_usage = "ASYMMETRIC_DECRYPT_RSA_2048" + is_enabled = false +} +``` + +### Disable the kms key instance. + +```hcl +resource "tencentcloud_kms_key" "example3" { + alias = "tf-example-kms-key" + description = "example of kms key" + key_rotation_enabled = false + is_enabled = false + + tags = { + "test-tag" = "unit-test" } } ```