telekom_mms / telekom_mms.icinga_director / 2.1.0 / module / icinga_scheduled_downtime Manage downtimes in Icinga2 | "added in version" 1.25.0 of telekom_mms.icinga_director" Authors: Daniel Uhlmann (@xFuture603)telekom_mms.icinga_director.icinga_scheduled_downtime (2.1.0) — module
Install with ansible-galaxy collection install telekom_mms.icinga_director:==2.1.0
collections: - name: telekom_mms.icinga_director version: 2.1.0
Add or remove a downtime to Icinga2 through the director API.
- name: create icinga_scheduled_downtime telekom_mms.icinga_director.icinga_scheduled_downtime: url: "{{ icinga_url }}" url_username: "{{ icinga_user }}" url_password: "{{ icinga_pass }}" disabled: false object_name: "foodowntime" state: present author: testuser comment: test fixed: true with_services: true apply_to: host assign_filter: 'host.name="foohost"' duration: 500 ranges: "tuesday": "00:00-24:00"
- name: create icinga_scheduled_downtime2 telekom_mms.icinga_director.icinga_scheduled_downtime: url: "{{ icinga_url }}" url_username: "{{ icinga_user }}" url_password: "{{ icinga_pass }}" disabled: false object_name: "foodowntime2" state: present author: testuser comment: test fixed: false with_services: false apply_to: host assign_filter: 'host.name="foohost"' duration: 500 ranges: "tuesday": "00:00-24:00"
- name: update icinga_scheduled_downtime2 telekom_mms.icinga_director.icinga_scheduled_downtime: url: "{{ icinga_url }}" url_username: "{{ icinga_user }}" url_password: "{{ icinga_pass }}" object_name: "foodowntime2" state: present duration: 1000 append: true apply_to: host with_services: false
url: description: - HTTP, HTTPS, or FTP URL in the form (http|https|ftp)://[user[:pass]]@host.domain[:port]/path required: true type: str fixed: choices: - true - false default: false description: - Whether this downtime is fixed or flexible. If unsure please check the related documentation https://icinga.com/docs/icinga2/latest/doc/08-advanced-topics/#downtimes - Required if I(state) is C(present). type: bool force: default: false description: - If V(yes) do not get a cached copy. type: bool state: choices: - present - absent default: present description: - Apply feature state. type: str append: choices: - true - false description: - Do not overwrite the whole object but instead append the defined properties. - Note - Appending to existing vars, imports or any other list/dict is not possible. You have to overwrite the complete list/dict. - Note - Variables that are set by default will also be applied, even if not set. type: bool version_added: 1.25.0 version_added_collection: telekom_mms.icinga_director author: description: - Name of the downtime author. - Required if I(state) is C(present). type: str ranges: default: {} description: - The period which should be downtimed type: dict comment: description: - A descriptive comment for the downtime. - Required if I(state) is C(present). type: str apply_to: choices: - host - service description: - Whether this dependency should affect hosts or services - Required if I(state) is C(present). type: str disabled: choices: - true - false default: false description: - Disabled objects will not be deployed. type: bool duration: description: - How long the downtime lasts. Only has an effect for flexible (non-fixed) downtimes. Time in seconds, supported suffixes include ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). To express "90 minutes" you might want to write 1h 30m type: str use_proxy: default: true description: - If V(no), it will not use a proxy, even if one is defined in an environment variable on the target hosts. type: bool client_key: description: - PEM formatted file that contains your private key to be used for SSL client authentication. - If O(client_cert) contains both the certificate and key, this option is not required. type: path http_agent: default: ansible-httpget description: - Header to identify as, generally appears in web server logs. type: str use_gssapi: default: false description: - Use GSSAPI to perform the authentication, typically this is for Kerberos or Kerberos through Negotiate authentication. - Requires the Python library L(gssapi,https://github.com/pythongssapi/python-gssapi) to be installed. - Credentials for GSSAPI can be specified with O(url_username)/O(url_password) or with the GSSAPI env var C(KRB5CCNAME) that specified a custom Kerberos credential cache. - NTLM authentication is B(not) supported even if the GSSAPI mech for NTLM has been installed. type: bool version_added: '2.11' version_added_collection: ansible.builtin client_cert: description: - PEM formatted certificate chain file to be used for SSL client authentication. - This file can also include the key as well, and if the key is included, O(client_key) is not required. type: path object_name: aliases: - name description: - Icinga object name for this downtime. required: true type: str url_password: description: - The password for use in HTTP basic authentication. - If the O(url_username) parameter is not specified, the O(url_password) parameter will not be used. type: str url_username: description: - The username for use in HTTP basic authentication. - This parameter can be used without O(url_password) for sites that allow empty passwords type: str assign_filter: description: - The filter where the downtime will take effect. type: str with_services: choices: - true - false default: true description: - Whether you only downtime the hosts or add some services with it. type: bool validate_certs: default: true description: - If V(no), SSL certificates will not be validated. - This should only be used on personally controlled sites using self-signed certificates. type: bool force_basic_auth: default: false description: - Credentials specified with O(url_username) and O(url_password) should be passed in HTTP Header. type: bool