Merge pull request #1761 from kepstin/zabbix-3-0

zabbix_maintenance: Stop using api removed in zabbix 3.0
This commit is contained in:
René Moser 2016-03-15 22:59:24 +01:00
commit c6afbc9e17

View file

@ -202,18 +202,6 @@ def delete_maintenance(zbx, maintenance_id):
return 0, None, None return 0, None, None
def check_maintenance(zbx, name):
try:
result = zbx.maintenance.exists(
{
"name": name
}
)
except BaseException as e:
return 1, None, str(e)
return 0, result, None
def get_group_ids(zbx, host_groups): def get_group_ids(zbx, host_groups):
group_ids = [] group_ids = []
for group in host_groups: for group in host_groups:
@ -325,11 +313,11 @@ def main():
else: else:
host_ids = [] host_ids = []
(rc, exists, error) = check_maintenance(zbx, name) (rc, maintenance, error) = get_maintenance_id(zbx, name)
if rc != 0: if rc != 0:
module.fail_json(msg="Failed to check maintenance %s existance: %s" % (name, error)) module.fail_json(msg="Failed to check maintenance %s existance: %s" % (name, error))
if not exists: if not maintenance:
if not host_names and not host_groups: if not host_names and not host_groups:
module.fail_json(msg="At least one host_name or host_group must be defined for each created maintenance.") module.fail_json(msg="At least one host_name or host_group must be defined for each created maintenance.")
@ -344,24 +332,19 @@ def main():
if state == "absent": if state == "absent":
(rc, exists, error) = check_maintenance(zbx, name) (rc, maintenance, error) = get_maintenance_id(zbx, name)
if rc != 0: if rc != 0:
module.fail_json(msg="Failed to check maintenance %s existance: %s" % (name, error)) module.fail_json(msg="Failed to check maintenance %s existance: %s" % (name, error))
if exists: if maintenance:
(rc, maintenance, error) = get_maintenance_id(zbx, name) if module.check_mode:
if rc != 0: changed = True
module.fail_json(msg="Failed to get maintenance id: %s" % error) else:
(rc, _, error) = delete_maintenance(zbx, maintenance)
if maintenance: if rc == 0:
if module.check_mode:
changed = True changed = True
else: else:
(rc, _, error) = delete_maintenance(zbx, maintenance) module.fail_json(msg="Failed to remove maintenance: %s" % error)
if rc == 0:
changed = True
else:
module.fail_json(msg="Failed to remove maintenance: %s" % error)
module.exit_json(changed=changed) module.exit_json(changed=changed)