diff --git a/common/filter-tags/inputs.tf b/common/filter-tags/inputs.tf index 9c34609..c4b8283 100644 --- a/common/filter-tags/inputs.tf +++ b/common/filter-tags/inputs.tf @@ -24,7 +24,13 @@ variable "filter_tags_custom_excluded" { } variable "extra_tags" { - description = "Extra optional tags added for default filtering when filter_tags_use_defaults is true (i.e. [\"tag1:val1\", \"tag2:val2\"])" + description = "Extra optional tags added to include filtering in any case (i.e. [\"tag1:val1\", \"tag2:val2\"])" + type = "list" + default = [] +} + +variable "extra_tags_excluded" { + description = "Extra optional tags added to exclude filtering in any case (i.e. [\"tag1:val1\", \"tag2:val2\"])" type = "list" default = [] } diff --git a/common/filter-tags/locals.tf b/common/filter-tags/locals.tf index d153e77..f8447ac 100644 --- a/common/filter-tags/locals.tf +++ b/common/filter-tags/locals.tf @@ -1,7 +1,8 @@ locals { including_default_list = "${compact(concat(split(",", format("dd_monitoring:enabled,dd_%s:enabled,env:%s", var.resource, var.environment)), compact(var.extra_tags)))}" - excluding_list = "${compact(split(",", var.filter_tags_use_defaults == "true" ? "" : join(",", split(",", "${var.filter_tags_custom_excluded}"))))}" + including_custom_list = "${compact(concat(split(",", var.filter_tags_custom), compact(var.extra_tags)))}" + excluding_list = "${compact(split(",", var.filter_tags_use_defaults == "true" ? join(",", compact(var.extra_tags_excluded)) : join(",", concat(split(",", var.filter_tags_custom_excluded), compact(var.extra_tags_excluded)))))}" - including_string = "${var.filter_tags_use_defaults == "true" ? join(",", local.including_default_list) : "${var.filter_tags_custom}"}" + including_string = "${var.filter_tags_use_defaults == "true" ? join(",", local.including_default_list) : join(",", local.including_custom_list)}" excluding_string = "${join(",", local.excluding_list)}" }