ansible/test/integration/targets/zabbix_host/tasks/zabbix_host_tests.yml

710 lines
19 KiB
YAML
Raw Normal View History

---
- name: "test: create host with many options set"
zabbix_host:
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: 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: 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"
zabbix_host:
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: 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 should be idempotent
assert:
that:
- "not zabbix_host1 is changed"
- name: "test: change visible_name"
zabbix_host:
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)"
zabbix_host:
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"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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"
zabbix_host:
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)"
zabbix_host:
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"
zabbix_host:
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"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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"
zabbix_host:
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"
zabbix_host:
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)"
zabbix_host:
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"
zabbix_host:
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)"
zabbix_host:
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)"
zabbix_host:
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: ""
port: 10050
register: zabbix_host1
- name: expect to succeed and that things have changed
assert:
that:
- "zabbix_host1 is changed"
- name: "test: change interface settings (again)"
zabbix_host:
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: ""
port: 10050
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)"
zabbix_host:
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: ""
port: 12345
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)"
zabbix_host:
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: ""
port: 10050
- type: 4
main: 1
useip: 1
ip: 10.1.1.1
dns: ""
port: 12345
register: zabbix_host1
- name: expect to succeed and that things have not changed
assert:
that:
- "not zabbix_host1 is changed"
- name: "test: add IPMI settings"
zabbix_host:
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"
zabbix_host:
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"
zabbix_host:
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"
zabbix_host:
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)"
zabbix_host:
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"
- name: "test: attempt to delete host created earlier"
zabbix_host:
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"
zabbix_host:
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"