Skip to content

Commit 21f95db

Browse files
fix: Enable auto-upgrade in beta clusters with a release channel (terraform-google-modules#682)
* Enable auto-upgrade in beta clusters with a release channel Without this setting, a cluster with a default node pool will fail when a release channel is specified. The API responds with: Error: error creating NodePool: googleapi: Error 400: Auto_upgrade cannot be false when release_channel REGULAR is set., badRequest This is noted in the documentation, that use of a release channel requires auto-upgrade and auto-repair to be enabled: https://cloud.google.com/kubernetes-engine/docs/concepts/release-channels#new-cluster * Only include comment in beta block, run make build The previous location I placed the comment meant that it was in place even in non-beta clusters, so the comment was describing behavior that wasn't actually in place. Co-authored-by: Bharath KKB <bharathkrishnakb@gmail.com>
1 parent 716867c commit 21f95db

File tree

5 files changed

+13
-4
lines changed

5 files changed

+13
-4
lines changed

autogen/main/main.tf.tmpl

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,12 @@ locals {
7272
zone_count = length(var.zones)
7373
cluster_type = var.regional ? "regional" : "zonal"
7474
// auto upgrade by defaults only for regional cluster as long it has multiple masters versus zonal clusters have only have a single master so upgrades are more dangerous.
75+
{% if beta_cluster %}
76+
// When a release channel is used, node auto-upgrade are enabled and cannot be disabled.
77+
default_auto_upgrade = var.regional || var.release_channel != null ? true : false
78+
{% else %}
7579
default_auto_upgrade = var.regional ? true : false
80+
{% endif %}
7681

7782
cluster_subnet_cidr = var.add_cluster_firewall_rules ? data.google_compute_subnetwork.gke_subnetwork[0].ip_cidr_range : null
7883
cluster_alias_ranges_cidr = var.add_cluster_firewall_rules ? { for range in toset(data.google_compute_subnetwork.gke_subnetwork[0].secondary_ip_range) : range.range_name => range.ip_cidr_range } : {}

modules/beta-private-cluster-update-variant/main.tf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ locals {
6666
zone_count = length(var.zones)
6767
cluster_type = var.regional ? "regional" : "zonal"
6868
// auto upgrade by defaults only for regional cluster as long it has multiple masters versus zonal clusters have only have a single master so upgrades are more dangerous.
69-
default_auto_upgrade = var.regional ? true : false
69+
// When a release channel is used, node auto-upgrade are enabled and cannot be disabled.
70+
default_auto_upgrade = var.regional || var.release_channel != null ? true : false
7071

7172
cluster_subnet_cidr = var.add_cluster_firewall_rules ? data.google_compute_subnetwork.gke_subnetwork[0].ip_cidr_range : null
7273
cluster_alias_ranges_cidr = var.add_cluster_firewall_rules ? { for range in toset(data.google_compute_subnetwork.gke_subnetwork[0].secondary_ip_range) : range.range_name => range.ip_cidr_range } : {}

modules/beta-private-cluster/main.tf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ locals {
6666
zone_count = length(var.zones)
6767
cluster_type = var.regional ? "regional" : "zonal"
6868
// auto upgrade by defaults only for regional cluster as long it has multiple masters versus zonal clusters have only have a single master so upgrades are more dangerous.
69-
default_auto_upgrade = var.regional ? true : false
69+
// When a release channel is used, node auto-upgrade are enabled and cannot be disabled.
70+
default_auto_upgrade = var.regional || var.release_channel != null ? true : false
7071

7172
cluster_subnet_cidr = var.add_cluster_firewall_rules ? data.google_compute_subnetwork.gke_subnetwork[0].ip_cidr_range : null
7273
cluster_alias_ranges_cidr = var.add_cluster_firewall_rules ? { for range in toset(data.google_compute_subnetwork.gke_subnetwork[0].secondary_ip_range) : range.range_name => range.ip_cidr_range } : {}

modules/beta-public-cluster-update-variant/main.tf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ locals {
6666
zone_count = length(var.zones)
6767
cluster_type = var.regional ? "regional" : "zonal"
6868
// auto upgrade by defaults only for regional cluster as long it has multiple masters versus zonal clusters have only have a single master so upgrades are more dangerous.
69-
default_auto_upgrade = var.regional ? true : false
69+
// When a release channel is used, node auto-upgrade are enabled and cannot be disabled.
70+
default_auto_upgrade = var.regional || var.release_channel != null ? true : false
7071

7172
cluster_subnet_cidr = var.add_cluster_firewall_rules ? data.google_compute_subnetwork.gke_subnetwork[0].ip_cidr_range : null
7273
cluster_alias_ranges_cidr = var.add_cluster_firewall_rules ? { for range in toset(data.google_compute_subnetwork.gke_subnetwork[0].secondary_ip_range) : range.range_name => range.ip_cidr_range } : {}

modules/beta-public-cluster/main.tf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ locals {
6666
zone_count = length(var.zones)
6767
cluster_type = var.regional ? "regional" : "zonal"
6868
// auto upgrade by defaults only for regional cluster as long it has multiple masters versus zonal clusters have only have a single master so upgrades are more dangerous.
69-
default_auto_upgrade = var.regional ? true : false
69+
// When a release channel is used, node auto-upgrade are enabled and cannot be disabled.
70+
default_auto_upgrade = var.regional || var.release_channel != null ? true : false
7071

7172
cluster_subnet_cidr = var.add_cluster_firewall_rules ? data.google_compute_subnetwork.gke_subnetwork[0].ip_cidr_range : null
7273
cluster_alias_ranges_cidr = var.add_cluster_firewall_rules ? { for range in toset(data.google_compute_subnetwork.gke_subnetwork[0].secondary_ip_range) : range.range_name => range.ip_cidr_range } : {}

0 commit comments

Comments
 (0)