From ae26016a913077295c88551888e5f5cec970f7a9 Mon Sep 17 00:00:00 2001 From: Eric Zhao Date: Wed, 27 Sep 2023 01:31:41 +1000 Subject: [PATCH] feat!: make promethus configurable (#1715) --- autogen/main/cluster.tf.tmpl | 20 +++++++++---------- cluster.tf | 14 ++++--------- .../cluster.tf | 14 ++++--------- modules/beta-private-cluster/cluster.tf | 14 ++++--------- .../cluster.tf | 14 ++++--------- modules/beta-public-cluster/cluster.tf | 14 ++++--------- .../private-cluster-update-variant/cluster.tf | 14 ++++--------- modules/private-cluster/cluster.tf | 14 ++++--------- .../testdata/TestBetaCluster.json | 4 +--- .../testdata/TestDisableClientCert.json | 3 ++- .../TestPrivateZonalWithNetworking.json | 3 ++- .../testdata/TestSaferCluster.json | 3 ++- .../testdata/TestSandboxEnabled.json | 3 ++- .../testdata/TestSimpleAutopilotPrivate.json | 2 ++ .../testdata/TestSimpleAutopilotPublic.json | 2 ++ .../testdata/TestSimpleRegional.json | 4 +--- .../testdata/TestSimpleRegionalPrivate.json | 2 ++ .../TestSimpleRegionalWithKubeConfig.json | 2 ++ .../TestSimpleRegionalWithNetworking.json | 2 ++ .../testdata/TestSimpleWindowsNodePool.json | 2 ++ .../testdata/TestSimpleZonal.json | 3 ++- .../testdata/TestSimpleZonalPrivate.json | 3 ++- 22 files changed, 63 insertions(+), 93 deletions(-) diff --git a/autogen/main/cluster.tf.tmpl b/autogen/main/cluster.tf.tmpl index 69da5b71c..a9a7719e6 100644 --- a/autogen/main/cluster.tf.tmpl +++ b/autogen/main/cluster.tf.tmpl @@ -113,17 +113,15 @@ resource "google_container_cluster" "primary" { monitoring_service = local.logmon_config_is_set ? null : var.monitoring_service {% endif %} dynamic "monitoring_config" { - for_each = length(var.monitoring_enabled_components) > 0 || var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enable_components = length(var.monitoring_enabled_components) > 0 ? var.monitoring_enabled_components : [] - - dynamic "managed_prometheus" { - for_each = var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enabled = var.monitoring_enable_managed_prometheus - } + {% if beta_cluster %} + for_each = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? [1] : [] + {% else %} + for_each = local.logmon_config_is_set || local.logmon_config_is_set ? [1] : [] + {% endif %} + content{ + enable_components = var.monitoring_enabled_components + managed_prometheus { + enabled = var.monitoring_enable_managed_prometheus } } } diff --git a/cluster.tf b/cluster.tf index 8334f7db0..7c8b05cda 100644 --- a/cluster.tf +++ b/cluster.tf @@ -82,17 +82,11 @@ resource "google_container_cluster" "primary" { } monitoring_service = local.logmon_config_is_set ? null : var.monitoring_service dynamic "monitoring_config" { - for_each = length(var.monitoring_enabled_components) > 0 || var.monitoring_enable_managed_prometheus ? [1] : [] - + for_each = local.logmon_config_is_set || local.logmon_config_is_set ? [1] : [] content { - enable_components = length(var.monitoring_enabled_components) > 0 ? var.monitoring_enabled_components : [] - - dynamic "managed_prometheus" { - for_each = var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enabled = var.monitoring_enable_managed_prometheus - } + enable_components = var.monitoring_enabled_components + managed_prometheus { + enabled = var.monitoring_enable_managed_prometheus } } } diff --git a/modules/beta-private-cluster-update-variant/cluster.tf b/modules/beta-private-cluster-update-variant/cluster.tf index e81bea4c6..756d6e0ba 100644 --- a/modules/beta-private-cluster-update-variant/cluster.tf +++ b/modules/beta-private-cluster-update-variant/cluster.tf @@ -94,17 +94,11 @@ resource "google_container_cluster" "primary" { } monitoring_service = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? null : var.monitoring_service dynamic "monitoring_config" { - for_each = length(var.monitoring_enabled_components) > 0 || var.monitoring_enable_managed_prometheus ? [1] : [] - + for_each = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? [1] : [] content { - enable_components = length(var.monitoring_enabled_components) > 0 ? var.monitoring_enabled_components : [] - - dynamic "managed_prometheus" { - for_each = var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enabled = var.monitoring_enable_managed_prometheus - } + enable_components = var.monitoring_enabled_components + managed_prometheus { + enabled = var.monitoring_enable_managed_prometheus } } } diff --git a/modules/beta-private-cluster/cluster.tf b/modules/beta-private-cluster/cluster.tf index 2646fa385..81c79e47e 100644 --- a/modules/beta-private-cluster/cluster.tf +++ b/modules/beta-private-cluster/cluster.tf @@ -94,17 +94,11 @@ resource "google_container_cluster" "primary" { } monitoring_service = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? null : var.monitoring_service dynamic "monitoring_config" { - for_each = length(var.monitoring_enabled_components) > 0 || var.monitoring_enable_managed_prometheus ? [1] : [] - + for_each = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? [1] : [] content { - enable_components = length(var.monitoring_enabled_components) > 0 ? var.monitoring_enabled_components : [] - - dynamic "managed_prometheus" { - for_each = var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enabled = var.monitoring_enable_managed_prometheus - } + enable_components = var.monitoring_enabled_components + managed_prometheus { + enabled = var.monitoring_enable_managed_prometheus } } } diff --git a/modules/beta-public-cluster-update-variant/cluster.tf b/modules/beta-public-cluster-update-variant/cluster.tf index b240b2739..4b3bb173f 100644 --- a/modules/beta-public-cluster-update-variant/cluster.tf +++ b/modules/beta-public-cluster-update-variant/cluster.tf @@ -94,17 +94,11 @@ resource "google_container_cluster" "primary" { } monitoring_service = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? null : var.monitoring_service dynamic "monitoring_config" { - for_each = length(var.monitoring_enabled_components) > 0 || var.monitoring_enable_managed_prometheus ? [1] : [] - + for_each = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? [1] : [] content { - enable_components = length(var.monitoring_enabled_components) > 0 ? var.monitoring_enabled_components : [] - - dynamic "managed_prometheus" { - for_each = var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enabled = var.monitoring_enable_managed_prometheus - } + enable_components = var.monitoring_enabled_components + managed_prometheus { + enabled = var.monitoring_enable_managed_prometheus } } } diff --git a/modules/beta-public-cluster/cluster.tf b/modules/beta-public-cluster/cluster.tf index aa6cefa09..007cbd144 100644 --- a/modules/beta-public-cluster/cluster.tf +++ b/modules/beta-public-cluster/cluster.tf @@ -94,17 +94,11 @@ resource "google_container_cluster" "primary" { } monitoring_service = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? null : var.monitoring_service dynamic "monitoring_config" { - for_each = length(var.monitoring_enabled_components) > 0 || var.monitoring_enable_managed_prometheus ? [1] : [] - + for_each = local.cluster_telemetry_type_is_set || local.logmon_config_is_set ? [1] : [] content { - enable_components = length(var.monitoring_enabled_components) > 0 ? var.monitoring_enabled_components : [] - - dynamic "managed_prometheus" { - for_each = var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enabled = var.monitoring_enable_managed_prometheus - } + enable_components = var.monitoring_enabled_components + managed_prometheus { + enabled = var.monitoring_enable_managed_prometheus } } } diff --git a/modules/private-cluster-update-variant/cluster.tf b/modules/private-cluster-update-variant/cluster.tf index 6db8bb3e5..191c99ec5 100644 --- a/modules/private-cluster-update-variant/cluster.tf +++ b/modules/private-cluster-update-variant/cluster.tf @@ -82,17 +82,11 @@ resource "google_container_cluster" "primary" { } monitoring_service = local.logmon_config_is_set ? null : var.monitoring_service dynamic "monitoring_config" { - for_each = length(var.monitoring_enabled_components) > 0 || var.monitoring_enable_managed_prometheus ? [1] : [] - + for_each = local.logmon_config_is_set || local.logmon_config_is_set ? [1] : [] content { - enable_components = length(var.monitoring_enabled_components) > 0 ? var.monitoring_enabled_components : [] - - dynamic "managed_prometheus" { - for_each = var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enabled = var.monitoring_enable_managed_prometheus - } + enable_components = var.monitoring_enabled_components + managed_prometheus { + enabled = var.monitoring_enable_managed_prometheus } } } diff --git a/modules/private-cluster/cluster.tf b/modules/private-cluster/cluster.tf index dc50906bd..c2fa9906d 100644 --- a/modules/private-cluster/cluster.tf +++ b/modules/private-cluster/cluster.tf @@ -82,17 +82,11 @@ resource "google_container_cluster" "primary" { } monitoring_service = local.logmon_config_is_set ? null : var.monitoring_service dynamic "monitoring_config" { - for_each = length(var.monitoring_enabled_components) > 0 || var.monitoring_enable_managed_prometheus ? [1] : [] - + for_each = local.logmon_config_is_set || local.logmon_config_is_set ? [1] : [] content { - enable_components = length(var.monitoring_enabled_components) > 0 ? var.monitoring_enabled_components : [] - - dynamic "managed_prometheus" { - for_each = var.monitoring_enable_managed_prometheus ? [1] : [] - - content { - enabled = var.monitoring_enable_managed_prometheus - } + enable_components = var.monitoring_enabled_components + managed_prometheus { + enabled = var.monitoring_enable_managed_prometheus } } } diff --git a/test/integration/beta_cluster/testdata/TestBetaCluster.json b/test/integration/beta_cluster/testdata/TestBetaCluster.json index 5daccb0ac..aa5c8f025 100755 --- a/test/integration/beta_cluster/testdata/TestBetaCluster.json +++ b/test/integration/beta_cluster/testdata/TestBetaCluster.json @@ -107,9 +107,7 @@ "SYSTEM_COMPONENTS" ] }, - "managedPrometheusConfig": { - "enabled": true - } + "managedPrometheusConfig": {} }, "monitoringService": "monitoring.googleapis.com/kubernetes", "name": "CLUSTER_NAME", diff --git a/test/integration/disable_client_cert/testdata/TestDisableClientCert.json b/test/integration/disable_client_cert/testdata/TestDisableClientCert.json index 1718c9829..d10f0d294 100755 --- a/test/integration/disable_client_cert/testdata/TestDisableClientCert.json +++ b/test/integration/disable_client_cert/testdata/TestDisableClientCert.json @@ -90,7 +90,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] - } + }, + "managedPrometheusConfig": {} }, "monitoringService": "monitoring.googleapis.com/kubernetes", "name": "CLUSTER_NAME", diff --git a/test/integration/private_zonal_with_networking/testdata/TestPrivateZonalWithNetworking.json b/test/integration/private_zonal_with_networking/testdata/TestPrivateZonalWithNetworking.json index 5d0cd6984..51f49e228 100755 --- a/test/integration/private_zonal_with_networking/testdata/TestPrivateZonalWithNetworking.json +++ b/test/integration/private_zonal_with_networking/testdata/TestPrivateZonalWithNetworking.json @@ -90,7 +90,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] - } + }, + "managedPrometheusConfig": {} }, "monitoringService": "monitoring.googleapis.com/kubernetes", "name": "CLUSTER_NAME", diff --git a/test/integration/safer_cluster/testdata/TestSaferCluster.json b/test/integration/safer_cluster/testdata/TestSaferCluster.json index 0af5138e8..cb1bdb367 100755 --- a/test/integration/safer_cluster/testdata/TestSaferCluster.json +++ b/test/integration/safer_cluster/testdata/TestSaferCluster.json @@ -98,7 +98,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] - } + }, + "managedPrometheusConfig": {} }, "monitoringService": "monitoring.googleapis.com/kubernetes", "name": "CLUSTER_NAME", diff --git a/test/integration/sandbox_enabled/testdata/TestSandboxEnabled.json b/test/integration/sandbox_enabled/testdata/TestSandboxEnabled.json index d3f0b35a1..c915fc944 100755 --- a/test/integration/sandbox_enabled/testdata/TestSandboxEnabled.json +++ b/test/integration/sandbox_enabled/testdata/TestSandboxEnabled.json @@ -89,7 +89,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] - } + }, + "managedPrometheusConfig": {} }, "monitoringService": "monitoring.googleapis.com/kubernetes", "name": "CLUSTER_NAME", diff --git a/test/integration/simple_autopilot_private/testdata/TestSimpleAutopilotPrivate.json b/test/integration/simple_autopilot_private/testdata/TestSimpleAutopilotPrivate.json index 816355490..997ba9b5e 100644 --- a/test/integration/simple_autopilot_private/testdata/TestSimpleAutopilotPrivate.json +++ b/test/integration/simple_autopilot_private/testdata/TestSimpleAutopilotPrivate.json @@ -136,6 +136,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] + }, + "managedPrometheusConfig": { } }, "monitoringService": "monitoring.googleapis.com/kubernetes", diff --git a/test/integration/simple_autopilot_public/testdata/TestSimpleAutopilotPublic.json b/test/integration/simple_autopilot_public/testdata/TestSimpleAutopilotPublic.json index 2c14c1fc3..0e92769fe 100644 --- a/test/integration/simple_autopilot_public/testdata/TestSimpleAutopilotPublic.json +++ b/test/integration/simple_autopilot_public/testdata/TestSimpleAutopilotPublic.json @@ -130,6 +130,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] + }, + "managedPrometheusConfig": { } }, "monitoringService": "monitoring.googleapis.com/kubernetes", diff --git a/test/integration/simple_regional/testdata/TestSimpleRegional.json b/test/integration/simple_regional/testdata/TestSimpleRegional.json index f90d32d50..40dd394d7 100644 --- a/test/integration/simple_regional/testdata/TestSimpleRegional.json +++ b/test/integration/simple_regional/testdata/TestSimpleRegional.json @@ -105,9 +105,7 @@ "SYSTEM_COMPONENTS" ] }, - "managedPrometheusConfig": { - "enabled": true - } + "managedPrometheusConfig": {} }, "monitoringService": "monitoring.googleapis.com/kubernetes", "name": "CLUSTER_NAME", diff --git a/test/integration/simple_regional_private/testdata/TestSimpleRegionalPrivate.json b/test/integration/simple_regional_private/testdata/TestSimpleRegionalPrivate.json index 4b35e684b..295ae578f 100644 --- a/test/integration/simple_regional_private/testdata/TestSimpleRegionalPrivate.json +++ b/test/integration/simple_regional_private/testdata/TestSimpleRegionalPrivate.json @@ -92,6 +92,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] + }, + "managedPrometheusConfig": { } }, "monitoringService": "monitoring.googleapis.com/kubernetes", diff --git a/test/integration/simple_regional_with_kubeconfig/testdata/TestSimpleRegionalWithKubeConfig.json b/test/integration/simple_regional_with_kubeconfig/testdata/TestSimpleRegionalWithKubeConfig.json index b53e771ac..33e3de8c0 100644 --- a/test/integration/simple_regional_with_kubeconfig/testdata/TestSimpleRegionalWithKubeConfig.json +++ b/test/integration/simple_regional_with_kubeconfig/testdata/TestSimpleRegionalWithKubeConfig.json @@ -89,6 +89,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] + }, + "managedPrometheusConfig": { } }, "monitoringService": "monitoring.googleapis.com/kubernetes", diff --git a/test/integration/simple_regional_with_networking/testdata/TestSimpleRegionalWithNetworking.json b/test/integration/simple_regional_with_networking/testdata/TestSimpleRegionalWithNetworking.json index 17d8f60bf..5c2b2478f 100644 --- a/test/integration/simple_regional_with_networking/testdata/TestSimpleRegionalWithNetworking.json +++ b/test/integration/simple_regional_with_networking/testdata/TestSimpleRegionalWithNetworking.json @@ -89,6 +89,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] + }, + "managedPrometheusConfig": { } }, "monitoringService": "monitoring.googleapis.com/kubernetes", diff --git a/test/integration/simple_windows_node_pool/testdata/TestSimpleWindowsNodePool.json b/test/integration/simple_windows_node_pool/testdata/TestSimpleWindowsNodePool.json index e0b46fb4c..d5569ab48 100644 --- a/test/integration/simple_windows_node_pool/testdata/TestSimpleWindowsNodePool.json +++ b/test/integration/simple_windows_node_pool/testdata/TestSimpleWindowsNodePool.json @@ -94,6 +94,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] + }, + "managedPrometheusConfig": { } }, "monitoringService": "monitoring.googleapis.com/kubernetes", diff --git a/test/integration/simple_zonal/testdata/TestSimpleZonal.json b/test/integration/simple_zonal/testdata/TestSimpleZonal.json index 2b3c367e7..5d1987285 100644 --- a/test/integration/simple_zonal/testdata/TestSimpleZonal.json +++ b/test/integration/simple_zonal/testdata/TestSimpleZonal.json @@ -84,7 +84,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] - } + }, + "managedPrometheusConfig": {} }, "monitoringService": "monitoring.googleapis.com/kubernetes", "name": "CLUSTER_NAME", diff --git a/test/integration/simple_zonal_private/testdata/TestSimpleZonalPrivate.json b/test/integration/simple_zonal_private/testdata/TestSimpleZonalPrivate.json index 71cbbdc50..0172ee91f 100644 --- a/test/integration/simple_zonal_private/testdata/TestSimpleZonalPrivate.json +++ b/test/integration/simple_zonal_private/testdata/TestSimpleZonalPrivate.json @@ -89,7 +89,8 @@ "enableComponents": [ "SYSTEM_COMPONENTS" ] - } + }, + "managedPrometheusConfig": {} }, "monitoringService": "monitoring.googleapis.com/kubernetes", "name": "CLUSTER_NAME",