diff --git a/filter_plugins/util.py b/filter_plugins/util.py index af5d1b7..e0b34e3 100644 --- a/filter_plugins/util.py +++ b/filter_plugins/util.py @@ -6,6 +6,7 @@ class FilterModule(object): return { 'defaultattr': self.defaultattr, 'list2dict': self.list2dict, + 'any': self.any, } def defaultattr(self, objects, attr, val=None): @@ -19,3 +20,9 @@ class FilterModule(object): Like items2dict but keep entire dictionaries as values. ''' return {item[key]: item for item in items} + + def any(self, items): + ''' + Return True if any item in the list is True. + ''' + return any(items) diff --git a/roles/debian/tasks/main.yml b/roles/debian/tasks/main.yml index 66b0761..b0606d1 100644 --- a/roles/debian/tasks/main.yml +++ b/roles/debian/tasks/main.yml @@ -92,7 +92,7 @@ when: not is_proxmox # proxmox has its own firewall configuration - name: Run SSH instance in management VRF - when: interfaces | selectattr('vrf') | selectattr('vrf.name', '==', 'mgmt') + when: interfaces | selectattr('vrf') | selectattr('vrf.name', '==', 'mgmt') | any block: - name: Configure SSH instance in management VRF copy: