Manage PagerDuty escalation policies.
Schedules and users can be referenced by pagerduty ID, or by name, or by email address.
For example:
- ensure test escalation policy:
- pagerduty_escalation_policy.present:
name: bruce test escalation policy
- escalation_rules:
- targets:
- type: schedule id: 'bruce test schedule level1'
- type: user id: 'Bruce Sherrod'
escalation_delay_in_minutes: 15
- targets:
- type: schedule id: 'bruce test schedule level2'
escalation_delay_in_minutes: 15
- targets:
- type: user id: 'Bruce TestUser1'
- type: user id: 'Bruce TestUser2'
- type: user id: 'Bruce TestUser3'
- type: user id: 'bruce+test4@lyft.com'
escalation_delay_in_minutes: 15
salt.states.pagerduty_escalation_policy.
absent
(profile='pagerduty', subdomain=None, api_key=None, **kwargs)¶Ensure that a PagerDuty escalation policy does not exist. Accepts all the arguments that pagerduty_escalation_policy.present accepts; but ignores all arguments except the name.
Name can be the escalation policy id or the escalation policy name.
salt.states.pagerduty_escalation_policy.
present
(profile='pagerduty', subdomain=None, api_key=None, **kwargs)¶Ensure that a pagerduty escalation policy exists. Will create or update as needed.
This method accepts as args everything defined in https://developer.pagerduty.com/documentation/rest/escalation_policies/create. In additonal, user and schedule id's will be translated from name (or email address) into PagerDuty unique ids. For example:
name: bruce test escalation policy
In this example, 'Bruce Sherrod' will be looked up and replaced with the PagerDuty id (usually a 7 digit all-caps string, e.g. PX6GQL7)