Skip to content

Commit 279c8e8

Browse files
authored
fix: updated iap_config behavior to match TPG 6.0 (#469)
1 parent 6c45d7e commit 279c8e8

File tree

6 files changed

+19
-29
lines changed

6 files changed

+19
-29
lines changed

autogen/main.tf.tmpl

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -256,13 +256,10 @@ resource "google_compute_backend_service" "default" {
256256
}
257257
}
258258

259-
dynamic "iap" {
260-
for_each = try(each.value["iap_config"], null) != null && lookup(try(each.value["iap_config"], {}), "enable", false) ? [1] : []
261-
content {
262-
enabled = lookup(each.value["iap_config"], "enable", false)
263-
oauth2_client_id = lookup(each.value["iap_config"], "oauth2_client_id")
264-
oauth2_client_secret = lookup(each.value["iap_config"], "oauth2_client_secret")
265-
}
259+
iap {
260+
enabled = try(each.value["iap_config"], null) == null ? false : lookup(try(each.value["iap_config"], {}), "enable", false)
261+
oauth2_client_id = try(each.value["iap_config"], null) == null ? null : lookup(each.value["iap_config"], "oauth2_client_id")
262+
oauth2_client_secret = try(each.value["iap_config"], null) == null ? null : lookup(each.value["iap_config"], "oauth2_client_secret")
266263
}
267264

268265
dynamic "cdn_policy" {

examples/user-managed-google-managed-ssl/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ locals {
6565

6666
module "gce-lb-https" {
6767
source = "terraform-google-modules/lb-http/google"
68-
version = "~> 11.0"
68+
version = "~> 12.0"
6969

7070
name = var.network_name
7171
project = var.project_id

main.tf

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -238,13 +238,10 @@ resource "google_compute_backend_service" "default" {
238238
}
239239
}
240240

241-
dynamic "iap" {
242-
for_each = try(each.value["iap_config"], null) != null && lookup(try(each.value["iap_config"], {}), "enable", false) ? [1] : []
243-
content {
244-
enabled = lookup(each.value["iap_config"], "enable", false)
245-
oauth2_client_id = lookup(each.value["iap_config"], "oauth2_client_id")
246-
oauth2_client_secret = lookup(each.value["iap_config"], "oauth2_client_secret")
247-
}
241+
iap {
242+
enabled = try(each.value["iap_config"], null) == null ? false : lookup(try(each.value["iap_config"], {}), "enable", false)
243+
oauth2_client_id = try(each.value["iap_config"], null) == null ? null : lookup(each.value["iap_config"], "oauth2_client_id")
244+
oauth2_client_secret = try(each.value["iap_config"], null) == null ? null : lookup(each.value["iap_config"], "oauth2_client_secret")
248245
}
249246

250247
dynamic "cdn_policy" {

modules/dynamic_backends/main.tf

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -238,13 +238,10 @@ resource "google_compute_backend_service" "default" {
238238
}
239239
}
240240

241-
dynamic "iap" {
242-
for_each = try(each.value["iap_config"], null) != null && lookup(try(each.value["iap_config"], {}), "enable", false) ? [1] : []
243-
content {
244-
enabled = lookup(each.value["iap_config"], "enable", false)
245-
oauth2_client_id = lookup(each.value["iap_config"], "oauth2_client_id")
246-
oauth2_client_secret = lookup(each.value["iap_config"], "oauth2_client_secret")
247-
}
241+
iap {
242+
enabled = try(each.value["iap_config"], null) == null ? false : lookup(try(each.value["iap_config"], {}), "enable", false)
243+
oauth2_client_id = try(each.value["iap_config"], null) == null ? null : lookup(each.value["iap_config"], "oauth2_client_id")
244+
oauth2_client_secret = try(each.value["iap_config"], null) == null ? null : lookup(each.value["iap_config"], "oauth2_client_secret")
248245
}
249246

250247
dynamic "cdn_policy" {

modules/serverless_negs/main.tf

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -233,13 +233,10 @@ resource "google_compute_backend_service" "default" {
233233
}
234234
}
235235

236-
dynamic "iap" {
237-
for_each = try(each.value["iap_config"], null) != null && lookup(try(each.value["iap_config"], {}), "enable", false) ? [1] : []
238-
content {
239-
enabled = lookup(each.value["iap_config"], "enable", false)
240-
oauth2_client_id = lookup(each.value["iap_config"], "oauth2_client_id")
241-
oauth2_client_secret = lookup(each.value["iap_config"], "oauth2_client_secret")
242-
}
236+
iap {
237+
enabled = try(each.value["iap_config"], null) == null ? false : lookup(try(each.value["iap_config"], {}), "enable", false)
238+
oauth2_client_id = try(each.value["iap_config"], null) == null ? null : lookup(each.value["iap_config"], "oauth2_client_id")
239+
oauth2_client_secret = try(each.value["iap_config"], null) == null ? null : lookup(each.value["iap_config"], "oauth2_client_secret")
243240
}
244241

245242
dynamic "cdn_policy" {

test/setup/main.tf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ module "project-ci-lb-http" {
2626
default_service_account = "keep"
2727
disable_dependent_services = false
2828
disable_services_on_destroy = false
29+
deletion_policy = "DELETE"
2930

3031
activate_apis = [
3132
"cloudresourcemanager.googleapis.com",
@@ -50,6 +51,7 @@ module "project-ci-lb-http-1" {
5051
default_service_account = "keep"
5152
disable_dependent_services = false
5253
disable_services_on_destroy = false
54+
deletion_policy = "DELETE"
5355

5456
activate_apis = [
5557
"cloudresourcemanager.googleapis.com",

0 commit comments

Comments
 (0)