##### SUMMARY
The module zabbix_host [fails](https://travis-ci.org/robertdebock/ansible-role-zabbix_web/jobs/617545189#L653) using:

```
ansible_loop_var": "item", "changed": false, "item": {"description": "Example server 1 description", "groups": ["Linux servers"], "interface_dns": "server1.example.com", "interface_ip": "192.168.127.127", "link_templates": ["Template OS Linux by Zabbix agent"], "name": "Example server 1", "visible_name": "Example server 1 name"
```

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
zabbix_host

##### ANSIBLE VERSION
```
$ ansible --version
ansible 2.9.1
  config file = None
  configured module search path = ['/home/robertdb/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/lib/python3.7/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.7.5 (default, Oct 17 2019, 12:16:48) [GCC 9.2.1 20190827 (Red Hat 9.2.1-1)]
```

##### CONFIGURATION
```
$ ansible-config dump --only-changed
# NO OUTPUT
```

##### OS / ENVIRONMENT
Debian
Centos-7
Centos-8
Ubuntu

##### STEPS TO REPRODUCE
Git clone my [zabbix_web Ansible role](https://github.com/robertdebock/ansible-role-zabbix_web) and run `molecule test`

```
git clone https://github.com/robertdebock/ansible-role-zabbix_web.git
cd ansible-role-zabbix_web
molecule test
```

##### EXPECTED RESULTS
I was not expecting an error. The host is actually added to Zabbix by the way.

##### ACTUAL RESULTS

```
    TASK [ansible-role-zabbix_web : add zabbix hosts] ******************************
    An exception occurred during task execution. To see the full traceback, use -vvv. The error was: KeyError: 'inventory_mode'
    failed: [zabbix_web-centos-latest] (item=Example server 1) => {"ansible_loop_var": "item", "changed": false, "item": {"description": "Example server 1 description", "groups": ["Linux servers"], "interface_dns": "server1.example.com", "interface_ip": "192.168.127.127", "link_templates": ["Template OS Linux by Zabbix agent"], "name": "Example server 1", "visible_name": "Example server 1 name"}, "module_stderr": "Traceback (most recent call last):\n  File \"/root/.ansible/tmp/ansible-tmp-1574832740.9065554-150815383322675/AnsiballZ_zabbix_host.py\", line 102, in <module>\n    _ansiballz_main()\n  File \"/root/.ansible/tmp/ansible-tmp-1574832740.9065554-150815383322675/AnsiballZ_zabbix_host.py\", line 94, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n  File \"/root/.ansible/tmp/ansible-tmp-1574832740.9065554-150815383322675/AnsiballZ_zabbix_host.py\", line 40, in invoke_module\n    runpy.run_module(mod_name='ansible.modules.monitoring.zabbix.zabbix_host', init_globals=None, run_name='__main__', alter_sys=True)\n  File \"/usr/lib64/python3.6/runpy.py\", line 205, in run_module\n    return _run_module_code(code, init_globals, run_name, mod_spec)\n  File \"/usr/lib64/python3.6/runpy.py\", line 96, in _run_module_code\n    mod_name, mod_spec, pkg_name, script_name)\n  File \"/usr/lib64/python3.6/runpy.py\", line 85, in _run_code\n    exec(code, run_globals)\n  File \"/tmp/ansible_zabbix_host_payload_xl5geyrr/ansible_zabbix_host_payload.zip/ansible/modules/monitoring/zabbix/zabbix_host.py\", line 902, in <module>\n  File \"/tmp/ansible_zabbix_host_payload_xl5geyrr/ansible_zabbix_host_payload.zip/ansible/modules/monitoring/zabbix/zabbix_host.py\", line 862, in main\n  File \"/tmp/ansible_zabbix_host_payload_xl5geyrr/ansible_zabbix_host_payload.zip/ansible/modules/monitoring/zabbix/zabbix_host.py\", line 546, in check_all_properties\nKeyError: 'inventory_mode'\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}
```

description:
                    - IP address used by host interface.
                    - Required if I(useip=1).
                default: ''
            dns:
                type: str
                description:
                    - DNS name of the host interface.
                    - Required if I(useip=0).
                default: ''
            port:
                type: str
                description:
                    - Port used by host interface.
                    - If not specified, default port for each type of interface is used
                    - 10050 if I(type='agent')
                    - 161 if I(type='snmp')
                    - 623 if I(type='ipmi')
                    - 12345 if I(type='jmx')
            bulk:
                type: int
                description:
                    - Whether to use bulk SNMP requests.
                    - 0 (don't use bulk requests), 1 (use bulk requests)
                choices: [0, 1]
                default: 1
        default: []
    tls_connect:
        description:
            - Specifies what encryption to use for outgoing connections.