@@ -151,6 +151,7 @@ resource "ibm_container_vpc_cluster" "cluster" {
151151
152152# copy of the cluster resource above which ignores changes to the worker pool for use in autoscaling scenarios
153153resource "ibm_container_vpc_cluster" "autoscaling_cluster" {
154+ depends_on = [null_resource. reset_api_key ]
154155 count = var. ignore_worker_pool_size_changes ? 1 : 0
155156 name = var. cluster_name
156157 vpc_id = var. vpc_id
@@ -253,7 +254,7 @@ resource "null_resource" "reset_api_key" {
253254# #############################################################################
254255
255256data "ibm_container_cluster_config" "cluster_config" {
256- count = var. verify_worker_network_readiness ? 1 : 0
257+ count = var. verify_worker_network_readiness || lookup (local . addons_list , " cluster-autoscaler " , null ) != null ? 1 : 0
257258 cluster_name_id = local. cluster_id
258259 config_dir = " ${ path . module } /kubeconfig"
259260 resource_group_id = var. resource_group_id
@@ -373,7 +374,7 @@ resource "null_resource" "confirm_network_healthy" {
373374 # Worker pool creation can start before the 'ibm_container_vpc_cluster' completes since there is no explicit
374375 # depends_on in 'ibm_container_vpc_worker_pool', just an implicit depends_on on the cluster ID. Cluster ID can exist before
375376 # 'ibm_container_vpc_cluster' completes, so hence need to add explicit depends on against 'ibm_container_vpc_cluster' here.
376- depends_on = [ibm_container_vpc_cluster . cluster , ibm_container_vpc_worker_pool . pool , ibm_container_vpc_worker_pool . autoscaling_pool ]
377+ depends_on = [ibm_container_vpc_cluster . cluster , ibm_container_vpc_cluster . autoscaling_cluster , ibm_container_vpc_worker_pool . pool , ibm_container_vpc_worker_pool . autoscaling_pool ]
377378
378379 provisioner "local-exec" {
379380 command = " ${ path . module } /scripts/confirm_network_healthy.sh"
@@ -394,7 +395,7 @@ resource "ibm_container_addons" "addons" {
394395 # Worker pool creation can start before the 'ibm_container_vpc_cluster' completes since there is no explicit
395396 # depends_on in 'ibm_container_vpc_worker_pool', just an implicit depends_on on the cluster ID. Cluster ID can exist before
396397 # 'ibm_container_vpc_cluster' completes, so hence need to add explicit depends on against 'ibm_container_vpc_cluster' here.
397- depends_on = [ibm_container_vpc_cluster . cluster , ibm_container_vpc_worker_pool . pool , ibm_container_vpc_worker_pool . autoscaling_pool , null_resource. confirm_network_healthy ]
398+ depends_on = [ibm_container_vpc_cluster . cluster , ibm_container_vpc_cluster . autoscaling_cluster , ibm_container_vpc_worker_pool . pool , ibm_container_vpc_worker_pool . autoscaling_pool , null_resource. confirm_network_healthy ]
398399
399400 cluster = local. cluster_id
400401 resource_group_id = var. resource_group_id
@@ -415,11 +416,6 @@ resource "ibm_container_addons" "addons" {
415416 }
416417}
417418
418- resource "time_sleep" "wait_operators" {
419- depends_on = [ibm_container_addons . addons ]
420- create_duration = " 5s"
421- }
422-
423419locals {
424420 worker_pool_config = [
425421 for worker in var . worker_pools :
@@ -433,9 +429,22 @@ locals {
433429
434430}
435431
432+ resource "null_resource" "config_map_status" {
433+ count = lookup (local. addons_list , " cluster-autoscaler" , null ) != null ? 1 : 0
434+ depends_on = [ibm_container_addons . addons ]
435+
436+ provisioner "local-exec" {
437+ command = " ${ path . module } /scripts/get_config_map_status.sh"
438+ interpreter = [" /bin/bash" , " -c" ]
439+ environment = {
440+ KUBECONFIG = data.ibm_container_cluster_config.cluster_config[0 ].config_file_path
441+ }
442+ }
443+ }
444+
436445resource "kubernetes_config_map_v1_data" "set_autoscaling" {
437- count = ! (var . disable_public_endpoint ) && lookup (local. addons_list , " cluster-autoscaler" , null ) != null ? 1 : 0
438- depends_on = [time_sleep . wait_operators ]
446+ count = lookup (local. addons_list , " cluster-autoscaler" , null ) != null ? 1 : 0
447+ depends_on = [null_resource . config_map_status ]
439448
440449 metadata {
441450 name = " iks-ca-configmap"
0 commit comments