locals { # Collect template files relative to root template_files = fileset( "${path.root}/${var.templates_dir}", var.file_pattern ) # Map filename (without extension) to template content templates = { for rel_path in local.template_files : trimsuffix(basename(rel_path), ".tmpl") => { content = file("${path.root}/${var.templates_dir}/${rel_path}") } } } resource "grafana_message_template" "templates" { for_each = local.templates name = "${var.template_prefix}${each.key}" template = each.value.content disable_provenance = var.disable_provenance }