Closed misch42 closed 3 years ago
I'm having a similar problem when running on the same Cisco WS-C2960-48TT-S with Version 12.2(50)SE5 My code:
- name: Configure Vlans
cisco.ios.ios_vlans:
config:
- name: ansible_VLAN
vlan_id: 52
state: active
@misch42 can you please share your VLANs existing config where it's failing
inventory:
all:
hosts:
switch02:
ansible_host: 192.168.88.130
vlans:
- name: VLAN10
id: 10
- name: VLAN20
id: 20
- name: MGMT
id: 999
originally I had:
- name: configure VLANs
ios_vlans:
config:
- name: "{{ item.name }}"
vlan_id: "{{ item.id }}"
state: active
shutdown: disabled
state: merged
loop: "{{ vlans }}"
but even the simper version:
- name: configure VLANs
cisco.ios.ios_vlans:
config:
- name: VLAN10
vlan_id: 10
state: active
shutdown: enabled
state: merged
does run into that error.
@misch42 it's failing while gathering facts, so can u plz share the switch vlans config with which it has failed.
Sorry, cannot repeat it now. Works for me at the moment.
Perhaps it was a syntax error somewhere.
gather_facts and ios_vlans work for me now.
I'm still having the same issue.
Device: WS-C2960-48TT-S Version: 15.0(2)SE11
This is the yaml file (I tried with vlan_id: 8, '8' and "8", all with same result):
---
- name: Test
hosts: cisco
gather_facts: False
vars:
ansible_network_os: cisco.ios.ios
tasks:
- name: Create VLAN 8
cisco.ios.ios_vlans:
config:
- name: VLAN8
vlan_id: 8
state: active
shutdown: enabled
state: merged
And when running the code I got the following message:
ansible-playbook 2.10.6
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/it/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
executable location = /usr/bin/ansible-playbook
python version = 3.8.5 (default, Jan 27 2021, 15:41:15) [GCC 9.3.0]
Using /etc/ansible/ansible.cfg as config file
host_list declined parsing /home/it/ansible/routers/hosts as it did not pass its verify_file() method
script declined parsing /home/it/ansible/routers/hosts as it did not pass its verify_file() method
auto declined parsing /home/it/ansible/routers/hosts as it did not pass its verify_file() method
Parsed /home/it/ansible/routers/hosts inventory source with ini plugin
[WARNING]: packaging Python module unavailable; unable to validate collection Ansible version requirements
redirecting (type: action) cisco.ios.ios_vlans to cisco.ios.ios
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.
PLAYBOOK: basic_config.yml **************************************************************************************************************
1 plays in ./playbooks/basic_config.yml
PLAY [Test] *****************************************************************************************************************************
META: ran handlers
redirecting (type: action) cisco.ios.ios_vlans to cisco.ios.ios
TASK [Create VLAN 8] ********************************************************************************************************************
task path: /home/it/ansible/routers/playbooks/basic_config.yml:9
redirecting (type: action) cisco.ios.ios_vlans to cisco.ios.ios
redirecting (type: action) cisco.ios.ios_vlans to cisco.ios.ios
<10.0.5.5> ESTABLISH LOCAL CONNECTION FOR USER: it
<10.0.5.5> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/it/.ansible/tmp/ansible-local-267191i56p1rly `"&& mkdir "` echo /home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098 `" && echo ansible-tmp-1614976974.6392074-267195-148597576039098="` echo /home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098 `" ) && sleep 0'
<10.0.5.5> Attempting python interpreter discovery
<10.0.5.5> EXEC /bin/sh -c 'echo PLATFORM; uname; echo FOUND; command -v '"'"'/usr/bin/python'"'"'; command -v '"'"'python3.7'"'"'; command -v '"'"'python3.6'"'"'; command -v '"'"'python3.5'"'"'; command -v '"'"'python2.7'"'"'; command -v '"'"'python2.6'"'"'; command -v '"'"'/usr/libexec/platform-python'"'"'; command -v '"'"'/usr/bin/python3'"'"'; command -v '"'"'python'"'"'; echo ENDFOUND && sleep 0'
<10.0.5.5> EXEC /bin/sh -c '/usr/bin/python3 && sleep 0'
Using module file /home/it/.ansible/collections/ansible_collections/cisco/ios/plugins/modules/ios_vlans.py
<10.0.5.5> PUT /home/it/.ansible/tmp/ansible-local-267191i56p1rly/tmpsm451ng2 TO /home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py
<10.0.5.5> EXEC /bin/sh -c 'chmod u+x /home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/ /home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py && sleep 0'
<10.0.5.5> EXEC /bin/sh -c '/usr/bin/python3 /home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py && sleep 0'
<10.0.5.5> EXEC /bin/sh -c 'rm -f -r /home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
Traceback (most recent call last):
File "/home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py", line 102, in <module>
_ansiballz_main()
File "/home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py", line 94, in _ansiballz_main
invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
File "/home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py", line 40, in invoke_module
runpy.run_module(mod_name='ansible_collections.cisco.ios.plugins.modules.ios_vlans', init_globals=None, run_name='__main__', alter_sys=True)
File "/usr/lib/python3.8/runpy.py", line 207, in run_module
return _run_module_code(code, init_globals, run_name, mod_spec)
File "/usr/lib/python3.8/runpy.py", line 97, in _run_module_code
_run_code(code, mod_globals, init_globals,
File "/usr/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/modules/ios_vlans.py", line 748, in <module>
File "/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/modules/ios_vlans.py", line 743, in main
File "/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/config/vlans/vlans.py", line 70, in execute_module
File "/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/config/vlans/vlans.py", line 51, in get_vlans_facts
File "/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/facts/facts.py", line 121, in get_facts
File "/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/ansible/netcommon/plugins/module_utils/network/common/facts/facts.py", line 131, in get_network_resources_facts
File "/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/facts/vlans/vlans.py", line 89, in populate_facts
File "/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/facts/vlans/vlans.py", line 155, in render_config
ValueError: invalid literal for int() with base 10: 'Ports'
fatal: [10.0.5.5]: FAILED! => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python3"
},
"changed": false,
"module_stderr": "Traceback (most recent call last):\n File \"/home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py\", line 102, in <module>\n _ansiballz_main()\n File \"/home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py\", line 94, in _ansiballz_main\n invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n File \"/home/it/.ansible/tmp/ansible-local-267191i56p1rly/ansible-tmp-1614976974.6392074-267195-148597576039098/AnsiballZ_ios_vlans.py\", line 40, in invoke_module\n runpy.run_module(mod_name='ansible_collections.cisco.ios.plugins.modules.ios_vlans', init_globals=None, run_name='__main__', alter_sys=True)\n File \"/usr/lib/python3.8/runpy.py\", line 207, in run_module\n return _run_module_code(code, init_globals, run_name, mod_spec)\n File \"/usr/lib/python3.8/runpy.py\", line 97, in _run_module_code\n _run_code(code, mod_globals, init_globals,\n File \"/usr/lib/python3.8/runpy.py\", line 87, in _run_code\n exec(code, run_globals)\n File \"/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/modules/ios_vlans.py\", line 748, in <module>\n File \"/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/modules/ios_vlans.py\", line 743, in main\n File \"/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/config/vlans/vlans.py\", line 70, in execute_module\n File \"/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/config/vlans/vlans.py\", line 51, in get_vlans_facts\n File \"/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/facts/facts.py\", line 121, in get_facts\n File \"/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/ansible/netcommon/plugins/module_utils/network/common/facts/facts.py\", line 131, in get_network_resources_facts\n File \"/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/facts/vlans/vlans.py\", line 89, in populate_facts\n File \"/tmp/ansible_cisco.ios.ios_vlans_payload_x4ms672x/ansible_cisco.ios.ios_vlans_payload.zip/ansible_collections/cisco/ios/plugins/module_utils/network/ios/facts/vlans/vlans.py\", line 155, in render_config\nValueError: invalid literal for int() with base 10: 'Ports'\n",
"module_stdout": "",
"msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
"rc": 1
}
SUMMARY
Error when gathering facts about vlans on my Cisco 2960
ISSUE TYPE
COMPONENT NAME
cisco.ios.ios_facts
ANSIBLE VERSION
CONFIGURATION
OS / ENVIRONMENT
STEPS TO REPRODUCE
execute playbook
EXPECTED RESULTS
show facts about vlans
ACTUAL RESULTS
invalid literal for int() with base 10: 'Ports'\n"