2017-12-05 20:29:12 +01:00
|
|
|
---
|
|
|
|
|
|
|
|
- name: "test: create host with many options set"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
visible_name: ExampleName
|
|
|
|
description: My ExampleHost Description
|
|
|
|
host_groups:
|
|
|
|
- Linux servers
|
|
|
|
- Zabbix servers
|
|
|
|
link_templates:
|
|
|
|
- Template App IMAP Service
|
|
|
|
- Template App NTP Service
|
|
|
|
status: enabled
|
|
|
|
state: present
|
|
|
|
inventory_mode: manual
|
|
|
|
inventory_zabbix:
|
|
|
|
tag: test-tag
|
|
|
|
alias: test-alias
|
|
|
|
notes: "Special Informations: test-info"
|
|
|
|
location: test-location
|
|
|
|
site_rack: test-rack
|
|
|
|
os: test-os
|
|
|
|
hardware: test-hw
|
|
|
|
interfaces:
|
|
|
|
- type: 1
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "10050"
|
|
|
|
- type: 1
|
|
|
|
main: 0
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
|
|
|
port: "{$MACRO}"
|
2017-12-05 20:29:12 +01:00
|
|
|
- type: 4
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "12345"
|
2017-12-05 20:29:12 +01:00
|
|
|
proxy: ExampleProxy
|
|
|
|
tls_psk_identity: test
|
|
|
|
tls_connect: 2
|
|
|
|
tls_psk: 123456789abcdef123456789abcdef12
|
2020-02-15 13:55:48 +01:00
|
|
|
macros:
|
|
|
|
- macro: MACRO1
|
|
|
|
value: test1
|
|
|
|
- macro: '{$MACRO2}'
|
|
|
|
value: test2
|
|
|
|
tags:
|
|
|
|
- tag: Tag1
|
|
|
|
- tag: Tag2
|
|
|
|
value: test2
|
2017-12-05 20:29:12 +01:00
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: try to create the same host with the same settings"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
visible_name: ExampleName
|
|
|
|
description: My ExampleHost Description
|
|
|
|
host_groups:
|
|
|
|
- Linux servers
|
|
|
|
- Zabbix servers
|
|
|
|
link_templates:
|
|
|
|
- Template App IMAP Service
|
|
|
|
- Template App NTP Service
|
|
|
|
status: enabled
|
|
|
|
state: present
|
|
|
|
inventory_mode: manual
|
|
|
|
inventory_zabbix:
|
|
|
|
tag: test-tag
|
|
|
|
alias: test-alias
|
|
|
|
notes: "Special Informations: test-info"
|
|
|
|
location: test-location
|
|
|
|
site_rack: test-rack
|
|
|
|
os: test-os
|
|
|
|
hardware: test-hw
|
|
|
|
interfaces:
|
|
|
|
- type: 1
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "10050"
|
|
|
|
- type: 1
|
|
|
|
main: 0
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
|
|
|
port: "{$MACRO}"
|
2017-12-05 20:29:12 +01:00
|
|
|
- type: 4
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "12345"
|
2017-12-05 20:29:12 +01:00
|
|
|
proxy: ExampleProxy
|
|
|
|
tls_psk_identity: test
|
|
|
|
tls_connect: 2
|
|
|
|
tls_psk: 123456789abcdef123456789abcdef12
|
2020-02-15 13:55:48 +01:00
|
|
|
macros:
|
|
|
|
- macro: MACRO1
|
|
|
|
value: test1
|
|
|
|
- macro: '{$MACRO2}'
|
|
|
|
value: test2
|
|
|
|
tags:
|
|
|
|
- tag: Tag1
|
|
|
|
- tag: Tag2
|
|
|
|
value: test2
|
2017-12-05 20:29:12 +01:00
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: updating with same values should be idempotent
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
- name: "test: try to create the same host with the same settings and force false"
|
|
|
|
zabbix_host:
|
|
|
|
force: false
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
visible_name: ExampleName
|
|
|
|
description: My ExampleHost Description
|
|
|
|
host_groups:
|
|
|
|
- Linux servers
|
|
|
|
- Zabbix servers
|
|
|
|
link_templates:
|
|
|
|
- Template App IMAP Service
|
|
|
|
- Template App NTP Service
|
|
|
|
status: enabled
|
|
|
|
state: present
|
|
|
|
inventory_mode: manual
|
|
|
|
inventory_zabbix:
|
|
|
|
tag: test-tag
|
|
|
|
alias: test-alias
|
|
|
|
notes: "Special Informations: test-info"
|
|
|
|
location: test-location
|
|
|
|
site_rack: test-rack
|
|
|
|
os: test-os
|
|
|
|
hardware: test-hw
|
|
|
|
interfaces:
|
|
|
|
- type: 1
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
|
|
|
port: "10050"
|
|
|
|
- type: 1
|
|
|
|
main: 0
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
|
|
|
port: "{$MACRO}"
|
|
|
|
- type: 4
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
|
|
|
port: "12345"
|
|
|
|
proxy: ExampleProxy
|
|
|
|
tls_psk_identity: test
|
|
|
|
tls_connect: 2
|
|
|
|
tls_psk: 123456789abcdef123456789abcdef12
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: updating with same values and force false should be idempotent
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: try to create the same host changing one parameter in the inventory with force false"
|
|
|
|
zabbix_host:
|
|
|
|
force: false
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
visible_name: ExampleName
|
|
|
|
description: My ExampleHost Description
|
|
|
|
host_groups:
|
|
|
|
- Linux servers
|
|
|
|
- Zabbix servers
|
|
|
|
link_templates:
|
|
|
|
- Template App IMAP Service
|
|
|
|
- Template App NTP Service
|
|
|
|
status: enabled
|
|
|
|
state: present
|
|
|
|
inventory_mode: manual
|
|
|
|
inventory_zabbix:
|
|
|
|
tag: test-tag
|
|
|
|
alias: test-alias
|
|
|
|
notes: "Special Informations: test-info"
|
|
|
|
location: test-location
|
|
|
|
site_rack: test-rack
|
|
|
|
os: test-os
|
|
|
|
hardware: test-hw-modified
|
|
|
|
interfaces:
|
|
|
|
- type: 1
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
|
|
|
port: "10050"
|
|
|
|
- type: 1
|
|
|
|
main: 0
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
|
|
|
port: "{$MACRO}"
|
|
|
|
- type: 4
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
|
|
|
port: "12345"
|
|
|
|
proxy: ExampleProxy
|
|
|
|
tls_psk_identity: test
|
|
|
|
tls_connect: 2
|
|
|
|
tls_psk: 123456789abcdef123456789abcdef12
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: changing the value of an already defined inventory should work and mark task as changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
2017-12-05 20:29:12 +01:00
|
|
|
- name: "test: change visible_name"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
visible_name: "ExampleName Changed"
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change visible_name (again)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
visible_name: "ExampleName Changed"
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: updating with same values should be idempotent
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change description"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
description: "My ExampleHost Description Changed"
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change description (again)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
description: "My ExampleHost Description Changed"
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: updating with same values should be idempotent
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host groups (adding one group)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
host_groups:
|
|
|
|
- Linux servers
|
|
|
|
- Zabbix servers
|
|
|
|
- Virtual machines
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host groups (remove one group)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
host_groups:
|
|
|
|
- Linux servers
|
|
|
|
- Zabbix servers
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host groups (add one group using force=no)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
host_groups:
|
|
|
|
- Virtual machines
|
|
|
|
force: no
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
|
|
|
|
- name: "test: change host groups (check whether we are at three groups)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
host_groups:
|
|
|
|
- Linux servers
|
|
|
|
- Zabbix servers
|
|
|
|
- Virtual machines
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host groups (attempt to remove all host groups)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
host_groups:
|
|
|
|
-
|
|
|
|
register: zabbix_host1
|
|
|
|
ignore_errors: yes
|
|
|
|
|
|
|
|
- name: expect to fail
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is failed"
|
|
|
|
|
|
|
|
- name: "test: change host linked templates (same as before)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
link_templates:
|
|
|
|
- Template App IMAP Service
|
|
|
|
- Template App NTP Service
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host linked templates (add one template)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
link_templates:
|
|
|
|
- Template App IMAP Service
|
|
|
|
- Template App NTP Service
|
|
|
|
- Template App HTTP Service
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host linked templates (add one template, using force=no)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
link_templates:
|
|
|
|
- Template App LDAP Service
|
|
|
|
force: no
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host linked templates (make sure we are at 4 templates)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
link_templates:
|
|
|
|
- Template App IMAP Service
|
|
|
|
- Template App NTP Service
|
|
|
|
- Template App HTTP Service
|
|
|
|
- Template App LDAP Service
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host linked templates (remove all templates)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
link_templates:
|
|
|
|
-
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host linked templates (check we have no templates left)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
link_templates:
|
|
|
|
-
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host status"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
status: disabled
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host status (again)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
status: disabled
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host inventory mode"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
inventory_mode: automatic
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host inventory mode"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
inventory_mode: automatic
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host inventory data (one field)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
inventory_zabbix:
|
|
|
|
tag: test-tag-two
|
|
|
|
alias: test-alias
|
|
|
|
notes: "Special Informations: test-info"
|
|
|
|
location: test-location
|
|
|
|
site_rack: test-rack
|
|
|
|
os: test-os
|
|
|
|
hardware: test-hw
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host inventory data (again)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
inventory_zabbix:
|
|
|
|
tag: test-tag-two
|
|
|
|
alias: test-alias
|
|
|
|
notes: "Special Informations: test-info"
|
|
|
|
location: test-location
|
|
|
|
site_rack: test-rack
|
|
|
|
os: test-os
|
|
|
|
hardware: test-hw
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: remove host proxy"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
proxy: ''
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add host proxy"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
proxy: ExampleProxy
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add host proxy (again)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
proxy: ExampleProxy
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change tls settings"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
tls_psk_identity: test2
|
|
|
|
tls_connect: 4
|
|
|
|
tls_accept: 7
|
|
|
|
tls_psk: 123456789abcdef123456789abcdef13
|
|
|
|
tls_issuer: AcmeCorp
|
|
|
|
tls_subject: AcmeCorpServer
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change tls settings (again)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
tls_psk_identity: test2
|
|
|
|
tls_connect: 4
|
|
|
|
tls_accept: 7
|
|
|
|
tls_psk: 123456789abcdef123456789abcdef13
|
|
|
|
tls_issuer: AcmeCorp
|
|
|
|
tls_subject: AcmeCorpServer
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change interface settings (remove one)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
interfaces:
|
|
|
|
- type: 1
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "10050"
|
2017-12-05 20:29:12 +01:00
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change interface settings (again)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
interfaces:
|
|
|
|
- type: 1
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "10050"
|
2017-12-05 20:29:12 +01:00
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change interface settings (add one interface using force=no)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
interfaces:
|
|
|
|
- type: 4
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "12345"
|
2017-12-05 20:29:12 +01:00
|
|
|
force: no
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change interface settings (verify that we are at two interfaces)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
interfaces:
|
|
|
|
- type: 1
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "10050"
|
2017-12-05 20:29:12 +01:00
|
|
|
- type: 4
|
|
|
|
main: 1
|
|
|
|
useip: 1
|
|
|
|
ip: 10.1.1.1
|
|
|
|
dns: ""
|
zabbix_host: interface.port parameter is a string (#64986)
interface.port should be a string to be able to use macros in that
value.
This fixes the case when interface.port is a macro (eg.: "{$MACRO}" and
force=false.
Because, until now, setting the interface.port to an integer was the correct way to work with force=false, a type validation has been added
to that parameter.
Previously, if a string was used for interface.port, it was converted
to an integer, the comparison didn't work (if interface not in interfaces)
and the module tried to register the same interface twice, returning an
error.
Zabbix API manual specifies that only 'main, 'type', 'useip' and 'bulk'
are integers.
https://www.zabbix.com/documentation/current/manual/api/reference/hostinterface/object
Tests are changed to use always str in the interface.port.
Two new tests are added.
The first one is to show that now registering a host with force=false and
a macro in interface.port works.
The other one tests that interfaces defined using string for port are
compared correctly when force=false is used. Previously it was
a comparison between int and str, interfaces were seen as different
and an error was thrown because we were trying to create twice a main
interface.
* Try to kindly convert interface port to the string
As suggested, the previous behaviour could break current configurations. This solution accepts integers and strings.
Co-Authored-By: Dusan Matejka <D3DeFi@users.noreply.github.com>
2019-12-16 06:25:05 +01:00
|
|
|
port: "12345"
|
2017-12-05 20:29:12 +01:00
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|
|
|
|
|
2017-12-11 15:00:58 +01:00
|
|
|
- name: "test: add IPMI settings"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-11 15:00:58 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
ipmi_authtype: 2
|
|
|
|
ipmi_privilege: 4
|
|
|
|
ipmi_username: username
|
|
|
|
ipmi_password: password
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add IPMI settings again"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-11 15:00:58 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
ipmi_authtype: 2
|
|
|
|
ipmi_privilege: 4
|
|
|
|
ipmi_username: username
|
|
|
|
ipmi_password: password
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
|
|
|
- name: "test: verify that an empty change is idempotent"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-11 15:00:58 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
|
|
|
- name: "test: IPMI set default values"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-11 15:00:58 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
ipmi_authtype: -1
|
|
|
|
ipmi_privilege: 2
|
|
|
|
ipmi_username: ""
|
|
|
|
ipmi_password: ""
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: IPMI set default values (again)"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-11 15:00:58 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
ipmi_authtype: -1
|
|
|
|
ipmi_privilege: 2
|
|
|
|
ipmi_username: ""
|
|
|
|
ipmi_password: ""
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
2019-12-16 09:02:12 +01:00
|
|
|
- name: "test: change host inventory mode to disabled"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
inventory_mode: disabled
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: change host inventory mode to manual"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
inventory_mode: manual
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
2020-02-15 13:55:48 +01:00
|
|
|
- name: "test: add new set of user macros to the host"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros:
|
|
|
|
- macro: '{$NEWMACRO1}'
|
|
|
|
value: test123
|
|
|
|
- macro: NEWMACRO2
|
|
|
|
value: abc
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add new set of user macros to the host (again - lowercase)"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros:
|
|
|
|
- macro: '{$newmacro1}'
|
|
|
|
value: test123
|
|
|
|
- macro: newmacro2
|
|
|
|
value: abc
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
|
|
|
- name: "test: update one of the user macros present on the host"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros:
|
|
|
|
- macro: '{$NEWMACRO1}'
|
|
|
|
value: test1234
|
|
|
|
- macro: NEWMACRO2
|
|
|
|
value: abc
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: update one of the user macros with description"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros:
|
|
|
|
- macro: '{$NEWMACRO1}'
|
|
|
|
value: test1234
|
|
|
|
description: Example Description
|
|
|
|
- macro: NEWMACRO2
|
|
|
|
value: abc
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: update one of the user macros with description (again)"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros:
|
|
|
|
- macro: '{$NEWMACRO1}'
|
|
|
|
value: test1234
|
|
|
|
description: Example Description
|
|
|
|
- macro: NEWMACRO2
|
|
|
|
value: abc
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
|
|
|
- name: "test: update one of the user macros by removing description"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros:
|
|
|
|
- macro: '{$NEWMACRO1}'
|
|
|
|
value: test1234
|
|
|
|
- macro: NEWMACRO2
|
|
|
|
value: abc
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add user macro while keeping previous ones with force=no"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
force: no
|
|
|
|
macros:
|
|
|
|
- macro: '{$NEWMACRO3}'
|
|
|
|
value: testing
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add the same user macros (again)"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros:
|
|
|
|
- macro: '{$NEWMACRO1}'
|
|
|
|
value: test1234
|
|
|
|
- macro: NEWMACRO2
|
|
|
|
value: abc
|
|
|
|
- macro: '{$NEWMACRO3}'
|
|
|
|
value: testing
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
|
|
|
- name: "test: wipe out all of the user macros"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros: []
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: wipe out all of the user macros (again)"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
macros: []
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
|
|
|
- name: "test: add new set of tags to the host"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
tags:
|
|
|
|
- tag: NEWTAG1
|
|
|
|
- tag: NewTag2
|
|
|
|
value: abc
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add new set of tags to the host (again)"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
tags:
|
|
|
|
- tag: NEWTAG1
|
|
|
|
- tag: NewTag2
|
|
|
|
value: abc
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
|
|
|
- name: "test: update one of the tags present on the host"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
tags:
|
|
|
|
- tag: NEWTAG1
|
|
|
|
- tag: NewTag2
|
|
|
|
value: abcd
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add tag while keeping previous ones with force=no"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
force: no
|
|
|
|
tags:
|
|
|
|
- tag: newtag3
|
|
|
|
value: testing
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: add the same tags (again)"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
tags:
|
|
|
|
- tag: NEWTAG1
|
|
|
|
- tag: NewTag2
|
|
|
|
value: abcd
|
|
|
|
- tag: newtag3
|
|
|
|
value: testing
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
|
|
|
- name: "test: wipe out all of the tags"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
tags: []
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: wipe out all of the tags (again)"
|
|
|
|
zabbix_host:
|
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
tags: []
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: expect to succeed and that things have not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is not changed"
|
|
|
|
|
2017-12-05 20:29:12 +01:00
|
|
|
- name: "test: attempt to delete host created earlier"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
state: absent
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: deleting a host is a change, right?
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "zabbix_host1 is changed"
|
|
|
|
|
|
|
|
- name: "test: attempt deleting a non-existant host"
|
2019-04-27 02:33:59 +02:00
|
|
|
zabbix_host:
|
2017-12-05 20:29:12 +01:00
|
|
|
server_url: "{{ zabbix_server_url }}"
|
|
|
|
login_user: "{{ zabbix_login_user }}"
|
|
|
|
login_password: "{{ zabbix_login_password }}"
|
|
|
|
host_name: ExampleHost
|
|
|
|
state: absent
|
|
|
|
register: zabbix_host1
|
|
|
|
|
|
|
|
- name: deleting a non-existant host is not a change, right?
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- "not zabbix_host1 is changed"
|