community.general.statusio_maintenance – Create maintenance windows for your status.io dashboard

Note

This plugin is part of the community.general collection (version 3.8.1).

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.

To use it in a playbook, specify: community.general.statusio_maintenance.

Synopsis

  • Creates a maintenance window for status.io
  • Deletes a maintenance window for status.io

Parameters

Parameter Choices/Defaults Comments
all_infrastructure_affected
boolean
    Choices:
  • no
  • yes
If it affects all components and containers
api_id
string / required
Your unique API ID from status.io
api_key
string / required
Your unique API Key from status.io
automation
boolean
    Choices:
  • no
  • yes
Automatically start and end the maintenance window
components
list / elements=string
The given name of your component (server name)

aliases: component
containers
list / elements=string
The given name of your container (data center)

aliases: container
desc
string
Default:
"Created by Ansible"
Message describing the maintenance window
maintenance_id
string
The maintenance id number when deleting a maintenance window
maintenance_notify_1_hr
boolean
    Choices:
  • no
  • yes
Notify subscribers 1 hour before maintenance start time
maintenance_notify_24_hr
boolean
    Choices:
  • no
  • yes
Notify subscribers 24 hours before maintenance start time
maintenance_notify_72_hr
boolean
    Choices:
  • no
  • yes
Notify subscribers 72 hours before maintenance start time
maintenance_notify_now
boolean
    Choices:
  • no
  • yes
Notify subscribers now
minutes
integer
Default:
10
The length of time in UTC that the maintenance will run (starting from playbook runtime)
start_date
string
Date maintenance is expected to start (Month/Day/Year) (UTC)
End Date is worked out from start_date + minutes
start_time
string
Time maintenance is expected to start (Hour:Minutes) (UTC)
End Time is worked out from start_time + minutes
state
string
    Choices:
  • present
  • absent
Desired state of the package.
statuspage
string / required
Your unique StatusPage ID from status.io
title
string
Default:
"A new maintenance window"
A descriptive title for the maintenance window
url
string
Default:
"https://api.status.io"
Status.io API URL. A private apiary can be used instead.

Notes

Note

  • You can use the apiary API url (http://docs.statusio.apiary.io/) to capture API traffic
  • Use start_date and start_time with minutes to set future maintenance window

Examples

- name: Create a maintenance window for 10 minutes on server1, with automation to stop the maintenance
  community.general.statusio_maintenance:
    title: Router Upgrade from ansible
    desc: Performing a Router Upgrade
    components: server1.example.com
    api_id: api_id
    api_key: api_key
    statuspage: statuspage_id
    maintenance_notify_1_hr: True
    automation: True

- name: Create a maintenance window for 60 minutes on server1 and server2
  community.general.statusio_maintenance:
    title: Routine maintenance
    desc: Some security updates
    components:
      - server1.example.com
      - server2.example.com
    minutes: 60
    api_id: api_id
    api_key: api_key
    statuspage: statuspage_id
    maintenance_notify_1_hr: True
    automation: True
  delegate_to: localhost

- name: Create a future maintenance window for 24 hours to all hosts inside the Primary Data Center
  community.general.statusio_maintenance:
    title: Data center downtime
    desc: Performing a Upgrade to our data center
    components: Primary Data Center
    api_id: api_id
    api_key: api_key
    statuspage: statuspage_id
    start_date: 01/01/2016
    start_time: 12:00
    minutes: 1440

- name: Delete a maintenance window
  community.general.statusio_maintenance:
    title: Remove a maintenance window
    maintenance_id: 561f90faf74bc94a4700087b
    statuspage: statuspage_id
    api_id: api_id
    api_key: api_key
    state: absent

Authors

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/statusio_maintenance_module.html