community.general.pagerduty – Create PagerDuty maintenance windows
community.general.pagerduty – Create PagerDuty maintenance windows
Note
This plugin is part of the community.general collection (version 1.3.2).
To install it use: ansible-galaxy collection install community.general
.
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 | Choices/Defaults | Comments |
---|---|---|
desc string |
Default: "Created by Ansible" |
Short description of maintenance window. |
hours string |
Default: "1" |
Length of maintenance window in hours. |
minutes string |
Default: "0" |
Maintenance window in minutes (this is added to the hours). |
name string |
PagerDuty unique subdomain. Obsolete. It is not used with PagerDuty REST v2 API. | |
requester_id string |
ID of user making the request. Only needed when creating a maintenance_window. | |
service list / elements=string |
A comma separated list of PagerDuty service IDs.
| |
state string / required |
|
Create a maintenance window or get a list of ongoing windows. |
token string / required |
A pagerduty token, generated on the pagerduty site. It is used for authorization. | |
user string |
PagerDuty user ID. Obsolete. Please, use token for authorization. | |
validate_certs boolean |
|
If |
window_id string |
ID of maintenance window. Only needed when absent a maintenance_window. |
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 }}"
Authors
- Andrew Newdigate (@suprememoocow)
- Dylan Silva (@thaumos)
- Justin Johns (!UNKNOWN)
- Bruce Pennypacker (@bpennypacker)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/pagerduty_module.html