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

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

isinstance expected 2 arguments, got 1 #214

Closed Serazio closed 3 months ago

Serazio commented 1 year ago

Hi,

while using the fortinet.fortios collection in version 2.2.1 and python 3.9.14 i got an error:

Traceback (most recent call last):
  File "/Users/bla/.ansible/tmp/ansible-local-137277ei364er/ansible-tmp-1670227781.786915-13754-207178011055431/AnsiballZ_fortios_monitor_fact.py", line 107, in <module>
    _ansiballz_main()
  File "/Users/bla/.ansible/tmp/ansible-local-137277ei364er/ansible-tmp-1670227781.786915-13754-207178011055431/AnsiballZ_fortios_monitor_fact.py", line 99, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File "/Users/bla/.ansible/tmp/ansible-local-137277ei364er/ansible-tmp-1670227781.786915-13754-207178011055431/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/local/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 225, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File "/usr/local/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 97, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "/usr/local/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/var/folders/dt/z7wx06gs6cvfbsp941rrlcrh0000gp/T/ansible_fortinet.fortios.fortios_monitor_fact_payload_26o_cxwr/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py", line 2860, in <module>
  File "/var/folders/dt/z7wx06gs6cvfbsp941rrlcrh0000gp/T/ansible_fortinet.fortios.fortios_monitor_fact_payload_26o_cxwr/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py", line 2811, in main
  File "/var/folders/dt/z7wx06gs6cvfbsp941rrlcrh0000gp/T/ansible_fortinet.fortios.fortios_monitor_fact_payload_26o_cxwr/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py", line 2144, in fortios_monitor_fact
  File "/var/folders/dt/z7wx06gs6cvfbsp941rrlcrh0000gp/T/ansible_fortinet.fortios.fortios_monitor_fact_payload_26o_cxwr/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py", line 2102, in validate_parameters
TypeError: isinstance expected 2 arguments, got 1
fatal: [myhost]: FAILED! => {
    "changed": false,
    "module_stderr": "Traceback (most recent call last):\n  File \"/Users/bla/.ansible/tmp/ansible-local-137277ei364er/ansible-tmp-1670227781.786915-13754-207178011055431/AnsiballZ_fortios_monitor_fact.py\", line 107, in <module>\n    _ansiballz_main()\n  File \"/Users/bla/.ansible/tmp/ansible-local-137277ei364er/ansible-tmp-1670227781.786915-13754-207178011055431/AnsiballZ_fortios_monitor_fact.py\", line 99, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n  File \"/Users/bla/.ansible/tmp/ansible-local-137277ei364er/ansible-tmp-1670227781.786915-13754-207178011055431/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/local/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py\", line 225, in run_module\n    return _run_module_code(code, init_globals, run_name, mod_spec)\n  File \"/usr/local/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py\", line 97, in _run_module_code\n    _run_code(code, mod_globals, init_globals,\n  File \"/usr/local/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py\", line 87, in _run_code\n    exec(code, run_globals)\n  File \"/var/folders/dt/z7wx06gs6cvfbsp941rrlcrh0000gp/T/ansible_fortinet.fortios.fortios_monitor_fact_payload_26o_cxwr/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py\", line 2860, in <module>\n  File \"/var/folders/dt/z7wx06gs6cvfbsp941rrlcrh0000gp/T/ansible_fortinet.fortios.fortios_monitor_fact_payload_26o_cxwr/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py\", line 2811, in main\n  File \"/var/folders/dt/z7wx06gs6cvfbsp941rrlcrh0000gp/T/ansible_fortinet.fortios.fortios_monitor_fact_payload_26o_cxwr/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py\", line 2144, in fortios_monitor_fact\n  File \"/var/folders/dt/z7wx06gs6cvfbsp941rrlcrh0000gp/T/ansible_fortinet.fortios.fortios_monitor_fact_payload_26o_cxwr/ansible_fortinet.fortios.fortios_monitor_fact_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_monitor_fact.py\", line 2102, in validate_parameters\nTypeError: isinstance expected 2 arguments, got 1\n",
    "module_stdout": "",
    "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
    "rc": 1
}

I found the following files with just one param for isinstance

plugins/modules/fortios_log_fact.py:2246:            if isinstance(param_value) not in [bool, int, str]:
plugins/modules/fortios_monitor.py:1552:            if isinstance(param_value) not in [bool, int, str, list]:
plugins/modules/fortios_monitor_fact.py:2102:            if isinstance(param_value) not in [bool, int, str]:
lix-fortinet commented 1 year ago

Hi @Serazio,

Thank you for raising this issue. Team is working on this issue. We will have a quick release this week to fix this issue. Before that, please use v2.2.0.

Thanks, Xing