Skip to content

Commit c3ed138

Browse files
authored
Feat/dtoss 10668 amend postgresql flexible terraform module to parameterise prevent destroy lifecycle (#221)
* Ensure admins are destroyed before databases * Increase the timeouts of the database deletes
1 parent 3ffaada commit c3ed138

2 files changed

Lines changed: 18 additions & 0 deletions

File tree

infrastructure/modules/postgresql-flexible/database.tf

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,14 @@ resource "azurerm_postgresql_flexible_server_database" "postgresql_flexible_db"
99
lifecycle {
1010
prevent_destroy = false
1111
}
12+
13+
timeouts {
14+
delete = "60m"
15+
}
16+
17+
# Ensure admins are destroyed before databases
18+
depends_on = [
19+
azurerm_postgresql_flexible_server_active_directory_administrator.postgresql_admin,
20+
azurerm_postgresql_flexible_server_active_directory_administrator.admin_identity
21+
]
1222
}

infrastructure/modules/postgresql-flexible/main.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,10 @@ resource "azurerm_postgresql_flexible_server_active_directory_administrator" "po
6969
object_id = var.postgresql_admin_object_id
7070
principal_name = var.postgresql_admin_principal_name
7171
principal_type = var.postgresql_admin_principal_type
72+
73+
timeouts {
74+
delete = "60m"
75+
}
7276
}
7377

7478
resource "azurerm_postgresql_flexible_server_active_directory_administrator" "admin_identity" {
@@ -83,6 +87,10 @@ resource "azurerm_postgresql_flexible_server_active_directory_administrator" "ad
8387
principal_name = each.value.principal_name
8488
object_id = each.value.object_id
8589
principal_type = "ServicePrincipal"
90+
91+
timeouts {
92+
delete = "60m"
93+
}
8694
}
8795

8896
# Create the server configurations

0 commit comments

Comments
 (0)