Skip to content

Instantly share code, notes, and snippets.

@allenrobel
Created August 7, 2024 04:25
Show Gist options
  • Save allenrobel/c49cdc55d50c22e82b0843a3054ddf7d to your computer and use it in GitHub Desktop.
Save allenrobel/c49cdc55d50c22e82b0843a3054ddf7d to your computer and use it in GitHub Desktop.
KeyError when querying a network that does not exist.
arobel@AROBEL-M-G793 ndfc-roles-prod % ansible-playbook demo_query_network.yml -i inventory -vvv
ansible-playbook [core 2.16.6]
config file = /Users/arobel/repos/ndfc-roles-prod/ansible.cfg
configured module search path = ['/Users/arobel/repos/ansible_dev/dcnm_fabric/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /Users/arobel/repos/ansible_dev/dcnm_fabric/ansible_collections/cisco/dcnm/.venv/lib/python3.12/site-packages/ansible
ansible collection location = /Users/arobel/repos/ansible_dev/dcnm_fabric
executable location = /Users/arobel/repos/ansible_dev/dcnm_fabric/ansible_collections/cisco/dcnm/.venv/bin/ansible-playbook
python version = 3.12.0 (v3.12.0:0fb18b02c8, Oct 2 2023, 09:45:56) [Clang 13.0.0 (clang-1300.0.29.30)] (/Users/arobel/repos/ansible_dev/dcnm_fabric/ansible_collections/cisco/dcnm/.venv/bin/python)
jinja version = 3.1.4
libyaml = True
Using /Users/arobel/repos/ndfc-roles-prod/ansible.cfg as config file
host_list declined parsing /Users/arobel/repos/ndfc-roles-prod/inventory/hosts/hosts as it did not pass its verify_file() method
script declined parsing /Users/arobel/repos/ndfc-roles-prod/inventory/hosts/hosts as it did not pass its verify_file() method
auto declined parsing /Users/arobel/repos/ndfc-roles-prod/inventory/hosts/hosts as it did not pass its verify_file() method
Parsed /Users/arobel/repos/ndfc-roles-prod/inventory/hosts/hosts inventory source with yaml plugin
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: demo_query_network.yml **************************************************************************************************************************************************************************************************************************************************************************************************************************************
1 plays in demo_query_network.yml
PLAY [ndfc] ***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************
TASK [Demo Query network] *********************************************************************************************************************************************************************************************************************************************************************************************************************************************
task path: /Users/arobel/repos/ndfc-roles-prod/demo_query_network.yml:4
<172.25.74.143> ESTABLISH LOCAL CONNECTION FOR USER: arobel
<172.25.74.143> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za `"&& mkdir "` echo /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386 `" && echo ansible-tmp-1723004629.2594829-26915-75600670027386="` echo /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386 `" ) && sleep 0'
Using module file /Users/arobel/repos/ansible_dev/dcnm_fabric/ansible_collections/cisco/dcnm/plugins/modules/dcnm_network.py
<172.25.74.143> PUT /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/tmpszgqysz9 TO /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py
<172.25.74.143> EXEC /bin/sh -c 'chmod u+x /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/ /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py && sleep 0'
<172.25.74.143> EXEC /bin/sh -c '/Users/arobel/repos/ansible_dev/dcnm_fabric/ansible_collections/cisco/dcnm/.venv/bin/python /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py && sleep 0'
<172.25.74.143> EXEC /bin/sh -c 'rm -f -r /Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
Traceback (most recent call last):
File "/Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py", line 107, in <module>
_ansiballz_main()
File "/Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py", line 99, in _ansiballz_main
invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
File "/Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py", line 47, in invoke_module
runpy.run_module(mod_name='ansible_collections.cisco.dcnm.plugins.modules.dcnm_network', init_globals=dict(_module_fqn='ansible_collections.cisco.dcnm.plugins.modules.dcnm_network', _modlib_path=modlib_path),
File "<frozen runpy>", line 226, in run_module
File "<frozen runpy>", line 98, in _run_module_code
File "<frozen runpy>", line 88, in _run_code
File "/var/folders/xc/1kd3k6xx1vlgw_pfqrckmqsm0000gn/T/ansible_cisco.dcnm.dcnm_network_payload_nwuq436y/ansible_cisco.dcnm.dcnm_network_payload.zip/ansible_collections/cisco/dcnm/plugins/modules/dcnm_network.py", line 3230, in <module>
File "/var/folders/xc/1kd3k6xx1vlgw_pfqrckmqsm0000gn/T/ansible_cisco.dcnm.dcnm_network_payload_nwuq436y/ansible_cisco.dcnm.dcnm_network_payload.zip/ansible_collections/cisco/dcnm/plugins/modules/dcnm_network.py", line 3198, in main
File "/var/folders/xc/1kd3k6xx1vlgw_pfqrckmqsm0000gn/T/ansible_cisco.dcnm.dcnm_network_payload_nwuq436y/ansible_cisco.dcnm.dcnm_network_payload.zip/ansible_collections/cisco/dcnm/plugins/modules/dcnm_network.py", line 2328, in get_diff_query
KeyError: 'networkName'
fatal: [ndfc1]: FAILED! => {
"changed": false,
"module_stderr": "Traceback (most recent call last):\n File \"/Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py\", line 107, in <module>\n _ansiballz_main()\n File \"/Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py\", line 99, in _ansiballz_main\n invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n File \"/Users/arobel/repos/ansible_dev/dcnm_fabric/tmp/ansible-local-26910tr3u62za/ansible-tmp-1723004629.2594829-26915-75600670027386/AnsiballZ_dcnm_network.py\", line 47, in invoke_module\n runpy.run_module(mod_name='ansible_collections.cisco.dcnm.plugins.modules.dcnm_network', init_globals=dict(_module_fqn='ansible_collections.cisco.dcnm.plugins.modules.dcnm_network', _modlib_path=modlib_path),\n File \"<frozen runpy>\", line 226, in run_module\n File \"<frozen runpy>\", line 98, in _run_module_code\n File \"<frozen runpy>\", line 88, in _run_code\n File \"/var/folders/xc/1kd3k6xx1vlgw_pfqrckmqsm0000gn/T/ansible_cisco.dcnm.dcnm_network_payload_nwuq436y/ansible_cisco.dcnm.dcnm_network_payload.zip/ansible_collections/cisco/dcnm/plugins/modules/dcnm_network.py\", line 3230, in <module>\n File \"/var/folders/xc/1kd3k6xx1vlgw_pfqrckmqsm0000gn/T/ansible_cisco.dcnm.dcnm_network_payload_nwuq436y/ansible_cisco.dcnm.dcnm_network_payload.zip/ansible_collections/cisco/dcnm/plugins/modules/dcnm_network.py\", line 3198, in main\n File \"/var/folders/xc/1kd3k6xx1vlgw_pfqrckmqsm0000gn/T/ansible_cisco.dcnm.dcnm_network_payload_nwuq436y/ansible_cisco.dcnm.dcnm_network_payload.zip/ansible_collections/cisco/dcnm/plugins/modules/dcnm_network.py\", line 2328, in get_diff_query\nKeyError: 'networkName'\n",
"module_stdout": "",
"msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
"rc": 1
}
PLAY RECAP ************************************************************************************************************************************************************************************************************************************************************************************************************************************************************
ndfc1 : ok=0 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment