diff --git a/.changelog/2951.txt b/.changelog/2951.txt new file mode 100644 index 0000000000..c7aa600053 --- /dev/null +++ b/.changelog/2951.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +resource/tencentcloud_kubernetes_native_node_pool: support field `machine_type`. +``` \ No newline at end of file diff --git a/go.mod b/go.mod index 537fcc1382..160627db8e 100644 --- a/go.mod +++ b/go.mod @@ -91,7 +91,7 @@ require ( github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tdmq v1.0.955 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tem v1.0.578 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.0.1013 - github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1031 + github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1038 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/trocket v1.0.947 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tse v1.0.857 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tsf v1.0.674 diff --git a/go.sum b/go.sum index a7a64b5aef..28f56f23bc 100644 --- a/go.sum +++ b/go.sum @@ -1040,6 +1040,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998 h1:f4/n0d github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998/go.mod h1:fyi/HUwCwVe2NCCCjz8k/C5GwPu3QazCZO+OBJ3MhLk= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1031 h1:0Ew48YnVO+Sd2U3VrWgV36uRySTF7uOOFJH0Hd4ufhg= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1031/go.mod h1:KcKTYEXZil0FciUtQ75svPL4hZpLYVnemAeW27N3OKY= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1038 h1:tmK0aSj8zJrTx7aubJR8DBvtySj1uO8UdFANUDFtbmo= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1038/go.mod h1:tWS3IluLYbNDx1kz8bBFEP6H1bxvuBPPGQ2WogD2rXI= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/trocket v1.0.947 h1:iZfuU8S86kfqFsAVT/LUApP8L5cpT90hl2wSKiUDVvw= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/trocket v1.0.947/go.mod h1:eAgJ+XUEhffMq79zjpgHoR3PBVcciSg+LuPDC8hLWsE= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tse v1.0.857 h1:TkJnvSeRSXsRCwOwcwXSvruSK9s/kw8LC3FLeccw+A0= diff --git a/tencentcloud/services/tke/resource_tc_kubernetes_native_node_pool.go b/tencentcloud/services/tke/resource_tc_kubernetes_native_node_pool.go index 4f9470da33..068f68cc49 100644 --- a/tencentcloud/services/tke/resource_tc_kubernetes_native_node_pool.go +++ b/tencentcloud/services/tke/resource_tc_kubernetes_native_node_pool.go @@ -543,6 +543,13 @@ func ResourceTencentCloudKubernetesNativeNodePool() *schema.Resource { Type: schema.TypeString, }, }, + "machine_type": { + Type: schema.TypeString, + Optional: true, + Computed: true, + ForceNew: true, + Description: "Node pool type. Example value: `NativeCVM` or `Native`. Default is `Native`.", + }, }, }, }, @@ -906,6 +913,9 @@ func resourceTencentCloudKubernetesNativeNodePoolCreate(d *schema.ResourceData, createNativeNodePoolParam.KeyIds = append(createNativeNodePoolParam.KeyIds, helper.String(keyIds)) } } + if v, ok := nativeMap["machine_type"]; ok { + createNativeNodePoolParam.MachineType = helper.String(v.(string)) + } request.Native = &createNativeNodePoolParam } @@ -1222,6 +1232,10 @@ func resourceTencentCloudKubernetesNativeNodePoolRead(d *schema.ResourceData, me nativeMap["key_ids"] = respData.Native.KeyIds } + if respData.Native.MachineType != nil { + nativeMap["machine_type"] = respData.Native.MachineType + } + managementMap := map[string]interface{}{} if respData.Native.Management != nil { diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20180525/models.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20180525/models.go index 32945153f9..a12a24319d 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20180525/models.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20180525/models.go @@ -5027,10 +5027,10 @@ type DeleteClusterVirtualNodePoolRequestParams struct { // 集群ID ClusterId *string `json:"ClusterId,omitnil,omitempty" name:"ClusterId"` - // 虚拟节点池ID列表 + // 超级节点池ID列表 NodePoolIds []*string `json:"NodePoolIds,omitnil,omitempty" name:"NodePoolIds"` - // 是否强制删除,在虚拟节点上有pod的情况下,如果选择非强制删除,则删除会失败 + // 是否强制删除,在超级节点上有pod的情况下,如果选择非强制删除,则删除会失败 Force *bool `json:"Force,omitnil,omitempty" name:"Force"` } @@ -5040,10 +5040,10 @@ type DeleteClusterVirtualNodePoolRequest struct { // 集群ID ClusterId *string `json:"ClusterId,omitnil,omitempty" name:"ClusterId"` - // 虚拟节点池ID列表 + // 超级节点池ID列表 NodePoolIds []*string `json:"NodePoolIds,omitnil,omitempty" name:"NodePoolIds"` - // 是否强制删除,在虚拟节点上有pod的情况下,如果选择非强制删除,则删除会失败 + // 是否强制删除,在超级节点上有pod的情况下,如果选择非强制删除,则删除会失败 Force *bool `json:"Force,omitnil,omitempty" name:"Force"` } @@ -20365,11 +20365,14 @@ type UpdateAddonRequestParams struct { // addon名称 AddonName *string `json:"AddonName,omitnil,omitempty" name:"AddonName"` - // addon版本(不传默认不更新) + // addon版本(不传默认不更新,不传AddonVersion时RawValues必传) AddonVersion *string `json:"AddonVersion,omitnil,omitempty" name:"AddonVersion"` - // addon的参数,是一个json格式的base64转码后的字符串(addon参数由DescribeAddonValues获取) + // addon的参数,是一个json格式的base64转码后的字符串(addon参数由DescribeAddonValues获取,不传RawValues时AddonVersion必传)) RawValues *string `json:"RawValues,omitnil,omitempty" name:"RawValues"` + + // addon参数的更新策略,支持replace和merge两种策略,默认值为merge,兼容旧版本API。replace:使用新RawValues全量替换addon原RawValues,merge:根据新RawValues新增或更新addon原RawValues中对应参数。 + UpdateStrategy *string `json:"UpdateStrategy,omitnil,omitempty" name:"UpdateStrategy"` } type UpdateAddonRequest struct { @@ -20381,11 +20384,14 @@ type UpdateAddonRequest struct { // addon名称 AddonName *string `json:"AddonName,omitnil,omitempty" name:"AddonName"` - // addon版本(不传默认不更新) + // addon版本(不传默认不更新,不传AddonVersion时RawValues必传) AddonVersion *string `json:"AddonVersion,omitnil,omitempty" name:"AddonVersion"` - // addon的参数,是一个json格式的base64转码后的字符串(addon参数由DescribeAddonValues获取) + // addon的参数,是一个json格式的base64转码后的字符串(addon参数由DescribeAddonValues获取,不传RawValues时AddonVersion必传)) RawValues *string `json:"RawValues,omitnil,omitempty" name:"RawValues"` + + // addon参数的更新策略,支持replace和merge两种策略,默认值为merge,兼容旧版本API。replace:使用新RawValues全量替换addon原RawValues,merge:根据新RawValues新增或更新addon原RawValues中对应参数。 + UpdateStrategy *string `json:"UpdateStrategy,omitnil,omitempty" name:"UpdateStrategy"` } func (r *UpdateAddonRequest) ToJsonString() string { @@ -20404,6 +20410,7 @@ func (r *UpdateAddonRequest) FromJsonString(s string) error { delete(f, "AddonName") delete(f, "AddonVersion") delete(f, "RawValues") + delete(f, "UpdateStrategy") if len(f) > 0 { return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "UpdateAddonRequest has unknown keys!", "") } diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20220501/models.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20220501/models.go index 1bb040b5c8..91fe96beca 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20220501/models.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20220501/models.go @@ -180,6 +180,9 @@ type CreateNativeNodePoolParam struct { // 节点池ssh公钥id数组 KeyIds []*string `json:"KeyIds,omitnil,omitempty" name:"KeyIds"` + + // 节点池类型 + MachineType *string `json:"MachineType,omitnil,omitempty" name:"MachineType"` } // Predefined struct for user @@ -1551,6 +1554,10 @@ type NativeNodePoolInfo struct { // 原生节点池数据盘 // 注意:此字段可能返回 null,表示取不到有效值。 DataDisks []*DataDisk `json:"DataDisks,omitnil,omitempty" name:"DataDisks"` + + // 原生节点机型 Native, NativeCVM + // 注意:此字段可能返回 null,表示取不到有效值。 + MachineType *string `json:"MachineType,omitnil,omitempty" name:"MachineType"` } type NodeCountSummary struct { diff --git a/vendor/modules.txt b/vendor/modules.txt index 50eaded370..200c979e86 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1324,7 +1324,7 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo/v20220901 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998 ## explicit; go 1.14 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc/v20230321 -# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1031 +# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1038 ## explicit; go 1.14 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20180525 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20220501 diff --git a/website/docs/r/kubernetes_native_node_pool.html.markdown b/website/docs/r/kubernetes_native_node_pool.html.markdown index 24e4fe8354..d3b15b4daf 100644 --- a/website/docs/r/kubernetes_native_node_pool.html.markdown +++ b/website/docs/r/kubernetes_native_node_pool.html.markdown @@ -183,6 +183,7 @@ The `native` object supports the following: * `key_ids` - (Optional, List) Node pool ssh public key id array. * `kubelet_args` - (Optional, List) Kubelet custom parameters. * `lifecycle` - (Optional, List) Predefined scripts. +* `machine_type` - (Optional, String, ForceNew) Node pool type. Example value: `NativeCVM` or `Native`. Default is `Native`. * `management` - (Optional, List) Node pool management parameter settings. * `replicas` - (Optional, Int) Desired number of nodes. * `runtime_root_dir` - (Optional, String, ForceNew) Runtime root directory.