Skip to content

Commit bbe3a17

Browse files
netsirkdevoncrouse
authored andcommitted
feat: An OKE nodepool is limited to 32 chars. Variable label_prefix can sometimes consume most of those chars. This will allow us to maintain variable label_prefix while giving us the ability to override the nodepool name using the key name as defined in variable node_pools.
Signed-off-by: Christopher Corn <[email protected]>
1 parent b24c7e4 commit bbe3a17

File tree

4 files changed

+28
-15
lines changed

4 files changed

+28
-15
lines changed

main.tf

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -264,20 +264,21 @@ module "oke" {
264264
admission_controller_options = var.admission_controller_options
265265

266266
# oke node pool parameters
267-
kubeproxy_mode = var.kubeproxy_mode
268-
max_pods_per_node = var.max_pods_per_node
269-
node_pools = var.node_pools
270-
node_pool_name_prefix = var.node_pool_name_prefix
271-
node_pool_image_id = var.node_pool_image_id
272-
node_pool_image_type = var.node_pool_image_type
273-
node_pool_os = var.node_pool_os
274-
node_pool_os_version = var.node_pool_os_version
275-
node_pool_timezone = var.node_pool_timezone
276-
enable_pv_encryption_in_transit = var.enable_pv_encryption_in_transit
277-
use_node_pool_volume_encryption = var.use_node_pool_volume_encryption
278-
node_pool_volume_kms_key_id = var.node_pool_volume_kms_key_id
279-
cloudinit_nodepool = var.cloudinit_nodepool
280-
cloudinit_nodepool_common = var.cloudinit_nodepool_common
267+
kubeproxy_mode = var.kubeproxy_mode
268+
max_pods_per_node = var.max_pods_per_node
269+
node_pools = var.node_pools
270+
node_pool_name_prefix = var.node_pool_name_prefix
271+
node_pool_image_id = var.node_pool_image_id
272+
node_pool_image_type = var.node_pool_image_type
273+
node_pool_os = var.node_pool_os
274+
node_pool_os_version = var.node_pool_os_version
275+
node_pool_timezone = var.node_pool_timezone
276+
ignore_label_prefix_in_node_pool_names = var.ignore_label_prefix_in_node_pool_names
277+
enable_pv_encryption_in_transit = var.enable_pv_encryption_in_transit
278+
use_node_pool_volume_encryption = var.use_node_pool_volume_encryption
279+
node_pool_volume_kms_key_id = var.node_pool_volume_kms_key_id
280+
cloudinit_nodepool = var.cloudinit_nodepool
281+
cloudinit_nodepool_common = var.cloudinit_nodepool_common
281282

282283
# oke load balancer parameters
283284
preferred_load_balancer = var.preferred_load_balancer

modules/oke/nodepools.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ resource "oci_containerengine_node_pool" "nodepools" {
88
depends_on = [oci_containerengine_cluster.k8s_cluster]
99

1010
kubernetes_version = var.cluster_kubernetes_version
11-
name = var.label_prefix == "none" ? each.key : "${var.label_prefix}-${each.key}"
11+
name = var.label_prefix == "none" || var.ignore_label_prefix_in_node_pool_names ? each.key : "${var.label_prefix}-${each.key}"
1212

1313
freeform_tags = merge(lookup(var.freeform_tags, "node_pool", {}), lookup(each.value, "nodepool_freeform_tags", {}))
1414
defined_tags = merge(lookup(var.defined_tags, "node_pool", {}), lookup(each.value, "nodepool_defined_tags", {}))

modules/oke/variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,12 @@ variable "node_pools" {
9595
type = any
9696
}
9797

98+
variable "ignore_label_prefix_in_node_pool_names" {
99+
default = false
100+
description = "Do not use the label_prefix when naming each node pool. This frees up more characters for the nodepool name. Current limit to node pool name is 32 characters."
101+
type = bool
102+
}
103+
98104
variable "node_pool_name_prefix" {}
99105

100106
variable "node_pool_image_id" {}

variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -739,6 +739,12 @@ variable "node_pool_timezone" {
739739
type = string
740740
}
741741

742+
variable "ignore_label_prefix_in_node_pool_names" {
743+
default = false
744+
description = "Do not use the label_prefix when naming each node pool. This frees up more characters for the nodepool name. Current limit to node pool name is 32 characters."
745+
type = bool
746+
}
747+
742748
variable "worker_nsgs" {
743749
default = []
744750
description = "An additional list of network security groups (NSG) ids for the worker nodes that can be created subsequently."

0 commit comments

Comments
 (0)