If default option is eanbled fetch the current
running configuration by adding `all` or `full`
flag
(cherry picked from commit 09e3b5c92b
)
Update Changelog
This commit is contained in:
parent
e1fde2a50f
commit
4b979742fa
2 changed files with 7 additions and 4 deletions
2
changelogs/fragments/ios_defaults_fetch.yaml
Normal file
2
changelogs/fragments/ios_defaults_fetch.yaml
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
bugfixes:
|
||||||
|
- ios_config - If defaults is enabled append default flag to command (https://github.com/ansible/ansible/pull/39741)
|
|
@ -373,13 +373,13 @@ def load_banners(module, banners):
|
||||||
run_commands(module, ['\n'])
|
run_commands(module, ['\n'])
|
||||||
|
|
||||||
|
|
||||||
def get_running_config(module, current_config=None):
|
def get_running_config(module, current_config=None, flags=None):
|
||||||
contents = module.params['running_config']
|
contents = module.params['running_config']
|
||||||
|
|
||||||
if not contents:
|
if not contents:
|
||||||
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 []
|
|
||||||
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
|
||||||
|
@ -467,9 +467,10 @@ def main():
|
||||||
result['warnings'] = warnings
|
result['warnings'] = warnings
|
||||||
|
|
||||||
config = None
|
config = None
|
||||||
|
flags = get_defaults_flag(module) if module.params['defaults'] else []
|
||||||
|
|
||||||
if module.params['backup'] or (module._diff and module.params['diff_against'] == 'running'):
|
if module.params['backup'] or (module._diff and module.params['diff_against'] == 'running'):
|
||||||
contents = get_config(module)
|
contents = get_config(module, flags=flags)
|
||||||
config = NetworkConfig(indent=1, contents=contents)
|
config = NetworkConfig(indent=1, contents=contents)
|
||||||
if module.params['backup']:
|
if module.params['backup']:
|
||||||
result['__backup__'] = contents
|
result['__backup__'] = contents
|
||||||
|
@ -482,7 +483,7 @@ def main():
|
||||||
candidate, want_banners = get_candidate(module)
|
candidate, want_banners = get_candidate(module)
|
||||||
|
|
||||||
if match != 'none':
|
if match != 'none':
|
||||||
config, have_banners = get_running_config(module, config)
|
config, have_banners = get_running_config(module, config, flags=flags)
|
||||||
path = module.params['parents']
|
path = module.params['parents']
|
||||||
configobjs = candidate.difference(config, path=path, match=match, replace=replace)
|
configobjs = candidate.difference(config, path=path, match=match, replace=replace)
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in a new issue