diff --git a/lib/ansible/modules/network/junos/junos_config.py b/lib/ansible/modules/network/junos/junos_config.py index 894d849875bbf5..c04ac5c6ee18ca 100644 --- a/lib/ansible/modules/network/junos/junos_config.py +++ b/lib/ansible/modules/network/junos/junos_config.py @@ -184,7 +184,7 @@ from ansible.module_utils.network.junos.junos import commit_configuration, discard_changes, locked_config from ansible.module_utils.network.junos.junos import junos_argument_spec, load_configuration, get_connection, tostring from ansible.module_utils.six import string_types -from ansible.module_utils._text import to_native +from ansible.module_utils._text import to_native, to_text try: from lxml.etree import Element, fromstring @@ -362,10 +362,11 @@ def main(): 'comment': module.params['comment'] } - if module.params['confirm'] > 0: + confirm = module.params['confirm'] + if confirm > 0: kwargs.update({ 'confirm': True, - 'confirm_timeout': module.params['confirm'] + 'confirm_timeout': to_text(confirm, errors='surrogate_then_replace') }) commit_configuration(module, **kwargs) else: diff --git a/test/units/modules/network/junos/test_junos_config.py b/test/units/modules/network/junos/test_junos_config.py index 7d1a751d8fbd0b..d42dcacccea8b6 100644 --- a/test/units/modules/network/junos/test_junos_config.py +++ b/test/units/modules/network/junos/test_junos_config.py @@ -23,6 +23,7 @@ from ansible.compat.tests.mock import patch from ansible.modules.network.junos import junos_config from units.modules.utils import set_module_args +from ansible.module_utils._text import to_text from .junos_module import TestJunosModule, load_fixture @@ -118,7 +119,7 @@ def test_junos_config_confirm(self): set_module_args(dict(src=src, confirm=40)) self.execute_module(changed=True) args, kwargs = self.commit_configuration.call_args - self.assertEqual(kwargs['confirm_timeout'], 40) + self.assertEqual(kwargs['confirm_timeout'], to_text(40)) def test_junos_config_rollback(self): rollback = 10