fortinet-ansible-dev / ansible-galaxy-fortios-collection

GNU General Public License v3.0
84 stars 48 forks source link

fortinet.fortios.fortios_monitor_fact is not working with v6.2.10 build1263 (GA) #252

Open jungekim opened 1 year ago

jungekim commented 1 year ago
  1. These are about my settings; 1) fortinet's colletion

community.fortios 1.0.0
fortinet.fortimanager 2.1.5
fortinet.fortios 2.1.5
fortinet.fortios 2.3.0

2) fortios : v6.2.10 build1263 3) ansible's version [ansible@a9ea04030839 test-ansible]$ ansible-galaxy --version ansible-galaxy [core 2.12.5] config file = /etc/ansible/ansible.cfg configured module search path = ['/home/ansible/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /usr/local/lib/python3.9/site-packages/ansible ansible collection location = /home/ansible/.ansible/collections:/usr/share/ansible/collections executable location = /usr/local/bin/ansible-galaxy python version = 3.9.6 (default, Aug 25 2021, 16:22:38) [GCC 8.5.0 20210514 (Red Hat 8.5.0-3)] jinja version = 3.1.1 libyaml = True

  1. ansible-playbook code 1) config_backup_fortios.yml

    • name: Backup Network Devices gather_facts: no hosts: all vars: backup_dir: /home/ansible/network-ansible/backup

    tasks:

    • name: Gather date_time from localhost delegate_to: localhost run_once: yes setup: gather_subset:

      • '!all'
      • '!min'
      • 'date_time' register: date_time_result
    • name: Register current date as a variable delegate_to: localhost run_once: yes set_fact: current_date: "{{ ansible_date_time.date }}"

    • name: Backup configuration for FortiOS fortinet.fortios.fortios_monitor_fact: selector: 'system_config_backup' vdom: 'root' params: scope: 'root' register: fortios_backup_result when: inventory_hostname in groups['fortios']

    • name: Print fortios backup result delegate_to: localhost copy: content: "{{ fortios_backup_result.stdout }}" dest: "{{ backup_dir }}/{{ current_date }}/{{ inventory_hostname }}" when: inventory_hostname in groups['fortios']

    2) /etc/ansible/hosts fortios: vars: ansible_network_os: fortinet.fortios.fortios ansible_httpapi_use_ssl: yes ansible_httpapi_validate_certs: False ansible_httpapi_port: 8080 ansible_connection: httpapi hosts: FGVPNA: FGVPNS: connection: httpapi collections: fortinet.fortios

  2. when i run ; ansible-playbook -l FGVPNS config_backup_fortios.yml -vvvv TASK [Backup configuration for FortiOS] ***** task path: /home/ansible/test-ansible/config_backup_fortios.yml:25 redirecting (type: connection) ansible.builtin.httpapi to ansible.netcommon.httpapi Loading collection ansible.netcommon from /home/ansible/.ansible/collections/ansible_collections/ansible/netcommon Loading collection ansible.utils from /home/ansible/.ansible/collections/ansible_collections/ansible/utils

    attempting to start connection using connection plugin ansible.netcommon.httpapi Found ansible-connection at path /usr/local/bin/ansible-connection local domain socket does not exist, starting it control socket path is /home/ansible/.ansible/pc/d60e98b899 redirecting (type: connection) ansible.builtin.httpapi to ansible.netcommon.httpapi Loading collection ansible.netcommon from /home/ansible/.ansible/collections/ansible_collections/ansible/netcommon Loading collection ansible.utils from /home/ansible/.ansible/collections/ansible_collections/ansible/utils Loading collection fortinet.fortios from /home/ansible/.ansible/collections/ansible_collections/fortinet/fortios local domain socket listeners started successfully loaded API plugin ansible_collections.fortinet.fortios.plugins.httpapi.fortios from path /home/ansible/.ansible/collections/ansible_collections/fortinet/fortios/plugins/httpapi/fortios.py for platform type fortinet.fortios.fortios local domain socket path is /home/ansible/.ansible/pc/d60e98b899 ESTABLISH LOCAL CONNECTION FOR USER: ansible EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa `"&& mkdir "` echo /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579 `" && echo ansible-tmp-1686109769.7296653-19165-69138012013579="` echo /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579 `" ) && sleep 0' Using module file /home/ansible/.ansible/collections/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py PUT /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/tmphnlxet_0 TO /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py EXEC /bin/sh -c 'chmod u+x /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/ /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py && sleep 0' EXEC /bin/sh -c '/usr/bin/python3.9 /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py && sleep 0' EXEC /bin/sh -c 'rm -f -r /home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/ > /dev/null 2>&1 && sleep 0' The full traceback is: Traceback (most recent call last): File "/home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py", line 107, in _ansiballz_main() File "/home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py", line 99, in _ansiballz_main invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS) File "/home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py", line 47, in invoke_module runpy.run_module(mod_name='ansible_collections.fortinet.fortios.plugins.modules.fortios_monitor_fact', init_globals=dict(_module_fqn='ansible_collections.fortinet.fortios.plugins.modules.fortios_monitor_fact', _modlib_path=modlib_path), File "/usr/lib64/python3.9/runpy.py", line 210, in run_module return _run_module_code(code, init_globals, run_name, mod_spec) File "/usr/lib64/python3.9/runpy.py", line 97, in _run_module_code _run_code(code, mod_globals, init_globals, File "/usr/lib64/python3.9/runpy.py", line 87, in _run_code exec(code, run_globals) File "/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py", line 3122, in File "/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py", line 3073, in main File "/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py", line 2382, in fortios_monitor_fact File "/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/module_utils/fortios/fortios.py", line 540, in monitor_get File "/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible/module_utils/connection.py", line 200, in __rpc__ ansible.module_utils.connection.ConnectionError: Wrong credentials. Please check fatal: [FGVPNS]: FAILED! => { "changed": false, "module_stderr": "Traceback (most recent call last):\n File \"/home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py\", line 107, in \n _ansiballz_main()\n File \"/home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py\", line 99, in _ansiballz_main\n invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n File \"/home/ansible/.ansible/tmp/ansible-local-191436yu_3apa/ansible-tmp-1686109769.7296653-19165-69138012013579/AnsiballZ_fortios_monitor_fact.py\", line 47, in invoke_module\n runpy.run_module(mod_name='ansible_collections.fortinet.fortios.plugins.modules.fortios_monitor_fact', init_globals=dict(_module_fqn='ansible_collections.fortinet.fortios.plugins.modules.fortios_monitor_fact', _modlib_path=modlib_path),\n File \"/usr/lib64/python3.9/runpy.py\", line 210, in run_module\n return _run_module_code(code, init_globals, run_name, mod_spec)\n File \"/usr/lib64/python3.9/runpy.py\", line 97, in _run_module_code\n _run_code(code, mod_globals, init_globals,\n File \"/usr/lib64/python3.9/runpy.py\", line 87, in _run_code\n exec(code, run_globals)\n File \"/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py\", line 3122, in \n File \"/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py\", line 3073, in main\n File \"/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py\", line 2382, in fortios_monitor_fact\n File \"/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/module_utils/fortios/fortios.py\", line 540, in monitor_get\n File \"/tmp/ansible_fortinet.fortios.fortios_monitor_fact_payload_zi090f8q/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible/module_utils/connection.py\", line 200, in __rpc__\nansible.module_utils.connection.ConnectionError: Wrong credentials. Please check\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1 }
jungekim commented 1 year ago

Although there is an authentication-related error, the event logs from FortiOS show that the login was successful;

Date 2023/06/07 Time 12:49:30 Duration 1202s Virtual Domain root Log Description Admin logout successful

MaxxLiu22 commented 1 year ago

Hi @jungekim ,

Thank you for raising this issue, I can reproduce it, have reported it to the development team for further investigation.

Thanks, Maxx

Serazio commented 1 year ago

the same issue applies to FortiOS 6.0.17. Like @jungekim i can see successful logins in the event logs.