Skip to content

Commit

Permalink
Raise error when trying to use older iosxr modules with netconf (ansi…
Browse files Browse the repository at this point in the history
  • Loading branch information
Qalthos committed Mar 15, 2018
1 parent a6d31b6 commit 85cc5ea
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 3 deletions.
7 changes: 5 additions & 2 deletions lib/ansible/plugins/action/iosxr.py
Expand Up @@ -42,12 +42,12 @@ def run(self, tmp=None, task_vars=None):
del tmp # tmp no longer has any effect

socket_path = None
force_cli = self._task.action in ('iosxr_netconf', 'iosxr_config', 'iosxr_command', 'iosxr_facts')

if self._play_context.connection == 'local':
provider = load_provider(iosxr_provider_spec, self._task.args)
pc = copy.deepcopy(self._play_context)
if self._task.action in ['iosxr_netconf', 'iosxr_config', 'iosxr_command'] or \
(provider['transport'] == 'cli'):
if force_cli or provider['transport'] == 'cli':
pc.connection = 'network_cli'
pc.port = int(provider['port'] or self._play_context.port or 22)
elif provider['transport'] == 'netconf':
Expand Down Expand Up @@ -75,6 +75,9 @@ def run(self, tmp=None, task_vars=None):

task_vars['ansible_socket'] = socket_path
elif self._play_context.connection in ('netconf', 'network_cli'):
if force_cli and self._play_context.connection != 'network_cli':
return {'failed': True, 'msg': 'Connection type %s is not valid for module %s' %
(self._play_context.connection, self._task.action)}
provider = self._task.args.get('provider', {})
if any(provider.values()):
display.warning('provider is unnecessary when using {0} and will be ignored'.format(self._play_context.connection))
Expand Down
1 change: 0 additions & 1 deletion lib/ansible/plugins/netconf/iosxr.py
Expand Up @@ -73,7 +73,6 @@ def transform_reply():
if sys.version < '3':
return reply
else:
print("utf8")
return reply.encode('UTF-8')


Expand Down

0 comments on commit 85cc5ea

Please sign in to comment.