# Does Ansible have any plans to build a separate set of modules for IOS-XE?

**URL:** <https://forum.ansible.com/t/does-ansible-have-any-plans-to-build-a-separate-set-of-modules-for-ios-xe/27415>\
**Category:** Ansible Developer\
**Created:** [April 30, 2018, 9:01pm UTC](https://forum.ansible.com/t/does-ansible-have-any-plans-to-build-a-separate-set-of-modules-for-ios-xe/27415 "2018-04-30T21:01:33Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![mfish82](https://avatars.discourse-cdn.com/v4/letter/m/6a8cbe/32.png) [@mfish82](https://forum.ansible.com/u/mfish82)\
**Post date:** [April 30, 2018, 9:01pm UTC](https://forum.ansible.com/t/does-ansible-have-any-plans-to-build-a-separate-set-of-modules-for-ios-xe/27415/1 "2018-04-30T21:01:33Z")

</div>

As my team and I have been going through and writing various scripts using Ansible, we have noticed that we encounter quite a few issues where we should be able to use the ios\_XXXX module, but it fails in the IOS-XE environment.

For example… ios\_facts will not run without limiting to only ‘config’ as it runs various commands against the device that do not exist in the IOS-XE code. An example below is trying to run ios\_facts and it failing when trying to run ‘show memory statistics’ as part of the fact gathering.

It doesn’t mean that the module is broken, just a compatibility issue between IOS and IOS-XE. With Cisco’s focus on moving away from IOS to IOS-XE, does Ansible and Co. have any plans to build/convert an IOS-XE module library or make the current IOS module library more compatible with XE?

**Ansible Output**

using connection plugin network\_cli (was local)

starting connection from persistent connection plugin  
found existing local domain socket, using it!  
updating play\_context for connection

local domain socket path is /home/.ansible/pc/2707a0f7ff  
socket\_path: /home//.ansible/pc/2707a0f7ff  
Using module file /usr/lib/python2.7/site-packages/ansible/modules/network/ios/ios\_facts.py  
ESTABLISH LOCAL CONNECTION FOR USER: XXXXXXX  
EXEC /bin/bash -c ‘/usr/bin/python && sleep 0’  
The full traceback is:  
Traceback (most recent call last):  
File “/tmp/ansible\_tTTP3y/ansible\_module\_ios\_facts.py”, line 516, in   
main()  
File “/tmp/ansible\_tTTP3y/ansible\_module\_ios\_facts.py”, line 501, in main  
inst.populate()  
File “/tmp/ansible\_tTTP3y/ansible\_module\_ios\_facts.py”, line 224, in populate  
super(Hardware, self).populate()  
File “/tmp/ansible\_tTTP3y/ansible\_module\_ios\_facts.py”, line 160, in populate  
self.responses = run\_commands(self.module, commands=self.COMMANDS, check\_rc=False)

File “/tmp/ansible\_tTTP3y/ansible\_modlib.zip/ansible/module\_utils/network/ios/ios.py”, line 147, in run\_commands

File “/tmp/ansible\_tTTP3y/ansible\_modlib.zip/ansible/module\_utils/connection.py”, line 149, in **rpc**

ansible.module\_utils.connection.ConnectionError: show memory statistics  
^  
% Invalid input detected at ‘^’ marker.

**Switch Output:**

hostname#show memory statistics  
^  
% Invalid input detected at ‘^’ marker.

hostname#show ver  
Cisco IOS Software, IOS-XE Software, Catalyst L3 Switch Software (CAT3K\_CAA-UNIVERSALK9-M), Version 03.07.05E RELEASE SOFTWARE (fc1)

---

<div class="post-metadata">

**Author:** ![psprygad](https://avatars.discourse-cdn.com/v4/letter/p/e8c25b/32.png) [@psprygad](https://forum.ansible.com/u/psprygad)\
**Post date:** [May 3, 2018, 3:06pm UTC](https://forum.ansible.com/t/does-ansible-have-any-plans-to-build-a-separate-set-of-modules-for-ios-xe/27415/2 "2018-05-03T15:06:31Z")

</div>

The short answer to your question is yes, we are actively working to make support more seamless between IOS and IOS-XE.
