Fix cli_config backup option check (#50926)
Fixes #50925 * If config or rollback option is None and backup=yes in that case add check so edit_config() is not invoked as it is not required.
This commit is contained in:
parent
27f4a1f927
commit
9d54e58216
1 changed files with 9 additions and 7 deletions
|
@ -201,14 +201,13 @@ def validate_args(module, capabilities):
|
||||||
module.fail_json(msg='diff_ignore_lines is not supported on this platform')
|
module.fail_json(msg='diff_ignore_lines is not supported on this platform')
|
||||||
|
|
||||||
|
|
||||||
def run(module, capabilities, connection, candidate, running):
|
def run(module, capabilities, connection, candidate, running, rollback_id):
|
||||||
result = {}
|
result = {}
|
||||||
resp = {}
|
resp = {}
|
||||||
config_diff = []
|
config_diff = []
|
||||||
banner_diff = {}
|
banner_diff = {}
|
||||||
|
|
||||||
replace = module.params['replace']
|
replace = module.params['replace']
|
||||||
rollback_id = module.params['rollback']
|
|
||||||
commit_comment = module.params['commit_comment']
|
commit_comment = module.params['commit_comment']
|
||||||
multiline_delimiter = module.params['multiline_delimiter']
|
multiline_delimiter = module.params['multiline_delimiter']
|
||||||
diff_replace = module.params['diff_replace']
|
diff_replace = module.params['diff_replace']
|
||||||
|
@ -337,16 +336,19 @@ def main():
|
||||||
else:
|
else:
|
||||||
flags = []
|
flags = []
|
||||||
|
|
||||||
candidate = to_text(module.params['config'])
|
candidate = module.params['config']
|
||||||
|
candidate = to_text(candidate, errors='surrogate_then_replace') if candidate else None
|
||||||
running = connection.get_config(flags=flags)
|
running = connection.get_config(flags=flags)
|
||||||
|
rollback_id = module.params['rollback']
|
||||||
|
|
||||||
if module.params['backup']:
|
if module.params['backup']:
|
||||||
result['__backup__'] = running
|
result['__backup__'] = running
|
||||||
|
|
||||||
try:
|
if candidate or rollback_id:
|
||||||
result.update(run(module, capabilities, connection, candidate, running))
|
try:
|
||||||
except Exception as exc:
|
result.update(run(module, capabilities, connection, candidate, running, rollback_id))
|
||||||
module.fail_json(msg=to_text(exc))
|
except Exception as exc:
|
||||||
|
module.fail_json(msg=to_text(exc))
|
||||||
|
|
||||||
module.exit_json(**result)
|
module.exit_json(**result)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue