Fix #26918: IOS TypeError (#26999)

Fix IOS TypeError

* if flags are None, then ' '.join(flags) fails
* fixed get_defaults_flag so that it returns a list, and ignores lines with white space

Fixes #26918
pull/27090/head
David Newswanger 7 years ago committed by Toshio Kuratomi
parent 0b5b5ec50a
commit 9f64e446c6

@ -71,13 +71,13 @@ def get_defaults_flag(module):
commands = set() commands = set()
for line in out.splitlines(): for line in out.splitlines():
if line: if line.strip():
commands.add(line.strip().split()[0]) commands.add(line.strip().split()[0])
if 'all' in commands: if 'all' in commands:
return 'all' return ['all']
else: else:
return 'full' return ['full']
def get_config(module, flags=[]): def get_config(module, flags=[]):

@ -343,7 +343,7 @@ def get_running_config(module, current_config=None):
if not module.params['defaults'] and current_config: if not module.params['defaults'] and current_config:
contents, banners = extract_banners(current_config.config_text) contents, banners = extract_banners(current_config.config_text)
else: else:
flags = get_defaults_flag(module) if module.params['defaults'] else None flags = get_defaults_flag(module) if module.params['defaults'] else []
contents = get_config(module, flags=flags) contents = get_config(module, flags=flags)
contents, banners = extract_banners(contents) contents, banners = extract_banners(contents)
return NetworkConfig(indent=1, contents=contents), banners return NetworkConfig(indent=1, contents=contents), banners

Loading…
Cancel
Save