From c58278b1c2c0c121d32133a27a0dd0b4607d9b02 Mon Sep 17 00:00:00 2001 From: Gabriele Date: Tue, 3 Jan 2017 16:50:31 +0100 Subject: [PATCH] Fixing nxos_ntp when no config exists (#19678) --- lib/ansible/modules/network/nxos/nxos_ntp.py | 74 ++++++++++---------- 1 file changed, 38 insertions(+), 36 deletions(-) diff --git a/lib/ansible/modules/network/nxos/nxos_ntp.py b/lib/ansible/modules/network/nxos/nxos_ntp.py index c54919283b3..0de3f4cf55f 100644 --- a/lib/ansible/modules/network/nxos/nxos_ntp.py +++ b/lib/ansible/modules/network/nxos/nxos_ntp.py @@ -400,49 +400,51 @@ def get_ntp_peer(module): command = 'show run | inc ntp.(server|peer)' ntp_peer_list = [] ntp = execute_show_command( - command, module, command_type='cli_show_ascii')[0] + command, module, command_type='cli_show_ascii') + if ntp: + ntp = ntp[0] - ntp_regex = ( - ".*ntp\s(server\s(?P
\S+)|peer\s(?P\S+))" - "\s*((?Pprefer)\s*)?(use-vrf\s(?P\S+)\s*)?" - "(key\s(?P\d+))?.*" - ) + ntp_regex = ( + ".*ntp\s(server\s(?P
\S+)|peer\s(?P\S+))" + "\s*((?Pprefer)\s*)?(use-vrf\s(?P\S+)\s*)?" + "(key\s(?P\d+))?.*" + ) - split_ntp = ntp.splitlines() - for peer_line in split_ntp: - ntp_peer = {} - try: - peer_address = None - vrf_name = None - prefer = None - key_id = None - match_ntp = re.match(ntp_regex, peer_line, re.DOTALL) - group_ntp = match_ntp.groupdict() + split_ntp = ntp.splitlines() + for peer_line in split_ntp: + ntp_peer = {} + try: + peer_address = None + vrf_name = None + prefer = None + key_id = None + match_ntp = re.match(ntp_regex, peer_line, re.DOTALL) + group_ntp = match_ntp.groupdict() - address = group_ntp["address"] - peer_address = group_ntp['peer_address'] - prefer = group_ntp['prefer'] - vrf_name = group_ntp['vrf_name'] - key_id = group_ntp['key_id'] + address = group_ntp["address"] + peer_address = group_ntp['peer_address'] + prefer = group_ntp['prefer'] + vrf_name = group_ntp['vrf_name'] + key_id = group_ntp['key_id'] - if prefer is not None: - prefer = 'enabled' - else: - prefer = 'disabled' + if prefer is not None: + prefer = 'enabled' + else: + prefer = 'disabled' - if address is not None: - peer_type = 'server' - elif peer_address is not None: - peer_type = 'peer' - address = peer_address + if address is not None: + peer_type = 'server' + elif peer_address is not None: + peer_type = 'peer' + address = peer_address - args = dict(peer_type=peer_type, address=address, prefer=prefer, - vrf_name=vrf_name, key_id=key_id) + args = dict(peer_type=peer_type, address=address, prefer=prefer, + vrf_name=vrf_name, key_id=key_id) - ntp_peer = dict((k, v) for k, v in args.items()) - ntp_peer_list.append(ntp_peer) - except AttributeError: - ntp_peer_list = [] + ntp_peer = dict((k, v) for k, v in args.items()) + ntp_peer_list.append(ntp_peer) + except AttributeError: + ntp_peer_list = [] return ntp_peer_list