From 255234fdde9b6f1c49c0b15a4d1c2e5c523ee275 Mon Sep 17 00:00:00 2001
From: Dominik Rimpf <dominik.rimpf@kit.edu>
Date: Fri, 13 Oct 2023 22:06:44 +0200
Subject: [PATCH] updated docs. create not existing fqdns. use fqdn type (for
 future normalization)

---
 json_templates/fqdn_token.json | 40 +++++++++++++++++++++++++++-------
 1 file changed, 32 insertions(+), 8 deletions(-)

diff --git a/json_templates/fqdn_token.json b/json_templates/fqdn_token.json
index f34e5f6..60e7c07 100644
--- a/json_templates/fqdn_token.json
+++ b/json_templates/fqdn_token.json
@@ -7,12 +7,12 @@
     "en": "Create token"
   },
   "description": {
-    "de": "Ein Token mit Berechtigungen für Domains anlegen",
-    "en": "Create a token for a set of domains"
+    "de": "Ein Token mit ausschließlich Berechtigungen für Domains anlegen",
+    "en": "Create a token with only permissions on a set of domains"
   },
   "list_display_name": {
-    "de": "Ein Token mit Berechtigungen für Domains anlegen",
-    "en": "Create a token for a set of domains"
+    "de": "Ein Token mit Berechtigungen für die Domains {{ domains }} anlegen.",
+    "en": "Create a token with permissions for the domains {{ domains }}."
   },
   "display_variant": "create",
   "variables": {
@@ -61,11 +61,11 @@
       "default": "",
       "nullable": false,
       "description": {
-        "de": "Domains, für die Zertifikate bestellt werden können sollen. Subdomains dieser Domains sind automatisch mit eingeschlossen.",
-        "en": "Domains for which certificates should be ordered. Subdomains of these domains are automatically included."
+        "de": "Domains, für die der Token Berechtigungen erhält. Subdomains dieser Domains sind automatisch mit eingeschlossen.",
+        "en": "Domains for which the token receives permissions. Subdomains of these domains are automatically included."
       },
       "list": true,
-      "type": "str"
+      "type": "fqdn"
     }
   },
   "transaction": [
@@ -106,12 +106,36 @@
         "value_list": "{{ domains }}"
       }
     },
+    {
+      "idx": "getExistingFQDNs",
+      "name": "dns.fqdn.list",
+      "old": {
+        "value_list": "{{ domains }}"
+      }
+    },
+    {
+      "idx": "defineWantedFQDNs",
+      "name": "tmp.generic_object.list",
+      "ref_params_join_on_val_attrs_tuple": ["item"],
+      "old": {
+        "_dict_list": "{{ domains }}"
+      }
+    },
+    {
+      "idx": "createMissingFQDN",
+      "name": "dns.fqdn.create",
+      "new": {"type":  "domain"},
+      "new_ref_params": [
+        {"idx": "getExistingFQDNs", "params": {"value": "value"}},
+        {"idx": "defineWantedFQDNs", "join_type": "full_anti", "join_on": "val", "params": {"value": "item"}}
+      ]
+    },
     {
       "idx": "fqdn2group",
       "name": "dns.fqdn2group.create",
       "new_ref_params": [
         {"idx": "createSubGroup", "params": {"group_name": "name"}},
-        {"idx": "getFQDNS", "params": {"fqdn_value": "value"}, "join_type": "cross"}
+        {"idx": "defineWantedFQDNs", "params": {"fqdn_value": "item"}, "join_type": "cross"}
       ]
     },
     {
-- 
GitLab