summaryrefslogtreecommitdiff
path: root/modules/ri-base/src/main/resources/io/trygvis/rules/terraform/terraform-resources.drl
diff options
context:
space:
mode:
Diffstat (limited to 'modules/ri-base/src/main/resources/io/trygvis/rules/terraform/terraform-resources.drl')
-rw-r--r--modules/ri-base/src/main/resources/io/trygvis/rules/terraform/terraform-resources.drl28
1 files changed, 28 insertions, 0 deletions
diff --git a/modules/ri-base/src/main/resources/io/trygvis/rules/terraform/terraform-resources.drl b/modules/ri-base/src/main/resources/io/trygvis/rules/terraform/terraform-resources.drl
new file mode 100644
index 0000000..40a81f0
--- /dev/null
+++ b/modules/ri-base/src/main/resources/io/trygvis/rules/terraform/terraform-resources.drl
@@ -0,0 +1,28 @@
+package io.trygvis.rules.terraform;
+
+import java.util.ArrayList
+import java.util.HashSet
+import java.util.Map
+import java.util.Set
+
+global io.trygvis.rules.engine.TemplateEngine te;
+
+dialect "mvel"
+
+rule "terraform-resources"
+ agenda-group "generate"
+when
+ $r : TerraformResource()
+then
+ te.template("terraform/resource", $r.output, Map.of("resource", $r));
+end
+
+rule "main.tf"
+ agenda-group "generate"
+when
+ $main : TerraformMain()
+ $variables : ArrayList() from collect(TerraformInputVariable(module == $main.module))
+then
+ te.template("terraform/main", $main.module + "/main.tf", Map.of("main", $main));
+ te.template("terraform/variables", $main.module + "/vars.tf", Map.of("variables", $variables));
+end