From 88061d97b23a30bb75dd53b1f1e999cdfe52c01b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miha=20Frange=C5=BE?= Date: Fri, 9 Jan 2026 11:34:36 +0100 Subject: [PATCH] Fix types for new ansible Is more strict about types. See https://docs.ansible.com/projects/ansible/latest/porting_guides/porting_guide_core_2.19.html#broken-conditionals --- filter_plugins/util.py | 7 +++++++ roles/debian/tasks/main.yml | 2 +- roles/facts/tasks/main.yml | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) 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: diff --git a/roles/facts/tasks/main.yml b/roles/facts/tasks/main.yml index bf6e0e3..c900b27 100644 --- a/roles/facts/tasks/main.yml +++ b/roles/facts/tasks/main.yml @@ -48,7 +48,7 @@ set_fact: services: '{{ query("netbox.netbox.nb_lookup", "services", raw_data=true, - api_filter=("virtual_machine_id" if is_virtual else "device_id")+"="+id) }}' + api_filter=("virtual_machine_id" if is_virtual else "device_id")~"="~id) }}' - when: 'cluster is defined and not is_virtual' block: