Skip to content

Commit efb0e6d

Browse files
Benjamin BauerDennis Ploeger
authored andcommitted
feat: added node pool attribute "temporary_name_for_rotation" to allow resizing k8s vms with only one node pool
1 parent 5f0a395 commit efb0e6d

File tree

2 files changed

+24
-17
lines changed

2 files changed

+24
-17
lines changed

main.tf

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*/
99

1010
locals {
11-
cluster_name = "${lower(var.project)}${lower(var.stage)}k8s"
11+
cluster_name = "${lower(var.project)}${lower(var.stage)}k8s"
1212
has_automatic_channel_upgrade_maintenance_window = var.automatic_channel_upgrade != "none" ? [var.automatic_channel_upgrade] : []
1313
}
1414

@@ -30,27 +30,28 @@ resource "azurerm_kubernetes_cluster" "k8s" {
3030

3131
automatic_channel_upgrade = var.automatic_channel_upgrade != "none" ? var.automatic_channel_upgrade : null
3232
dynamic "maintenance_window_auto_upgrade" {
33-
for_each = local.has_automatic_channel_upgrade_maintenance_window
33+
for_each = local.has_automatic_channel_upgrade_maintenance_window
3434
content {
35-
frequency = "Weekly"
36-
interval = "1"
37-
duration = var.maintenance_window_auto_upgrade_duration
38-
day_of_week = var.maintenance_window_auto_upgrade_day_of_week
39-
start_time = var.maintenance_window_auto_upgrade_start_time
40-
utc_offset = var.maintenance_window_auto_upgrade_utc_offset
35+
frequency = "Weekly"
36+
interval = "1"
37+
duration = var.maintenance_window_auto_upgrade_duration
38+
day_of_week = var.maintenance_window_auto_upgrade_day_of_week
39+
start_time = var.maintenance_window_auto_upgrade_start_time
40+
utc_offset = var.maintenance_window_auto_upgrade_utc_offset
4141
}
4242
}
4343

4444
default_node_pool {
45-
name = var.default_node_pool_name
46-
type = "VirtualMachineScaleSets"
47-
node_count = var.node_count
48-
vm_size = var.vm_size
49-
os_disk_size_gb = var.node_storage
50-
vnet_subnet_id = var.subnet_id
51-
max_pods = var.max_pods
52-
orchestrator_version = var.default_node_pool_k8s_version
53-
zones = var.availability_zones
45+
name = var.default_node_pool_name
46+
type = "VirtualMachineScaleSets"
47+
node_count = var.node_count
48+
vm_size = var.vm_size
49+
os_disk_size_gb = var.node_storage
50+
vnet_subnet_id = var.subnet_id
51+
max_pods = var.max_pods
52+
orchestrator_version = var.default_node_pool_k8s_version
53+
zones = var.availability_zones
54+
temporary_name_for_rotation = var.temporary_name_for_rotation
5455
}
5556

5657
dynamic "api_server_access_profile" {

vars.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,12 @@ variable "availability_zones" {
113113
default = []
114114
}
115115

116+
variable "temporary_name_for_rotation" {
117+
type = string
118+
description = "Specifies the name of the temporary node pool used to cycle the default node pool for VM resizing."
119+
default = "default_rotation_tmp"
120+
}
121+
116122
variable "sku_tier" {
117123
type = string
118124
default = "Free"

0 commit comments

Comments
 (0)