26 lines
987 B
Terraform
26 lines
987 B
Terraform
|
|
locals {
|
||
|
|
# Data sources with both manual changes allowed and destroy protection
|
||
|
|
datasources_ignore_and_protect = {
|
||
|
|
for ds in var.datasources : ds.name => ds
|
||
|
|
if lookup(ds, "keep_manual_changes", false) && lookup(ds, "prevent_destroy_on_recreate", false)
|
||
|
|
}
|
||
|
|
|
||
|
|
# Data sources with only manual changes allowed
|
||
|
|
datasources_ignore_only = {
|
||
|
|
for ds in var.datasources : ds.name => ds
|
||
|
|
if lookup(ds, "keep_manual_changes", false) && !lookup(ds, "prevent_destroy_on_recreate", false)
|
||
|
|
}
|
||
|
|
|
||
|
|
# Data sources with only destroy protection enabled
|
||
|
|
datasources_protect_only = {
|
||
|
|
for ds in var.datasources : ds.name => ds
|
||
|
|
if !lookup(ds, "keep_manual_changes", false) && lookup(ds, "prevent_destroy_on_recreate", false)
|
||
|
|
}
|
||
|
|
|
||
|
|
# Standard data sources without any special lifecycle management
|
||
|
|
datasources_standard = {
|
||
|
|
for ds in var.datasources : ds.name => ds
|
||
|
|
if !lookup(ds, "keep_manual_changes", false) && !lookup(ds, "prevent_destroy_on_recreate", false)
|
||
|
|
}
|
||
|
|
}
|