community.general.pagerduty module – Create PagerDuty maintenance windows
Note
This module is part of the community.general collection (version 9.4.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.general
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: community.general.pagerduty
.
Synopsis
This module will let you create PagerDuty maintenance windows
Requirements
The below requirements are needed on the host that executes this module.
PagerDuty API access
Parameters
Parameter |
Comments |
---|---|
Short description of maintenance window. Default: |
|
Length of maintenance window in hours. Default: |
|
Maintenance window in minutes (this is added to the hours). Default: |
|
PagerDuty unique subdomain. Obsolete. It is not used with PagerDuty REST v2 API. |
|
ID of user making the request. Only needed when creating a maintenance_window. |
|
A comma separated list of PagerDuty service IDs. |
|
Create a maintenance window or get a list of ongoing windows. Choices:
|
|
A pagerduty token, generated on the pagerduty site. It is used for authorization. |
|
PagerDuty user ID. Obsolete. Please, use |
|
If Choices:
|
|
ID of maintenance window. Only needed when absent a maintenance_window. |
Attributes
Attribute |
Support |
Description |
---|---|---|
Support: none |
Can run in |
|
Support: none |
Will return details on what has changed (or possibly needs changing in |
Examples
- name: List ongoing maintenance windows using a token
community.general.pagerduty:
name: companyabc
token: xxxxxxxxxxxxxx
state: ongoing
- name: Create a 1 hour maintenance window for service FOO123
community.general.pagerduty:
name: companyabc
user: [email protected]
token: yourtoken
state: running
service: FOO123
- name: Create a 5 minute maintenance window for service FOO123
community.general.pagerduty:
name: companyabc
token: xxxxxxxxxxxxxx
hours: 0
minutes: 5
state: running
service: FOO123
- name: Create a 4 hour maintenance window for service FOO123 with the description "deployment"
community.general.pagerduty:
name: companyabc
user: [email protected]
state: running
service: FOO123
hours: 4
desc: deployment
register: pd_window
- name: Delete the previous maintenance window
community.general.pagerduty:
name: companyabc
user: [email protected]
state: absent
window_id: '{{ pd_window.result.maintenance_window.id }}'
# Delete a maintenance window from a separate playbook than its creation,
# and if it is the only existing maintenance window
- name: Check
community.general.pagerduty:
requester_id: XXXXXXX
token: yourtoken
state: ongoing
register: pd_window
- name: Delete
community.general.pagerduty:
requester_id: XXXXXXX
token: yourtoken
state: absent
window_id: "{{ pd_window.result.maintenance_windows[0].id }}"