diff --git a/lib/ansible/modules/network/junos/junos_config.py b/lib/ansible/modules/network/junos/junos_config.py index ac738d6c4ed..c5e9b4c1906 100644 --- a/lib/ansible/modules/network/junos/junos_config.py +++ b/lib/ansible/modules/network/junos/junos_config.py @@ -234,8 +234,6 @@ def filter_delete_statements(module, candidate): def configure_device(module, warnings): candidate = module.params['lines'] or module.params['src'] - if isinstance(candidate, string_types): - candidate = candidate.split('\n') kwargs = { 'comment': module.params['comment'], @@ -257,6 +255,9 @@ def configure_device(module, warnings): else: kwargs.update({'format': config_format, 'action': module.params['update']}) + if isinstance(candidate, string_types): + candidate = candidate.split('\n') + # this is done to filter out `delete ...` statements which map to # nothing in the config as that will cause an exception to be raised if any((module.params['lines'], config_format == 'set')):