diff --git a/plugins/modules/monitoring/bigpanda.py b/plugins/modules/monitoring/bigpanda.py index 2cb9ed1b12..9acdc348f9 100644 --- a/plugins/modules/monitoring/bigpanda.py +++ b/plugins/modules/monitoring/bigpanda.py @@ -16,42 +16,51 @@ description: - Notify BigPanda when deployments start and end (successfully or not). Returns a deployment object containing all the parameters for future module calls. options: component: + type: str description: - "The name of the component being deployed. Ex: billing" required: true aliases: ['name'] version: + type: str description: - The deployment version. required: true token: + type: str description: - API token. required: true state: + type: str description: - State of the deployment. required: true choices: ['started', 'finished', 'failed'] hosts: + type: str description: - Name of affected host name. Can be a list. required: false default: machine's hostname aliases: ['host'] env: + type: str description: - The environment name, typically 'production', 'staging', etc. required: false owner: + type: str description: - The person responsible for the deployment. required: false description: + type: str description: - Free text description of the deployment. required: false url: + type: str description: - Base URL of the API server. required: False @@ -64,11 +73,17 @@ options: default: 'yes' type: bool deployment_message: + type: str description: - Message about the deployment. - C(message) alias is deprecated in community.general 0.2.0, since it is used internally by Ansible Core Engine. aliases: ['message'] version_added: '0.2.0' + source_system: + type: str + description: + - Source system used in the requests to the API + default: ansible # informational: requirements for nodes requirements: [ ] @@ -129,7 +144,7 @@ def main(): version=dict(required=True), token=dict(required=True, no_log=True), state=dict(required=True, choices=['started', 'finished', 'failed']), - hosts=dict(required=False, default=[socket.gethostname()], aliases=['host']), + hosts=dict(required=False, default=[socket.gethostname()], aliases=['host']), # @FIXME env=dict(required=False), owner=dict(required=False), description=dict(required=False), diff --git a/plugins/modules/monitoring/circonus_annotation.py b/plugins/modules/monitoring/circonus_annotation.py index 5963f5d200..27d2316873 100644 --- a/plugins/modules/monitoring/circonus_annotation.py +++ b/plugins/modules/monitoring/circonus_annotation.py @@ -21,30 +21,37 @@ notes: - Check mode isn't supported. options: api_key: + type: str description: - Circonus API key required: true category: + type: str description: - Annotation Category required: true description: + type: str description: - Description of annotation required: true title: + type: str description: - Title of annotation required: true start: + type: int description: - Unix timestamp of event start - default: I(now) + - If not specified, it defaults to I(now). stop: + type: int description: - Unix timestamp of event end - default: I(now) + I(duration) + - If not specified, it defaults to I(now) + I(duration). duration: + type: int description: - Duration in seconds of annotation default: 0 diff --git a/plugins/modules/monitoring/datadog/datadog_event.py b/plugins/modules/monitoring/datadog/datadog_event.py index 0e0de754f1..a6327dde4b 100644 --- a/plugins/modules/monitoring/datadog/datadog_event.py +++ b/plugins/modules/monitoring/datadog/datadog_event.py @@ -24,36 +24,46 @@ author: - "Naoya Nakazawa (@n0ts)" options: api_key: + type: str description: ["Your DataDog API key."] required: true app_key: + type: str description: ["Your DataDog app key."] required: true title: + type: str description: ["The event title."] required: true text: + type: str description: ["The body of the event."] required: true date_happened: + type: int description: - POSIX timestamp of the event. - Default value is now. - default: now priority: + type: str description: ["The priority of the event."] default: normal choices: [normal, low] host: - description: ["Host name to associate with the event."] - default: "{{ ansible_hostname }}" + type: str + description: + - Host name to associate with the event. + - If not specified, it defaults to the remote system's hostname. tags: + type: list description: ["Comma separated list of tags to apply to the event."] alert_type: + type: str description: ["Type of alert."] default: info choices: ['error', 'warning', 'info', 'success'] aggregation_key: + type: str description: ["An arbitrary string to use for aggregation."] validate_certs: description: diff --git a/plugins/modules/monitoring/datadog/datadog_monitor.py b/plugins/modules/monitoring/datadog/datadog_monitor.py index cccc0343d1..dc76cca259 100644 --- a/plugins/modules/monitoring/datadog/datadog_monitor.py +++ b/plugins/modules/monitoring/datadog/datadog_monitor.py @@ -70,6 +70,7 @@ options: type: str aliases: [ 'message' ] silenced: + type: dict description: - Dictionary of scopes to silence, with timestamps or None. - Each scope will be muted until the given POSIX timestamp or forever if the value is None. @@ -83,7 +84,7 @@ options: description: - The number of minutes before a monitor will notify when data stops reporting. - Must be at least 2x the monitor timeframe for metric alerts or 2 minutes for service checks. - default: 2x timeframe for metric, 2 minutes for service + - If not specified, it defaults to 2x timeframe for metric, 2 minutes for service. type: str timeout_h: description: @@ -105,11 +106,12 @@ options: type: bool default: 'no' thresholds: + type: dict description: - A dictionary of thresholds by status. - Only available for service checks and metric alerts. - Because each of them can have multiple thresholds, we do not define them directly in the query. - default: {'ok': 1, 'critical': 1, 'warning': 1} + - "If not specified, it defaults to: C({'ok': 1, 'critical': 1, 'warning': 1})." locked: description: - Whether changes to this monitor should be restricted to the creator or admins. diff --git a/plugins/modules/monitoring/honeybadger_deployment.py b/plugins/modules/monitoring/honeybadger_deployment.py index e926fb17d4..0b96af04a9 100644 --- a/plugins/modules/monitoring/honeybadger_deployment.py +++ b/plugins/modules/monitoring/honeybadger_deployment.py @@ -16,23 +16,29 @@ description: - Notify Honeybadger.io about app deployments (see http://docs.honeybadger.io/article/188-deployment-tracking) options: token: + type: str description: - API token. required: true environment: + type: str description: - The environment name, typically 'production', 'staging', etc. required: true user: + type: str description: - The username of the person doing the deployment repo: + type: str description: - URL of the project repository revision: + type: str description: - A hash, number, tag, or other identifier showing what revision was deployed url: + type: str description: - Optional URL to submit the notification to. default: "https://api.honeybadger.io/v1/deploys" diff --git a/plugins/modules/monitoring/icinga2_feature.py b/plugins/modules/monitoring/icinga2_feature.py index f1d1e18a8a..b59c0e11e4 100644 --- a/plugins/modules/monitoring/icinga2_feature.py +++ b/plugins/modules/monitoring/icinga2_feature.py @@ -22,10 +22,12 @@ description: author: "Loic Blot (@nerzhul)" options: name: + type: str description: - This is the feature name to enable or disable. required: True state: + type: str description: - If set to C(present) and feature is disabled, then feature is enabled. - If set to C(present) and feature is already enabled, then nothing is changed. diff --git a/plugins/modules/monitoring/icinga2_host.py b/plugins/modules/monitoring/icinga2_host.py index 6de1fe897b..6bdbb7179c 100644 --- a/plugins/modules/monitoring/icinga2_host.py +++ b/plugins/modules/monitoring/icinga2_host.py @@ -19,9 +19,9 @@ description: author: "Jurgen Brand (@t794104)" options: url: + type: str description: - HTTP, HTTPS, or FTP URL in the form (http|https|ftp)://[user[:pass]]@host.domain[:port]/path - required: true use_proxy: description: - If C(no), it will not use a proxy, even if one is defined in @@ -35,10 +35,12 @@ options: type: bool default: 'yes' url_username: + type: str description: - The username for use in HTTP basic authentication. - This parameter can be used without C(url_password) for sites that allow empty passwords. url_password: + type: str description: - The password for use in HTTP basic authentication. - If the C(url_username) parameter is not specified, the C(url_password) parameter will not be used. @@ -51,46 +53,58 @@ options: type: bool default: 'no' client_cert: + type: path 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, C(client_key) is not required. client_key: + type: path description: - PEM formatted file that contains your private key to be used for SSL client authentication. If C(client_cert) contains both the certificate and key, this option is not required. state: + type: str description: - Apply feature state. choices: [ "present", "absent" ] default: present name: + type: str description: - Name used to create / delete the host. This does not need to be the FQDN, but does needs to be unique. required: true zone: + type: str description: - The zone from where this host should be polled. template: + type: str description: - The template used to define the host. - Template cannot be modified after object creation. check_command: + type: str description: - The command used to check if the host is alive. default: "hostalive" display_name: + type: str description: - The name used to display the host. - default: if none is give it is the value of the parameter + - If not specified, it defaults to the value of the I(name) parameter. ip: + type: str description: - The IP address of the host. required: true variables: + type: dict description: - List of variables. +extends_documentation_fragment: + - url ''' EXAMPLES = ''' @@ -211,8 +225,6 @@ class icinga2_api: def main(): # use the predefined argument spec for url argument_spec = url_argument_spec() - # remove unnecessary argument 'force' - del argument_spec['force'] # add our own arguments argument_spec.update( state=dict(default="present", choices=["absent", "present"]), @@ -234,8 +246,7 @@ def main(): state = module.params["state"] name = module.params["name"] zone = module.params["zone"] - template = [] - template.append(name) + template = [name] if module.params["template"]: template.append(module.params["template"]) check_command = module.params["check_command"] diff --git a/plugins/modules/monitoring/librato_annotation.py b/plugins/modules/monitoring/librato_annotation.py index f3958ca88e..ebdf371ce7 100644 --- a/plugins/modules/monitoring/librato_annotation.py +++ b/plugins/modules/monitoring/librato_annotation.py @@ -18,45 +18,53 @@ author: "Seth Edwards (@Sedward)" requirements: [] options: user: + type: str description: - Librato account username required: true api_key: + type: str description: - Librato account api key required: true name: + type: str description: - The annotation stream name - If the annotation stream does not exist, it will be created automatically required: false title: + type: str description: - The title of an annotation is a string and may contain spaces - The title should be a short, high-level summary of the annotation e.g. v45 Deployment required: true source: + type: str description: - A string which describes the originating source of an annotation when that annotation is tracked across multiple members of a population required: false description: + type: str description: - The description contains extra metadata about a particular annotation - The description should contain specifics on the individual annotation e.g. Deployed 9b562b2 shipped new feature foo! required: false start_time: + type: int description: - The unix timestamp indicating the time at which the event referenced by this annotation started required: false end_time: + type: int description: - The unix timestamp indicating the time at which the event referenced by this annotation ended - For events that have a duration, this is a useful way to annotate the duration of the event required: false links: + type: list description: - See examples - required: true ''' EXAMPLES = ''' diff --git a/plugins/modules/monitoring/logentries.py b/plugins/modules/monitoring/logentries.py index 35f27810e5..8f39fb5106 100644 --- a/plugins/modules/monitoring/logentries.py +++ b/plugins/modules/monitoring/logentries.py @@ -17,23 +17,28 @@ description: - Sends logs to LogEntries in realtime options: path: + type: str description: - path to a log file required: true state: + type: str description: - following state of the log - choices: [ 'present', 'absent' ] + choices: [ 'present', 'absent', 'followed', 'unfollowed' ] required: false default: present name: + type: str description: - name of the log required: false logtype: + type: str description: - type of the log required: false + aliases: [type] notes: - Requires the LogEntries agent which can be installed following the instructions at logentries.com diff --git a/plugins/modules/monitoring/logstash_plugin.py b/plugins/modules/monitoring/logstash_plugin.py index 1eb424ee4b..4a45c04a77 100644 --- a/plugins/modules/monitoring/logstash_plugin.py +++ b/plugins/modules/monitoring/logstash_plugin.py @@ -16,25 +16,31 @@ description: author: Loic Blot (@nerzhul) options: name: + type: str description: - Install plugin with that name. required: True state: + type: str description: - Apply plugin state. choices: ["present", "absent"] default: present plugin_bin: + type: path description: - Specify logstash-plugin to use for plugin management. default: /usr/share/logstash/bin/logstash-plugin proxy_host: + type: str description: - Proxy host to use during plugin installation. proxy_port: + type: str description: - Proxy port to use during plugin installation. version: + type: str description: - Specify plugin Version of the plugin to install. If plugin exists with previous version, it will NOT be updated. diff --git a/plugins/modules/monitoring/newrelic_deployment.py b/plugins/modules/monitoring/newrelic_deployment.py index f3ba456a09..af953e0a75 100644 --- a/plugins/modules/monitoring/newrelic_deployment.py +++ b/plugins/modules/monitoring/newrelic_deployment.py @@ -17,38 +17,47 @@ description: - Notify newrelic about app deployments (see https://docs.newrelic.com/docs/apm/new-relic-apm/maintenance/deployment-notifications#api) options: token: + type: str description: - API token, to place in the x-api-key header. required: true app_name: + type: str description: - (one of app_name or application_id are required) The value of app_name in the newrelic.yml file used by the application required: false application_id: + type: str description: - (one of app_name or application_id are required) The application id, found in the URL when viewing the application in RPM required: false changelog: + type: str description: - A list of changes for this deployment required: false description: + type: str description: - Text annotation for the deployment - notes for you required: false revision: + type: str description: - A revision number (e.g., git commit SHA) required: false user: + type: str description: - The name of the user/process that triggered this deployment required: false appname: + type: str description: - Name of the application required: false environment: + type: str description: - The environment for this deployment required: false diff --git a/plugins/modules/monitoring/pagerduty.py b/plugins/modules/monitoring/pagerduty.py index 4cb3d0ee50..306b596b51 100644 --- a/plugins/modules/monitoring/pagerduty.py +++ b/plugins/modules/monitoring/pagerduty.py @@ -23,39 +23,49 @@ requirements: - PagerDuty API access options: state: + type: str description: - Create a maintenance window or get a list of ongoing windows. required: true choices: [ "running", "started", "ongoing", "absent" ] name: + type: str description: - PagerDuty unique subdomain. Obsolete. It is not used with PagerDuty REST v2 API. user: + type: str description: - PagerDuty user ID. Obsolete. Please, use I(token) for authorization. token: + type: str description: - A pagerduty token, generated on the pagerduty site. It is used for authorization. required: true requester_id: + type: str description: - ID of user making the request. Only needed when creating a maintenance_window. service: + type: list description: - A comma separated list of PagerDuty service IDs. aliases: [ services ] window_id: + type: str description: - ID of maintenance window. Only needed when absent a maintenance_window. hours: + type: str description: - Length of maintenance window in hours. - default: 1 + default: '1' minutes: + type: str description: - Maintenance window in minutes (this is added to the hours). - default: 0 + default: '0' desc: + type: str description: - Short description of maintenance window. default: Created by Ansible @@ -128,11 +138,9 @@ EXAMPLES = ''' import datetime import json -import base64 from ansible.module_utils.basic import AnsibleModule from ansible.module_utils.urls import fetch_url -from ansible.module_utils._text import to_bytes class PagerDutyRequest(object): @@ -228,8 +236,8 @@ def main(): service=dict(required=False, type='list', aliases=["services"]), window_id=dict(required=False), requester_id=dict(required=False), - hours=dict(default='1', required=False), - minutes=dict(default='0', required=False), + hours=dict(default='1', required=False), # @TODO change to int? + minutes=dict(default='0', required=False), # @TODO change to int? desc=dict(default='Created by Ansible', required=False), validate_certs=dict(default=True, type='bool'), ) diff --git a/plugins/modules/monitoring/pagerduty_alert.py b/plugins/modules/monitoring/pagerduty_alert.py index 49b205c814..dd17c174e8 100644 --- a/plugins/modules/monitoring/pagerduty_alert.py +++ b/plugins/modules/monitoring/pagerduty_alert.py @@ -19,21 +19,25 @@ requirements: - PagerDuty API access options: name: + type: str description: - PagerDuty unique subdomain. Obsolete. It is not used with PagerDuty REST v2 API. service_id: + type: str description: - ID of PagerDuty service when incidents will be triggered, acknowledged or resolved. required: true service_key: + type: str description: - The GUID of one of your "Generic API" services. Obsolete. Please use I(integration_key). integration_key: + type: str description: - The GUID of one of your "Generic API" services. - This is the "integration key" listed on a "Integrations" tab of PagerDuty service. - required: true state: + type: str description: - Type of event to be sent. required: true @@ -42,10 +46,12 @@ options: - 'acknowledged' - 'resolved' api_key: + type: str description: - The pagerduty API key (readonly access), generated on the pagerduty site. required: true desc: + type: str description: - For C(triggered) I(state) - Required. Short description of the problem that led to this trigger. This field (or a truncated version) will be used when generating phone calls, SMS messages and alert emails. It will also appear on the incidents tables in the PagerDuty UI. @@ -54,6 +60,7 @@ options: required: false default: Created via Ansible incident_key: + type: str description: - Identifies the incident to which this I(state) should be applied. - For C(triggered) I(state) - If there's no open (i.e. unresolved) incident with this key, a new one will be created. If there's already an @@ -63,10 +70,12 @@ options: trigger event. Acknowledge events referencing resolved or nonexistent incidents will be discarded. required: false client: + type: str description: - The name of the monitoring client that is triggering this event. required: false client_url: + type: str description: - The URL of the monitoring client that is triggering this event. required: false diff --git a/plugins/modules/monitoring/pingdom.py b/plugins/modules/monitoring/pingdom.py index 594a2eda0d..baf99eda58 100644 --- a/plugins/modules/monitoring/pingdom.py +++ b/plugins/modules/monitoring/pingdom.py @@ -20,23 +20,28 @@ requirements: - "This pingdom python library: https://github.com/mbabineau/pingdom-python" options: state: + type: str description: - Define whether or not the check should be running or paused. required: true - choices: [ "running", "paused" ] + choices: [ "running", "paused", "started", "stopped" ] checkid: + type: str description: - Pingdom ID of the check. required: true uid: + type: str description: - Pingdom user ID. required: true passwd: + type: str description: - Pingdom user password. required: true key: + type: str description: - Pingdom API key. required: true diff --git a/plugins/modules/monitoring/rollbar_deployment.py b/plugins/modules/monitoring/rollbar_deployment.py index f0996a8eb7..0affd7c78c 100644 --- a/plugins/modules/monitoring/rollbar_deployment.py +++ b/plugins/modules/monitoring/rollbar_deployment.py @@ -18,30 +18,37 @@ description: (see https://rollbar.com/docs/deploys_other/) options: token: + type: str description: - Your project access token. required: true environment: + type: str description: - Name of the environment being deployed, e.g. 'production'. required: true revision: + type: str description: - Revision number/sha being deployed. required: true user: + type: str description: - User who deployed. required: false rollbar_user: + type: str description: - Rollbar username of the user who deployed. required: false comment: + type: str description: - Deploy comment (e.g. what is being deployed). required: false url: + type: str description: - Optional URL to submit the notification to. required: false diff --git a/plugins/modules/monitoring/sensu/sensu_check.py b/plugins/modules/monitoring/sensu/sensu_check.py index 47051231c1..0b10b7da3f 100644 --- a/plugins/modules/monitoring/sensu/sensu_check.py +++ b/plugins/modules/monitoring/sensu/sensu_check.py @@ -19,16 +19,19 @@ description: - they are simply specified for your convenience. options: name: + type: str description: - The name of the check - This is the key that is used to determine whether a check exists required: true state: + type: str description: - Whether the check should be present or not choices: [ 'present', 'absent' ] default: present path: + type: str description: - Path to the json file of the check to be added/removed. - Will be created if it does not exist (unless I(state=absent)). @@ -41,40 +44,48 @@ options: type: bool default: 'no' command: + type: str description: - Path to the sensu check to run (not required when I(state=absent)) - required: true handlers: + type: list description: - List of handlers to notify when the check fails default: [] subscribers: + type: list description: - List of subscribers/channels this check should run for - See sensu_subscribers to subscribe a machine to a channel default: [] interval: + type: int description: - Check interval in seconds timeout: + type: int description: - Timeout for the check - default: 10 + - If not specified, it defaults to 10. ttl: + type: int description: - Time to live in seconds until the check is considered stale handle: description: - Whether the check should be handled or not type: bool - default: 'yes' + default: false subdue_begin: + type: str description: - When to disable handling of check failures subdue_end: + type: str description: - When to enable handling of check failures dependencies: + type: list description: - Other checks this check depends on, if dependencies fail, - handling of this check will be disabled @@ -95,12 +106,14 @@ options: - Whether the check should be scheduled at all. - You can still issue it via the sensu api type: bool - default: 'yes' + default: false occurrences: + type: int description: - Number of event occurrences before the handler should take action - default: 1 + - If not specified, defaults to 1. refresh: + type: int description: - Number of seconds handlers should wait before taking second action aggregate: @@ -110,17 +123,21 @@ options: type: bool default: 'no' low_flap_threshold: + type: int description: - The low threshold for flap detection high_flap_threshold: + type: int description: - The high threshold for flap detection custom: + type: dict description: - A hash/dictionary of custom parameters for mixing to the configuration. - You can't rewrite others module parameters using this default: {} source: + type: str description: - The check source, used to create a JIT Sensu client for an external resource (e.g. a network switch). author: "Anders Ingemann (@andsens)" diff --git a/plugins/modules/monitoring/sensu/sensu_client.py b/plugins/modules/monitoring/sensu/sensu_client.py index e5b9af1dd4..25c12e8528 100644 --- a/plugins/modules/monitoring/sensu/sensu_client.py +++ b/plugins/modules/monitoring/sensu/sensu_client.py @@ -16,33 +16,38 @@ description: - 'For more information, refer to the Sensu documentation: U(https://sensuapp.org/docs/latest/reference/clients.html)' options: state: + type: str description: - Whether the client should be present or not choices: [ 'present', 'absent' ] default: present name: + type: str description: - A unique name for the client. The name cannot contain special characters or spaces. - default: System hostname as determined by Ruby Socket.gethostname (provided by Sensu) + - If not specified, it defaults to the system hostname as determined by Ruby Socket.gethostname (provided by Sensu). address: + type: str description: - An address to help identify and reach the client. This is only informational, usually an IP address or hostname. - default: Non-loopback IPv4 address as determined by Ruby Socket.ip_address_list (provided by Sensu) + - If not specified it defaults to non-loopback IPv4 address as determined by Ruby Socket.ip_address_list (provided by Sensu). subscriptions: + type: list description: - An array of client subscriptions, a list of roles and/or responsibilities assigned to the system (e.g. webserver). - These subscriptions determine which monitoring checks are executed by the client, as check requests are sent to subscriptions. - The subscriptions array items must be strings. - required: True safe_mode: description: - If safe mode is enabled for the client. Safe mode requires local check definitions in order to accept a check request and execute the check. type: bool default: 'no' redact: + type: list description: - Client definition attributes to redact (values) when logging and sending client keepalives. socket: + type: dict description: - The socket definition scope, used to configure the Sensu client socket. keepalives: @@ -51,9 +56,11 @@ options: type: bool default: 'yes' keepalive: + type: dict description: - The keepalive definition scope, used to configure Sensu client keepalives behavior (e.g. keepalive thresholds, etc). registration: + type: dict description: - The registration definition scope, used to configure Sensu registration event handlers. deregister: @@ -62,18 +69,23 @@ options: type: bool default: 'no' deregistration: + type: dict description: - The deregistration definition scope, used to configure automated Sensu client de-registration. ec2: + type: dict description: - The ec2 definition scope, used to configure the Sensu Enterprise AWS EC2 integration (Sensu Enterprise users only). chef: + type: dict description: - The chef definition scope, used to configure the Sensu Enterprise Chef integration (Sensu Enterprise users only). puppet: + type: dict description: - The puppet definition scope, used to configure the Sensu Enterprise Puppet integration (Sensu Enterprise users only). servicenow: + type: dict description: - The servicenow definition scope, used to configure the Sensu Enterprise ServiceNow integration (Sensu Enterprise users only). notes: diff --git a/plugins/modules/monitoring/sensu/sensu_handler.py b/plugins/modules/monitoring/sensu/sensu_handler.py index 0818ab7813..53152edc0f 100644 --- a/plugins/modules/monitoring/sensu/sensu_handler.py +++ b/plugins/modules/monitoring/sensu/sensu_handler.py @@ -16,35 +16,42 @@ description: - 'For more information, refer to the Sensu documentation: U(https://sensuapp.org/docs/latest/reference/handlers.html)' options: state: + type: str description: - Whether the handler should be present or not choices: [ 'present', 'absent' ] default: present name: + type: str description: - A unique name for the handler. The name cannot contain special characters or spaces. required: True type: + type: str description: - The handler type choices: [ 'pipe', 'tcp', 'udp', 'transport', 'set' ] - required: True filter: + type: str description: - The Sensu event filter (name) to use when filtering events for the handler. filters: + type: list description: - An array of Sensu event filters (names) to use when filtering events for the handler. - Each array item must be a string. severities: + type: list description: - An array of check result severities the handler will handle. - 'NOTE: event resolution bypasses this filtering.' - choices: [ 'warning', 'critical', 'unknown' ] + - "Example: [ 'warning', 'critical', 'unknown' ]." mutator: + type: str description: - The Sensu event mutator (name) to use to mutate event data for the handler. timeout: + type: int description: - The handler execution duration timeout in seconds (hard stop). - Only used by pipe and tcp handler types. @@ -60,19 +67,23 @@ options: type: bool default: 'no' command: + type: str description: - The handler command to be executed. - The event data is passed to the process via STDIN. - 'NOTE: the command attribute is only required for Pipe handlers (i.e. handlers configured with "type": "pipe").' socket: + type: dict description: - The socket definition scope, used to configure the TCP/UDP handler socket. - 'NOTE: the socket attribute is only required for TCP/UDP handlers (i.e. handlers configured with "type": "tcp" or "type": "udp").' pipe: + type: dict description: - The pipe definition scope, used to configure the Sensu transport pipe. - 'NOTE: the pipe attribute is only required for Transport handlers (i.e. handlers configured with "type": "transport").' handlers: + type: list description: - An array of Sensu event handlers (names) to use for events using the handler set. - Each array item must be a string. diff --git a/plugins/modules/monitoring/sensu/sensu_silence.py b/plugins/modules/monitoring/sensu/sensu_silence.py index 2178a7990f..acd64f975c 100644 --- a/plugins/modules/monitoring/sensu/sensu_silence.py +++ b/plugins/modules/monitoring/sensu/sensu_silence.py @@ -18,12 +18,15 @@ description: for subscriptions and checks. options: check: + type: str description: - Specifies the check which the silence entry applies to. creator: + type: str description: - Specifies the entity responsible for this entry. expire: + type: int description: - If specified, the silence entry will be automatically cleared after this number of seconds. @@ -33,23 +36,25 @@ options: cleared once the condition it is silencing is resolved. type: bool reason: + type: str description: - If specified, this free-form string is used to provide context or rationale for the reason this silence entry was created. state: + type: str description: - Specifies to create or clear (delete) a silence entry via the Sensu API - required: true default: present choices: ['present', 'absent'] subscription: + type: str description: - Specifies the subscription which the silence entry applies to. - To create a silence entry for a client prepend C(client:) to client name. Example - C(client:server1.example.dev) required: true - default: [] url: + type: str description: - Specifies the URL of the Sensu monitoring host server. required: false diff --git a/plugins/modules/monitoring/sensu/sensu_subscription.py b/plugins/modules/monitoring/sensu/sensu_subscription.py index 9ae407c87f..6316254d7b 100644 --- a/plugins/modules/monitoring/sensu/sensu_subscription.py +++ b/plugins/modules/monitoring/sensu/sensu_subscription.py @@ -16,16 +16,19 @@ description: - Manage which I(sensu channels) a machine should subscribe to options: name: + type: str description: - The name of the channel required: true state: + type: str description: - Whether the machine should subscribe or unsubscribe from the channel choices: [ 'present', 'absent' ] required: false default: present path: + type: str description: - Path to the subscriptions json file required: false diff --git a/plugins/modules/monitoring/spectrum_device.py b/plugins/modules/monitoring/spectrum_device.py index 88e81ebf00..77e3b15390 100644 --- a/plugins/modules/monitoring/spectrum_device.py +++ b/plugins/modules/monitoring/spectrum_device.py @@ -18,20 +18,25 @@ description: author: "Renato Orgito (@orgito)" options: device: + type: str aliases: [ host, name ] required: true description: - IP address of the device. - If a hostname is given, it will be resolved to the IP address. community: + type: str description: - SNMP community used for device discovery. - Required when C(state=present). + required: true landscape: + type: str required: true description: - Landscape handle of the SpectroServer to which add or remove the device. state: + type: str required: false description: - On C(present) creates the device when it does not exist. @@ -39,16 +44,19 @@ options: choices: ['present', 'absent'] default: 'present' url: + type: str aliases: [ oneclick_url ] required: true description: - HTTP, HTTPS URL of the Oneclick server in the form (http|https)://host.domain[:port] url_username: + type: str aliases: [ oneclick_user ] required: true description: - Oneclick user name. url_password: + type: str aliases: [ oneclick_password ] required: true description: @@ -68,6 +76,7 @@ options: default: 'yes' type: bool agentport: + type: int required: false description: - UDP port used for SNMP discovery. @@ -301,7 +310,7 @@ def main(): device=dict(required=True, aliases=['host', 'name']), landscape=dict(required=True), state=dict(choices=['present', 'absent'], default='present'), - community=dict(required=True, no_log=True), + community=dict(required=True, no_log=True), # @TODO remove the 'required', given the required_if ? agentport=dict(type='int', default=161), url=dict(required=True, aliases=['oneclick_url']), url_username=dict(required=True, aliases=['oneclick_user']), diff --git a/plugins/modules/monitoring/stackdriver.py b/plugins/modules/monitoring/stackdriver.py index ddb7751f56..bd1fc14514 100644 --- a/plugins/modules/monitoring/stackdriver.py +++ b/plugins/modules/monitoring/stackdriver.py @@ -16,42 +16,54 @@ description: author: "Ben Whaley (@bwhaley)" options: key: + type: str description: - API key. required: true event: + type: str description: - The type of event to send, either annotation or deploy choices: ['annotation', 'deploy'] + required: true revision_id: + type: str description: - The revision of the code that was deployed. Required for deploy events deployed_by: + type: str description: - The person or robot responsible for deploying the code default: "Ansible" deployed_to: + type: str description: - "The environment code was deployed to. (ie: development, staging, production)" repository: + type: str description: - The repository (or project) deployed msg: + type: str description: - The contents of the annotation message, in plain text.  Limited to 256 characters. Required for annotation. annotated_by: + type: str description: - The person or robot who the annotation should be attributed to. default: "Ansible" level: + type: str description: - one of INFO/WARN/ERROR, defaults to INFO if not supplied.  May affect display. choices: ['INFO', 'WARN', 'ERROR'] default: 'INFO' instance_id: + type: str description: - id of an EC2 instance that this event should be attached to, which will limit the contexts where this event is shown event_epoch: + type: str description: - "Unix timestamp of where the event should appear in the timeline, defaults to now. Be careful with this." ''' @@ -139,7 +151,7 @@ def do_send_request(module, url, params, key): def main(): module = AnsibleModule( - argument_spec=dict( + argument_spec=dict( # @TODO add types key=dict(required=True), event=dict(required=True, choices=['deploy', 'annotation']), msg=dict(), @@ -147,7 +159,7 @@ def main(): annotated_by=dict(default='Ansible'), level=dict(default='INFO', choices=['INFO', 'WARN', 'ERROR']), instance_id=dict(), - event_epoch=dict(), + event_epoch=dict(), # @TODO int? deployed_by=dict(default='Ansible'), deployed_to=dict(), repository=dict(), diff --git a/plugins/modules/monitoring/statusio_maintenance.py b/plugins/modules/monitoring/statusio_maintenance.py index 7a8401da2c..0414f6e861 100644 --- a/plugins/modules/monitoring/statusio_maintenance.py +++ b/plugins/modules/monitoring/statusio_maintenance.py @@ -22,39 +22,48 @@ notes: author: Benjamin Copeland (@bhcopeland) options: title: + type: str description: - A descriptive title for the maintenance window default: "A new maintenance window" desc: + type: str description: - Message describing the maintenance window default: "Created by Ansible" state: + type: str description: - Desired state of the package. default: "present" choices: ["present", "absent"] api_id: + type: str description: - Your unique API ID from status.io required: true api_key: + type: str description: - Your unique API Key from status.io required: true statuspage: + type: str description: - Your unique StatusPage ID from status.io required: true url: + type: str description: - Status.io API URL. A private apiary can be used instead. default: "https://api.status.io" components: + type: list description: - The given name of your component (server name) aliases: ['component'] containers: + type: list description: - The given name of your container (data center) aliases: ['container'] @@ -89,18 +98,22 @@ options: type: bool default: 'no' maintenance_id: + type: str description: - The maintenance id number when deleting a maintenance window minutes: + type: int description: - The length of time in UTC that the maintenance will run (starting from playbook runtime) default: 10 start_date: + type: str description: - Date maintenance is expected to start (Month/Day/Year) (UTC) - End Date is worked out from start_date + minutes start_time: + type: str description: - Time maintenance is expected to start (Hour:Minutes) (UTC) - End Time is worked out from start_time + minutes diff --git a/plugins/modules/monitoring/uptimerobot.py b/plugins/modules/monitoring/uptimerobot.py index 7d7ec61903..bb4e60faee 100644 --- a/plugins/modules/monitoring/uptimerobot.py +++ b/plugins/modules/monitoring/uptimerobot.py @@ -18,15 +18,18 @@ requirements: - Valid Uptime Robot API Key options: state: + type: str description: - Define whether or not the monitor should be running or paused. required: true choices: [ "started", "paused" ] monitorid: + type: str description: - ID of the monitor to check. required: true apikey: + type: str description: - Uptime Robot API key. required: true diff --git a/tests/sanity/ignore-2.10.txt b/tests/sanity/ignore-2.10.txt index e39aa88778..e71165b3b1 100644 --- a/tests/sanity/ignore-2.10.txt +++ b/tests/sanity/ignore-2.10.txt @@ -370,75 +370,19 @@ plugins/modules/identity/onepassword_info.py validate-modules:parameter-list-no- plugins/modules/identity/opendj/opendj_backendprop.py validate-modules:doc-missing-type plugins/modules/identity/opendj/opendj_backendprop.py validate-modules:parameter-type-not-in-doc plugins/modules/monitoring/bigpanda.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/bigpanda.py validate-modules:doc-missing-type plugins/modules/monitoring/bigpanda.py validate-modules:invalid-argument-name -plugins/modules/monitoring/bigpanda.py validate-modules:undocumented-parameter -plugins/modules/monitoring/circonus_annotation.py validate-modules:doc-default-incompatible-type -plugins/modules/monitoring/circonus_annotation.py validate-modules:doc-missing-type -plugins/modules/monitoring/circonus_annotation.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-default-incompatible-type -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-missing-type plugins/modules/monitoring/datadog/datadog_event.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:doc-default-does-not-match-spec plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:invalid-argument-name plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/honeybadger_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/icinga2_feature.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/icinga2_host.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/icinga2_host.py validate-modules:doc-missing-type -plugins/modules/monitoring/icinga2_host.py validate-modules:doc-required-mismatch -plugins/modules/monitoring/icinga2_host.py validate-modules:parameter-type-not-in-doc plugins/modules/monitoring/icinga2_host.py validate-modules:undocumented-parameter -plugins/modules/monitoring/librato_annotation.py validate-modules:doc-missing-type -plugins/modules/monitoring/librato_annotation.py validate-modules:doc-required-mismatch plugins/modules/monitoring/librato_annotation.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/librato_annotation.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/logentries.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/logentries.py validate-modules:doc-missing-type -plugins/modules/monitoring/logentries.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/logentries.py validate-modules:undocumented-parameter -plugins/modules/monitoring/logstash_plugin.py validate-modules:doc-missing-type plugins/modules/monitoring/logstash_plugin.py validate-modules:invalid-ansiblemodule-schema -plugins/modules/monitoring/logstash_plugin.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/newrelic_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/pagerduty.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/pagerduty.py validate-modules:doc-missing-type plugins/modules/monitoring/pagerduty.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/pagerduty.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/pagerduty_alert.py validate-modules:doc-missing-type -plugins/modules/monitoring/pagerduty_alert.py validate-modules:doc-required-mismatch -plugins/modules/monitoring/pingdom.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/pingdom.py validate-modules:doc-missing-type -plugins/modules/monitoring/rollbar_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/sensu/sensu_check.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/sensu/sensu_check.py validate-modules:doc-required-mismatch plugins/modules/monitoring/sensu/sensu_check.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/sensu/sensu_check.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_client.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/sensu/sensu_client.py validate-modules:doc-required-mismatch plugins/modules/monitoring/sensu/sensu_client.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/sensu/sensu_client.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:doc-required-mismatch plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_silence.py validate-modules:doc-missing-type -plugins/modules/monitoring/sensu/sensu_silence.py validate-modules:doc-required-mismatch -plugins/modules/monitoring/sensu/sensu_silence.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_subscription.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/spectrum_device.py validate-modules:doc-missing-type -plugins/modules/monitoring/spectrum_device.py validate-modules:doc-required-mismatch -plugins/modules/monitoring/spectrum_device.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/stackdriver.py validate-modules:doc-missing-type -plugins/modules/monitoring/stackdriver.py validate-modules:doc-required-mismatch plugins/modules/monitoring/statusio_maintenance.py pylint:blacklisted-name -plugins/modules/monitoring/statusio_maintenance.py validate-modules:doc-missing-type plugins/modules/monitoring/statusio_maintenance.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/statusio_maintenance.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/uptimerobot.py validate-modules:doc-missing-type plugins/modules/net_tools/cloudflare_dns.py validate-modules:parameter-type-not-in-doc plugins/modules/net_tools/dnsimple.py validate-modules:parameter-list-no-elements plugins/modules/net_tools/dnsmadeeasy.py validate-modules:doc-missing-type diff --git a/tests/sanity/ignore-2.11.txt b/tests/sanity/ignore-2.11.txt index e39aa88778..e71165b3b1 100644 --- a/tests/sanity/ignore-2.11.txt +++ b/tests/sanity/ignore-2.11.txt @@ -370,75 +370,19 @@ plugins/modules/identity/onepassword_info.py validate-modules:parameter-list-no- plugins/modules/identity/opendj/opendj_backendprop.py validate-modules:doc-missing-type plugins/modules/identity/opendj/opendj_backendprop.py validate-modules:parameter-type-not-in-doc plugins/modules/monitoring/bigpanda.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/bigpanda.py validate-modules:doc-missing-type plugins/modules/monitoring/bigpanda.py validate-modules:invalid-argument-name -plugins/modules/monitoring/bigpanda.py validate-modules:undocumented-parameter -plugins/modules/monitoring/circonus_annotation.py validate-modules:doc-default-incompatible-type -plugins/modules/monitoring/circonus_annotation.py validate-modules:doc-missing-type -plugins/modules/monitoring/circonus_annotation.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-default-incompatible-type -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-missing-type plugins/modules/monitoring/datadog/datadog_event.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:doc-default-does-not-match-spec plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:invalid-argument-name plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/honeybadger_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/icinga2_feature.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/icinga2_host.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/icinga2_host.py validate-modules:doc-missing-type -plugins/modules/monitoring/icinga2_host.py validate-modules:doc-required-mismatch -plugins/modules/monitoring/icinga2_host.py validate-modules:parameter-type-not-in-doc plugins/modules/monitoring/icinga2_host.py validate-modules:undocumented-parameter -plugins/modules/monitoring/librato_annotation.py validate-modules:doc-missing-type -plugins/modules/monitoring/librato_annotation.py validate-modules:doc-required-mismatch plugins/modules/monitoring/librato_annotation.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/librato_annotation.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/logentries.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/logentries.py validate-modules:doc-missing-type -plugins/modules/monitoring/logentries.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/logentries.py validate-modules:undocumented-parameter -plugins/modules/monitoring/logstash_plugin.py validate-modules:doc-missing-type plugins/modules/monitoring/logstash_plugin.py validate-modules:invalid-ansiblemodule-schema -plugins/modules/monitoring/logstash_plugin.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/newrelic_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/pagerduty.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/pagerduty.py validate-modules:doc-missing-type plugins/modules/monitoring/pagerduty.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/pagerduty.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/pagerduty_alert.py validate-modules:doc-missing-type -plugins/modules/monitoring/pagerduty_alert.py validate-modules:doc-required-mismatch -plugins/modules/monitoring/pingdom.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/pingdom.py validate-modules:doc-missing-type -plugins/modules/monitoring/rollbar_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/sensu/sensu_check.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/sensu/sensu_check.py validate-modules:doc-required-mismatch plugins/modules/monitoring/sensu/sensu_check.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/sensu/sensu_check.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_client.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/sensu/sensu_client.py validate-modules:doc-required-mismatch plugins/modules/monitoring/sensu/sensu_client.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/sensu/sensu_client.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:doc-required-mismatch plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_silence.py validate-modules:doc-missing-type -plugins/modules/monitoring/sensu/sensu_silence.py validate-modules:doc-required-mismatch -plugins/modules/monitoring/sensu/sensu_silence.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_subscription.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/spectrum_device.py validate-modules:doc-missing-type -plugins/modules/monitoring/spectrum_device.py validate-modules:doc-required-mismatch -plugins/modules/monitoring/spectrum_device.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/stackdriver.py validate-modules:doc-missing-type -plugins/modules/monitoring/stackdriver.py validate-modules:doc-required-mismatch plugins/modules/monitoring/statusio_maintenance.py pylint:blacklisted-name -plugins/modules/monitoring/statusio_maintenance.py validate-modules:doc-missing-type plugins/modules/monitoring/statusio_maintenance.py validate-modules:parameter-list-no-elements -plugins/modules/monitoring/statusio_maintenance.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/uptimerobot.py validate-modules:doc-missing-type plugins/modules/net_tools/cloudflare_dns.py validate-modules:parameter-type-not-in-doc plugins/modules/net_tools/dnsimple.py validate-modules:parameter-list-no-elements plugins/modules/net_tools/dnsmadeeasy.py validate-modules:doc-missing-type diff --git a/tests/sanity/ignore-2.9.txt b/tests/sanity/ignore-2.9.txt index 09f9f47cce..4f4b6a9963 100644 --- a/tests/sanity/ignore-2.9.txt +++ b/tests/sanity/ignore-2.9.txt @@ -326,55 +326,8 @@ plugins/modules/identity/keycloak/keycloak_clienttemplate.py validate-modules:pa plugins/modules/identity/opendj/opendj_backendprop.py validate-modules:doc-missing-type plugins/modules/identity/opendj/opendj_backendprop.py validate-modules:parameter-type-not-in-doc plugins/modules/monitoring/bigpanda.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/bigpanda.py validate-modules:doc-missing-type -plugins/modules/monitoring/bigpanda.py validate-modules:undocumented-parameter -plugins/modules/monitoring/circonus_annotation.py validate-modules:doc-default-incompatible-type -plugins/modules/monitoring/circonus_annotation.py validate-modules:doc-missing-type -plugins/modules/monitoring/circonus_annotation.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-default-incompatible-type -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:doc-missing-type -plugins/modules/monitoring/datadog/datadog_event.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/datadog/datadog_monitor.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/honeybadger_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/icinga2_feature.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/icinga2_host.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/icinga2_host.py validate-modules:doc-missing-type -plugins/modules/monitoring/icinga2_host.py validate-modules:parameter-type-not-in-doc plugins/modules/monitoring/icinga2_host.py validate-modules:undocumented-parameter -plugins/modules/monitoring/librato_annotation.py validate-modules:doc-missing-type -plugins/modules/monitoring/librato_annotation.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/logentries.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/logentries.py validate-modules:doc-missing-type -plugins/modules/monitoring/logentries.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/logentries.py validate-modules:undocumented-parameter -plugins/modules/monitoring/logstash_plugin.py validate-modules:doc-missing-type -plugins/modules/monitoring/logstash_plugin.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/newrelic_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/pagerduty.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/pagerduty.py validate-modules:doc-missing-type -plugins/modules/monitoring/pagerduty.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/pagerduty_alert.py validate-modules:doc-missing-type -plugins/modules/monitoring/pingdom.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/pingdom.py validate-modules:doc-missing-type -plugins/modules/monitoring/rollbar_deployment.py validate-modules:doc-missing-type -plugins/modules/monitoring/sensu/sensu_check.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/sensu/sensu_check.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_client.py validate-modules:doc-default-does-not-match-spec -plugins/modules/monitoring/sensu/sensu_client.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:doc-choices-do-not-match-spec -plugins/modules/monitoring/sensu/sensu_handler.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_silence.py validate-modules:doc-missing-type -plugins/modules/monitoring/sensu/sensu_silence.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/sensu/sensu_subscription.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/spectrum_device.py validate-modules:doc-missing-type -plugins/modules/monitoring/spectrum_device.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/stackdriver.py validate-modules:doc-missing-type plugins/modules/monitoring/statusio_maintenance.py pylint:blacklisted-name -plugins/modules/monitoring/statusio_maintenance.py validate-modules:doc-missing-type -plugins/modules/monitoring/statusio_maintenance.py validate-modules:parameter-type-not-in-doc -plugins/modules/monitoring/uptimerobot.py validate-modules:doc-missing-type plugins/modules/net_tools/cloudflare_dns.py validate-modules:parameter-type-not-in-doc plugins/modules/net_tools/dnsmadeeasy.py validate-modules:doc-missing-type plugins/modules/net_tools/dnsmadeeasy.py validate-modules:parameter-type-not-in-doc