mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-27 07:01:22 -07:00
zabbix_action: Adding an option for pausing operations while in maintenance (#52500)
* zabbix_action: Adding an option for pausing operations while in maintenance * zabbix_action: Correcting linting errors
This commit is contained in:
parent
3cc4981d63
commit
13fa284946
1 changed files with 18 additions and 1 deletions
|
@ -54,6 +54,12 @@ options:
|
||||||
- Status of the action.
|
- Status of the action.
|
||||||
choices: ['enabled', 'disabled']
|
choices: ['enabled', 'disabled']
|
||||||
default: 'enabled'
|
default: 'enabled'
|
||||||
|
pause_in_maintenance:
|
||||||
|
description:
|
||||||
|
- Whether to pause escalation during maintenance periods or not.
|
||||||
|
- Can be used when I(event_source=trigger).
|
||||||
|
type: 'bool'
|
||||||
|
default: true
|
||||||
esc_period:
|
esc_period:
|
||||||
description:
|
description:
|
||||||
- Default operation step duration. Must be greater than 60 seconds. Accepts seconds, time unit with suffix and user macro.
|
- Default operation step duration. Must be greater than 60 seconds. Accepts seconds, time unit with suffix and user macro.
|
||||||
|
@ -761,7 +767,8 @@ class Action(object):
|
||||||
Returns:
|
Returns:
|
||||||
dict: dictionary of specified parameters
|
dict: dictionary of specified parameters
|
||||||
"""
|
"""
|
||||||
return {
|
|
||||||
|
_params = {
|
||||||
'name': kwargs['name'],
|
'name': kwargs['name'],
|
||||||
'eventsource': to_numeric_value([
|
'eventsource': to_numeric_value([
|
||||||
'trigger',
|
'trigger',
|
||||||
|
@ -783,6 +790,12 @@ class Action(object):
|
||||||
'enabled',
|
'enabled',
|
||||||
'disabled'], kwargs['status'])
|
'disabled'], kwargs['status'])
|
||||||
}
|
}
|
||||||
|
if float(self._zapi.api_version().rsplit('.', 1)[0]) >= 4.0:
|
||||||
|
_params['pause_suppressed'] = '1' if kwargs['pause_in_maintenance'] else '0'
|
||||||
|
else:
|
||||||
|
_params['maintenance_mode'] = '1' if kwargs['pause_in_maintenance'] else '0'
|
||||||
|
|
||||||
|
return _params
|
||||||
|
|
||||||
def check_difference(self, **kwargs):
|
def check_difference(self, **kwargs):
|
||||||
"""Check difference between action and user specified parameters.
|
"""Check difference between action and user specified parameters.
|
||||||
|
@ -1609,6 +1622,7 @@ def main():
|
||||||
event_source=dict(type='str', required=True, choices=['trigger', 'discovery', 'auto_registration', 'internal']),
|
event_source=dict(type='str', required=True, choices=['trigger', 'discovery', 'auto_registration', 'internal']),
|
||||||
state=dict(type='str', required=False, default='present', choices=['present', 'absent']),
|
state=dict(type='str', required=False, default='present', choices=['present', 'absent']),
|
||||||
status=dict(type='str', required=False, default='enabled', choices=['enabled', 'disabled']),
|
status=dict(type='str', required=False, default='enabled', choices=['enabled', 'disabled']),
|
||||||
|
pause_in_maintenance=dict(type='bool', required=False, default=True),
|
||||||
default_message=dict(type='str', required=False, default=None),
|
default_message=dict(type='str', required=False, default=None),
|
||||||
default_subject=dict(type='str', required=False, default=None),
|
default_subject=dict(type='str', required=False, default=None),
|
||||||
recovery_default_message=dict(type='str', required=False, default=None),
|
recovery_default_message=dict(type='str', required=False, default=None),
|
||||||
|
@ -1640,6 +1654,7 @@ def main():
|
||||||
event_source = module.params['event_source']
|
event_source = module.params['event_source']
|
||||||
state = module.params['state']
|
state = module.params['state']
|
||||||
status = module.params['status']
|
status = module.params['status']
|
||||||
|
pause_in_maintenance = module.params['pause_in_maintenance']
|
||||||
default_message = module.params['default_message']
|
default_message = module.params['default_message']
|
||||||
default_subject = module.params['default_subject']
|
default_subject = module.params['default_subject']
|
||||||
recovery_default_message = module.params['recovery_default_message']
|
recovery_default_message = module.params['recovery_default_message']
|
||||||
|
@ -1682,6 +1697,7 @@ def main():
|
||||||
event_source=event_source,
|
event_source=event_source,
|
||||||
esc_period=esc_period,
|
esc_period=esc_period,
|
||||||
status=status,
|
status=status,
|
||||||
|
pause_in_maintenance=pause_in_maintenance,
|
||||||
default_message=default_message,
|
default_message=default_message,
|
||||||
default_subject=default_subject,
|
default_subject=default_subject,
|
||||||
recovery_default_message=recovery_default_message,
|
recovery_default_message=recovery_default_message,
|
||||||
|
@ -1711,6 +1727,7 @@ def main():
|
||||||
event_source=event_source,
|
event_source=event_source,
|
||||||
esc_period=esc_period,
|
esc_period=esc_period,
|
||||||
status=status,
|
status=status,
|
||||||
|
pause_in_maintenance=pause_in_maintenance,
|
||||||
default_message=default_message,
|
default_message=default_message,
|
||||||
default_subject=default_subject,
|
default_subject=default_subject,
|
||||||
recovery_default_message=recovery_default_message,
|
recovery_default_message=recovery_default_message,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue