summaryrefslogtreecommitdiff
path: root/roles/apps/publish/base
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2023-12-28 03:43:54 +0100
committerChristian Pointner <equinox@spreadspace.org>2023-12-28 03:43:54 +0100
commitc51bc2b05c810db3a4c42353b97799733709106c (patch)
treebd405cb865d74da27ecfa8244b15a6452c3a7ce1 /roles/apps/publish/base
parentadd apps/upstream role (diff)
apps/node-red: 80% done but still (WIP)
Diffstat (limited to 'roles/apps/publish/base')
-rw-r--r--roles/apps/publish/base/defaults/main.yml1
-rw-r--r--roles/apps/publish/base/filter_plugins/publish.py9
-rw-r--r--roles/apps/publish/base/tasks/main.yml1
3 files changed, 8 insertions, 3 deletions
diff --git a/roles/apps/publish/base/defaults/main.yml b/roles/apps/publish/base/defaults/main.yml
index 5a01bc97..32e1af9f 100644
--- a/roles/apps/publish/base/defaults/main.yml
+++ b/roles/apps/publish/base/defaults/main.yml
@@ -1,5 +1,6 @@
---
# apps_publish_zone__example:
# name: example
+# publisher: invetory-hostname-of-publishing-machine
# certificate_provider: ...
# certificate_ca_config: ....
diff --git a/roles/apps/publish/base/filter_plugins/publish.py b/roles/apps/publish/base/filter_plugins/publish.py
index e0e1463d..4052df20 100644
--- a/roles/apps/publish/base/filter_plugins/publish.py
+++ b/roles/apps/publish/base/filter_plugins/publish.py
@@ -9,9 +9,12 @@ from ansible import errors
def apps_publish_zones(vars):
try:
result = []
- for var in vars.keys():
- if var.startswith('apps_publish_zone__'):
- result.append(vars[var])
+ thishost = vars['inventory_hostname']
+ for varname in vars.keys():
+ if varname.startswith('apps_publish_zone__'):
+ zone = vars[varname]
+ if zone['publisher'] == thishost:
+ result.append(zone)
return result
except Exception as e:
raise errors.AnsibleFilterError("apps_publish_zones(): %s" % str(e))
diff --git a/roles/apps/publish/base/tasks/main.yml b/roles/apps/publish/base/tasks/main.yml
index 9384b53f..1eb3ddca 100644
--- a/roles/apps/publish/base/tasks/main.yml
+++ b/roles/apps/publish/base/tasks/main.yml
@@ -19,3 +19,4 @@
- nginx
include_role:
name: "x509/{{ item.certificate_provider }}/cert"
+ allow_duplicates: yes