diff --git a/changelogs/fragments/nxos_vlans_after_regex.yaml b/changelogs/fragments/nxos_vlans_after_regex.yaml new file mode 100644 index 000000000..7d67c5b0c --- /dev/null +++ b/changelogs/fragments/nxos_vlans_after_regex.yaml @@ -0,0 +1,2 @@ +bugfixes: + - cisco.nxos.nxos_vlans - fix vlans regex pattern that ignores vlans missing a name, even though the vlan has a vn-segment. (https://github.com/ansible-collections/cisco.nxos/pull/938). diff --git a/plugins/module_utils/network/nxos/facts/vlans/vlans.py b/plugins/module_utils/network/nxos/facts/vlans/vlans.py index f7ac798f1..9fc7b483a 100644 --- a/plugins/module_utils/network/nxos/facts/vlans/vlans.py +++ b/plugins/module_utils/network/nxos/facts/vlans/vlans.py @@ -188,7 +188,7 @@ def normalize_table_data(self, structured, run_cfg_output): # Sample match lines # 202\n name Production-Segment-100101\n vn-segment 100101 # 5\n state suspend\n shutdown\n name test-changeme\n vn-segment 942 - pattern = r"^{0}\s+\S.*vn-segment".format(v["vlan_id"]) + pattern = r"^{0}\s+.*vn-segment".format(v["vlan_id"]) if re.search(pattern, item, flags=re.DOTALL): vlan["run_cfg"] = item break diff --git a/tests/unit/modules/network/nxos/fixtures/nxos_vlans/show_running-config b/tests/unit/modules/network/nxos/fixtures/nxos_vlans/show_running-config index 51e64c996..28d8550b3 100644 --- a/tests/unit/modules/network/nxos/fixtures/nxos_vlans/show_running-config +++ b/tests/unit/modules/network/nxos/fixtures/nxos_vlans/show_running-config @@ -1,6 +1,8 @@ vlan 1,3-5,8 vlan 3 name test-vlan3 +vlan 4 + vn-segment 402 vlan 5 shutdown name test-changeme