# Automatically discover all HCL policy files under policies/ directory locals { policy_files = [ for f in fileset("policies", "**/*.hcl") : { name = trimsuffix(f, ".hcl") path = "policies/${f}" } ] } # Define Vault policies for all discovered HCL files resource "vault_policy" "policies" { for_each = { for p in local.policy_files : p.name => p } name = each.key policy = file(each.value.path) }