Sys::Version
Main Package
Product BIG-IP
Version 12.1.5
Build 0.0.6
Edition Final
Date Fri Aug 2 14:49:14 PDT 2019
CONFIGURATION
OS / ENVIRONMENT
SUMMARY
bigip_device_certificate module fails with error below
STEPS TO REPRODUCE
Example playbook
---
- name: Playbook testing against Galaxy role
hosts: PLL_F5N_IT_GTMS
connection: local
gather_facts: no
tasks:
- name: Create a new custom named certificate to replace not expired certificate
bigip_device_certificate:
days_valid: 365
new_cert: yes
force: yes
issuer:
common_name: pllaplitgtm001.mgmt.cig.local
division: Infrastructure
organization: Acme-Corp
locality: City
state: State
country: United Kingdom
email: it@acmecorp.co.uk
provider: "{{ f5n_provider }}"
delegate_to: localhost
EXPECTED RESULTS
Module to create device certificate
ACTUAL RESULTS
Module fails
paulh@paulh-code-workstation:~/tfs/NetworkAutomation/Ansible/Prod$ ansible-playbook -i inv_lv f5_device_cert_test.yml --vault-id @prompt --limit pllaplitgtm001.mgmt.cig.local -vvv
ansible-playbook 2.9.4
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/paulh/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/local/lib/python3.6/dist-packages/ansible
executable location = /usr/local/bin/ansible-playbook
python version = 3.6.9 (default, Nov 7 2019, 10:44:02) [GCC 8.3.0]
Using /etc/ansible/ansible.cfg as config file
Vault password (default):
host_list declined parsing /home/paulh/tfs/NetworkAutomation/Ansible/Prod/inv_lv as it did not pass its verify_file() method
script declined parsing /home/paulh/tfs/NetworkAutomation/Ansible/Prod/inv_lv as it did not pass its verify_file() method
auto declined parsing /home/paulh/tfs/NetworkAutomation/Ansible/Prod/inv_lv as it did not pass its verify_file() method
Parsed /home/paulh/tfs/NetworkAutomation/Ansible/Prod/inv_lv inventory source with ini plugin
PLAYBOOK: f5_device_cert_test.yml *****************************************************************************************************************************************************
1 plays in f5_device_cert_test.yml
PLAY [Playbook testing against Galaxy role] *******************************************************************************************************************************************
META: ran handlers
TASK [Create a new custom named certificate to replace not expired certificate] *******************************************************************************************************
task path: /home/paulh/tfs/NetworkAutomation/Ansible/Prod/f5_device_cert_test.yml:9
<localhost> ESTABLISH LOCAL CONNECTION FOR USER: paulh
<localhost> EXEC /bin/sh -c 'echo ~paulh && sleep 0'
<localhost> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744 `" && echo ansible-tmp-1581081544.261912-198614953936744="` echo /home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744 `" ) && sleep 0'
Using module file /usr/local/lib/python3.6/dist-packages/ansible/modules/network/f5/bigip_device_certificate.py
<localhost> PUT /home/paulh/.ansible/tmp/ansible-local-2979dy9ufoyf/tmpe4zw7tg8 TO /home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py
<localhost> EXEC /bin/sh -c 'chmod u+x /home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/ /home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py && sleep 0'
<localhost> EXEC /bin/sh -c '/usr/bin/python3 /home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py && sleep 0'
<localhost> EXEC /bin/sh -c 'rm -f -r /home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
Traceback (most recent call last):
File "/home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py", line 102, in <module>
_ansiballz_main()
File "/home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py", line 94, in _ansiballz_main
invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
File "/home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py", line 40, in invoke_module
runpy.run_module(mod_name='ansible.modules.network.f5.bigip_device_certificate', init_globals=None, run_name='__main__', alter_sys=True)
File "/usr/lib/python3.6/runpy.py", line 205, in run_module
return _run_module_code(code, init_globals, run_name, mod_spec)
File "/usr/lib/python3.6/runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py", line 627, in <module>
File "/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py", line 620, in main
File "/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py", line 420, in exec_module
File "/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py", line 429, in present
File "/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py", line 463, in expired
File "/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py", line 537, in read_current_certificate
File "/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/module_utils/connection.py", line 91, in exec_command
File "/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/module_utils/connection.py", line 121, in __init__
AssertionError: socket_path must be a value
fatal: [pllaplitgtm001.mgmt.cig.local -> localhost]: FAILED! => {
"changed": false,
"module_stderr": "Traceback (most recent call last):\n File \"/home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py\", line 102, in <module>\n _ansiballz_main()\n File \"/home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py\", line 94, in _ansiballz_main\n invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n File \"/home/paulh/.ansible/tmp/ansible-tmp-1581081544.261912-198614953936744/AnsiballZ_bigip_device_certificate.py\", line 40, in invoke_module\n runpy.run_module(mod_name='ansible.modules.network.f5.bigip_device_certificate', init_globals=None, run_name='__main__', alter_sys=True)\n File \"/usr/lib/python3.6/runpy.py\", line 205, in run_module\n return _run_module_code(code, init_globals, run_name, mod_spec)\n File \"/usr/lib/python3.6/runpy.py\", line 96, in _run_module_code\n mod_name, mod_spec, pkg_name, script_name)\n File \"/usr/lib/python3.6/runpy.py\", line 85, in _run_code\n exec(code, run_globals)\n File \"/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py\", line 627, in <module>\n File \"/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py\", line 620, in main\n File \"/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py\", line 420, in exec_module\n File \"/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py\", line 429, in present\n File \"/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py\", line 463, in expired\n File \"/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/modules/network/f5/bigip_device_certificate.py\", line 537, in read_current_certificate\n File \"/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/module_utils/connection.py\", line 91, in exec_command\n File \"/tmp/ansible_bigip_device_certificate_payload_p_y89ylq/ansible_bigip_device_certificate_payload.zip/ansible/module_utils/connection.py\", line 121, in __init__\nAssertionError: socket_path must be a value\n",
"module_stdout": "",
"msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
"rc": 1
}
PLAY RECAP ****************************************************************************************************************************************************************************
pllaplitgtm001.mgmt.cig.local : ok=0 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
device certificate only uses CLI as transport, which is most likely your issue, check if your provider is set to have CLI as transport and provide valid SHH user/pass to the unit.
ISSUE TYPE
COMPONENT NAME
bigip_device_certificate
ANSIBLE VERSION
PYTHON VERSION
BIGIP VERSION
CONFIGURATION
OS / ENVIRONMENT
SUMMARY
bigip_device_certificate module fails with error below
STEPS TO REPRODUCE
Example playbook
EXPECTED RESULTS
Module to create device certificate
ACTUAL RESULTS
Module fails