From 79b0739ba2c35b602ac608cd16bc63be4a0f1a40 Mon Sep 17 00:00:00 2001 From: Bobby Watson Date: Fri, 9 Feb 2018 10:09:09 -0500 Subject: [PATCH] Accept interfaces without address family or method (#34200) --- lib/ansible/modules/system/interfaces_file.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/ansible/modules/system/interfaces_file.py b/lib/ansible/modules/system/interfaces_file.py index 215e3fc3a03..897d69dc8ab 100755 --- a/lib/ansible/modules/system/interfaces_file.py +++ b/lib/ansible/modules/system/interfaces_file.py @@ -208,14 +208,15 @@ def read_interfaces_lines(module, line_strings): "down": [], "post-up": [] } - iface_name, address_family_name, method_name = words[1:4] - if len(words) != 4: - module.fail_json(msg="Incorrect number of parameters (%d) in line %d, must be exectly 3" % (len(words), i)) - # TODO: put line and count parameters - return None, None - - currif['address_family'] = address_family_name - currif['method'] = method_name + iface_name = words[1] + try: + currif['address_family'] = words[2] + except IndexError: + currif['address_family'] = None + try: + currif['method'] = words[3] + except IndexError: + currif['method'] = None ifaces[iface_name] = currif lines.append({'line': line, 'iface': iface_name, 'line_type': 'iface', 'params': currif})