fix autoscaling block (#877)

* fix autoscaling block

* invert autoscaling block condition

* add autoscaling test
This commit is contained in:
Ludovico Magnocavallo
2022-10-12 16:44:47 +02:00
committed by GitHub
parent 162268a48b
commit bc8f0c90b7
2 changed files with 24 additions and 4 deletions

View File

@@ -81,7 +81,10 @@ resource "google_container_node_pool" "nodepool" {
dynamic "autoscaling" { dynamic "autoscaling" {
for_each = ( for_each = (
try(var.nodepool_config.autoscaling.use_total_nodes, false) ? [] : [""] try(var.nodepool_config.autoscaling, null) != null
&&
!try(var.nodepool_config.autoscaling.use_total_nodes, false)
? [""] : []
) )
content { content {
location_policy = try(var.nodepool_config.autoscaling.location_policy, null) location_policy = try(var.nodepool_config.autoscaling.location_policy, null)
@@ -94,9 +97,9 @@ resource "google_container_node_pool" "nodepool" {
try(var.nodepool_config.autoscaling.use_total_nodes, false) ? [""] : [] try(var.nodepool_config.autoscaling.use_total_nodes, false) ? [""] : []
) )
content { content {
location_policy = try(var.nodepool_config.autoscaling.location_policy, null) location_policy = try(var.nodepool_config.autoscaling.location_policy, null)
max_node_count = try(var.nodepool_config.autoscaling.max_node_count, null) total_max_node_count = try(var.nodepool_config.autoscaling.max_node_count, null)
min_node_count = try(var.nodepool_config.autoscaling.min_node_count, null) total_min_node_count = try(var.nodepool_config.autoscaling.min_node_count, null)
} }
} }

View File

@@ -17,6 +17,7 @@ def test_defaults(plan_runner):
"Test resources created with variable defaults." "Test resources created with variable defaults."
_, resources = plan_runner() _, resources = plan_runner()
assert len(resources) == 1 assert len(resources) == 1
assert resources[0]['values']['autoscaling'] == []
def test_service_account(plan_runner): def test_service_account(plan_runner):
@@ -34,6 +35,22 @@ def test_nodepool_config(plan_runner):
upgrade_settings = { max_surge = 3, max_unavailable = 3 } upgrade_settings = { max_surge = 3, max_unavailable = 3 }
}''' }'''
_, resources = plan_runner(nodepool_config=nodepool_config) _, resources = plan_runner(nodepool_config=nodepool_config)
assert resources[0]['values']['autoscaling'] == [{
'location_policy': None,
'max_node_count': None,
'min_node_count': None,
'total_max_node_count': 3,
'total_min_node_count': None
}]
nodepool_config = '{ autoscaling = { max_node_count = 3} }'
_, resources = plan_runner(nodepool_config=nodepool_config)
assert resources[0]['values']['autoscaling'] == [{
'location_policy': None,
'max_node_count': 3,
'min_node_count': None,
'total_max_node_count': None,
'total_min_node_count': None
}]
def test_node_config(plan_runner): def test_node_config(plan_runner):