From 51394b55a06a15144b370270afd0f5119b8c1168 Mon Sep 17 00:00:00 2001 From: Felix Fontein Date: Fri, 24 Feb 2023 09:24:50 +0100 Subject: [PATCH] Add attributes to some messaging modules (#5962) Add attributes to some messaging modules. --- plugins/modules/campfire.py | 7 +++++++ plugins/modules/cisco_webex.py | 8 ++++++++ plugins/modules/discord.py | 7 +++++++ plugins/modules/hipchat.py | 7 +++++++ plugins/modules/irc.py | 9 ++++++++- plugins/modules/jabber.py | 9 ++++++++- plugins/modules/librato_annotation.py | 7 +++++++ plugins/modules/logentries.py | 7 +++++++ plugins/modules/logentries_msg.py | 11 ++++++++--- plugins/modules/mail.py | 7 +++++++ plugins/modules/matrix.py | 7 +++++++ plugins/modules/mattermost.py | 7 +++++++ plugins/modules/rocketchat.py | 7 +++++++ plugins/modules/say.py | 19 +++++++++++++------ plugins/modules/sendgrid.py | 27 +++++++++++++++++---------- plugins/modules/slack.py | 9 ++++++++- plugins/modules/syslogger.py | 7 +++++++ plugins/modules/taiga_issue.py | 7 +++++++ plugins/modules/telegram.py | 7 +++++++ plugins/modules/twilio.py | 23 +++++++++++++++-------- plugins/modules/typetalk.py | 7 +++++++ 21 files changed, 176 insertions(+), 30 deletions(-) diff --git a/plugins/modules/campfire.py b/plugins/modules/campfire.py index dfc9af1ce1..1e0f1ecea4 100644 --- a/plugins/modules/campfire.py +++ b/plugins/modules/campfire.py @@ -16,6 +16,13 @@ short_description: Send a message to Campfire description: - Send a message to Campfire. - Messages with newlines will result in a "Paste" message being sent. +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: none + diff_mode: + support: none options: subscription: type: str diff --git a/plugins/modules/cisco_webex.py b/plugins/modules/cisco_webex.py index 95fcccb7d6..2e5cb50ea0 100644 --- a/plugins/modules/cisco_webex.py +++ b/plugins/modules/cisco_webex.py @@ -20,6 +20,14 @@ notes: - The C(recipient_id) type must be valid for the supplied C(recipient_id). - Full API documentation can be found at U(https://developer.webex.com/docs/api/basics). +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none + options: recipient_type: diff --git a/plugins/modules/discord.py b/plugins/modules/discord.py index 9df00ad7dd..8b5391d44b 100644 --- a/plugins/modules/discord.py +++ b/plugins/modules/discord.py @@ -20,6 +20,13 @@ seealso: - name: API documentation description: Documentation for Discord API link: https://discord.com/developers/docs/resources/webhook#execute-webhook +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: webhook_id: description: diff --git a/plugins/modules/hipchat.py b/plugins/modules/hipchat.py index a5aa150f32..11b5fb7358 100644 --- a/plugins/modules/hipchat.py +++ b/plugins/modules/hipchat.py @@ -15,6 +15,13 @@ module: hipchat short_description: Send a message to Hipchat description: - Send a message to a Hipchat room, with options to control the formatting. +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: token: type: str diff --git a/plugins/modules/irc.py b/plugins/modules/irc.py index f45d610da7..6cd7bc1203 100644 --- a/plugins/modules/irc.py +++ b/plugins/modules/irc.py @@ -14,7 +14,14 @@ DOCUMENTATION = ''' module: irc short_description: Send a message to an IRC channel or a nick description: - - Send a message to an IRC channel or a nick. This is a very simplistic implementation. + - Send a message to an IRC channel or a nick. This is a very simplistic implementation. +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: server: type: str diff --git a/plugins/modules/jabber.py b/plugins/modules/jabber.py index 110b618d77..650b29957d 100644 --- a/plugins/modules/jabber.py +++ b/plugins/modules/jabber.py @@ -14,7 +14,14 @@ DOCUMENTATION = ''' module: jabber short_description: Send a message to jabber user or chat room description: - - Send a message to jabber + - Send a message to jabber +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: user: type: str diff --git a/plugins/modules/librato_annotation.py b/plugins/modules/librato_annotation.py index 70e17cfef4..ebfb751546 100644 --- a/plugins/modules/librato_annotation.py +++ b/plugins/modules/librato_annotation.py @@ -17,6 +17,13 @@ description: - Create an annotation event on the given annotation stream :name. If the annotation stream does not exist, it will be created automatically author: "Seth Edwards (@Sedward)" requirements: [] +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: none + diff_mode: + support: none options: user: type: str diff --git a/plugins/modules/logentries.py b/plugins/modules/logentries.py index a605c41316..f177cf4546 100644 --- a/plugins/modules/logentries.py +++ b/plugins/modules/logentries.py @@ -16,6 +16,13 @@ author: "Ivan Vanderbyl (@ivanvanderbyl)" short_description: Module for tracking logs via logentries.com description: - Sends logs to LogEntries in realtime +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: path: type: str diff --git a/plugins/modules/logentries_msg.py b/plugins/modules/logentries_msg.py index 723273165f..03851ad1f4 100644 --- a/plugins/modules/logentries_msg.py +++ b/plugins/modules/logentries_msg.py @@ -14,9 +14,14 @@ DOCUMENTATION = ''' module: logentries_msg short_description: Send a message to logentries description: - - Send a message to logentries -requirements: - - "python >= 2.6" + - Send a message to logentries +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: token: type: str diff --git a/plugins/modules/mail.py b/plugins/modules/mail.py index 9d01fc59a7..feaac69233 100644 --- a/plugins/modules/mail.py +++ b/plugins/modules/mail.py @@ -28,6 +28,13 @@ description: - Of course sending out a mail can be equally useful as a way to notify one or more people in a team that a specific action has been (successfully) taken. +extends_documentation_fragment: +- community.general.attributes +attributes: + check_mode: + support: none + diff_mode: + support: none options: sender: description: diff --git a/plugins/modules/matrix.py b/plugins/modules/matrix.py index f339e76593..0b419c8d93 100644 --- a/plugins/modules/matrix.py +++ b/plugins/modules/matrix.py @@ -15,6 +15,13 @@ module: matrix short_description: Send notifications to matrix description: - This module sends html formatted notifications to matrix rooms. +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: msg_plain: type: str diff --git a/plugins/modules/mattermost.py b/plugins/modules/mattermost.py index b3fe6b5680..29894c3a7c 100644 --- a/plugins/modules/mattermost.py +++ b/plugins/modules/mattermost.py @@ -21,6 +21,13 @@ short_description: Send Mattermost notifications description: - Sends notifications to U(http://your.mattermost.url) via the Incoming WebHook integration. author: "Benjamin Jolivot (@bjolivot)" +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: url: type: str diff --git a/plugins/modules/rocketchat.py b/plugins/modules/rocketchat.py index 02458ed232..23d6d529e7 100644 --- a/plugins/modules/rocketchat.py +++ b/plugins/modules/rocketchat.py @@ -18,6 +18,13 @@ short_description: Send notifications to Rocket Chat description: - The C(rocketchat) module sends notifications to Rocket Chat via the Incoming WebHook integration author: "Ramon de la Fuente (@ramondelafuente)" +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: none + diff_mode: + support: none options: domain: type: str diff --git a/plugins/modules/say.py b/plugins/modules/say.py index 04b5027cae..175e5feb0b 100644 --- a/plugins/modules/say.py +++ b/plugins/modules/say.py @@ -14,21 +14,28 @@ DOCUMENTATION = ''' module: say short_description: Makes a computer to speak description: - - makes a computer speak! Amuse your friends, annoy your coworkers! + - makes a computer speak! Amuse your friends, annoy your coworkers! notes: - - In 2.5, this module has been renamed from C(osx_say) to M(community.general.say). - - If you like this module, you may also be interested in the osx_say callback plugin. - - A list of available voices, with language, can be found by running C(say -v ?) on a OSX host and C(espeak --voices) on a Linux host. + - In 2.5, this module has been renamed from C(osx_say) to M(community.general.say). + - If you like this module, you may also be interested in the osx_say callback plugin. + - A list of available voices, with language, can be found by running C(say -v ?) on a OSX host and C(espeak --voices) on a Linux host. +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: msg: type: str description: - What to say + - What to say. required: true voice: type: str description: - What voice to use + - What voice to use. required: false requirements: [ say or espeak or espeak-ng ] author: diff --git a/plugins/modules/sendgrid.py b/plugins/modules/sendgrid.py index d2a52e5f0e..2c0cc9a5b2 100644 --- a/plugins/modules/sendgrid.py +++ b/plugins/modules/sendgrid.py @@ -14,19 +14,26 @@ DOCUMENTATION = r''' module: sendgrid short_description: Sends an email with the SendGrid API description: - - "Sends an email with a SendGrid account through their API, not through - the SMTP service." + - "Sends an email with a SendGrid account through their API, not through + the SMTP service." notes: - - "This module is non-idempotent because it sends an email through the - external API. It is idempotent only in the case that the module fails." - - "Like the other notification modules, this one requires an external - dependency to work. In this case, you'll need an active SendGrid - account." - - "In order to use api_key, cc, bcc, attachments, from_name, html_body, headers - you must pip install sendgrid" - - "since 2.2 I(username) and I(password) are not required if you supply an I(api_key)" + - "This module is non-idempotent because it sends an email through the + external API. It is idempotent only in the case that the module fails." + - "Like the other notification modules, this one requires an external + dependency to work. In this case, you'll need an active SendGrid + account." + - "In order to use api_key, cc, bcc, attachments, from_name, html_body, headers + you must pip install sendgrid" + - "since 2.2 I(username) and I(password) are not required if you supply an I(api_key)" requirements: - sendgrid Python library 1.6.22 or lower (Sendgrid API V2 supported) +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: username: type: str diff --git a/plugins/modules/slack.py b/plugins/modules/slack.py index c1ae865cde..4e26f1973c 100644 --- a/plugins/modules/slack.py +++ b/plugins/modules/slack.py @@ -19,8 +19,15 @@ DOCUMENTATION = """ module: slack short_description: Send Slack notifications description: - - The C(slack) module sends notifications to U(http://slack.com) via the Incoming WebHook integration + - The C(slack) module sends notifications to U(http://slack.com) via the Incoming WebHook integration author: "Ramon de la Fuente (@ramondelafuente)" +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: domain: type: str diff --git a/plugins/modules/syslogger.py b/plugins/modules/syslogger.py index 5fc21a9dc1..3a7abf4fbe 100644 --- a/plugins/modules/syslogger.py +++ b/plugins/modules/syslogger.py @@ -13,6 +13,13 @@ module: syslogger short_description: Log messages in the syslog description: - Uses syslog to add log entries to the host. +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: none + diff_mode: + support: none options: msg: type: str diff --git a/plugins/modules/taiga_issue.py b/plugins/modules/taiga_issue.py index 25f6557ea2..e80ff43b89 100644 --- a/plugins/modules/taiga_issue.py +++ b/plugins/modules/taiga_issue.py @@ -17,6 +17,13 @@ description: - Creates/deletes an issue in a Taiga Project Management Platform (U(https://taiga.io)). - An issue is identified by the combination of project, issue subject and issue type. - This module implements the creation or deletion of issues (not the update). +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: taiga_host: type: str diff --git a/plugins/modules/telegram.py b/plugins/modules/telegram.py index 4e89825120..d13e90fd5c 100644 --- a/plugins/modules/telegram.py +++ b/plugins/modules/telegram.py @@ -23,6 +23,13 @@ description: - Also, the user may try to use any other telegram bot API method, if you specify I(api_method) argument. notes: - You will require a telegram account and create telegram bot to use this module. +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: token: type: str diff --git a/plugins/modules/twilio.py b/plugins/modules/twilio.py index 6d22563d1c..270320c465 100644 --- a/plugins/modules/twilio.py +++ b/plugins/modules/twilio.py @@ -21,39 +21,46 @@ notes: - Like the other notification modules, this one requires an external dependency to work. In this case, you'll need a Twilio account with a purchased or verified phone number to send the text message. +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: full + diff_mode: + support: none options: account_sid: type: str description: - user's Twilio account token found on the account page + - User's Twilio account token found on the account page. required: true auth_token: type: str - description: user's Twilio authentication token + description: + - User's Twilio authentication token. required: true msg: type: str description: - the body of the text message + - The body of the text message. required: true to_numbers: type: list elements: str description: - one or more phone numbers to send the text message to, - format +15551112222 + - One or more phone numbers to send the text message to, format C(+15551112222). required: true aliases: [ to_number ] from_number: type: str description: - the Twilio number to send the text message from, format +15551112222 + - The Twilio number to send the text message from, format C(+15551112222). required: true media_url: type: str description: - a URL with a picture, video or sound clip to send with an MMS - (multimedia message) instead of a plain SMS + - A URL with a picture, video or sound clip to send with an MMS + (multimedia message) instead of a plain SMS. required: false author: "Matt Makai (@makaimc)" diff --git a/plugins/modules/typetalk.py b/plugins/modules/typetalk.py index 5fe2baa916..ddf9f35605 100644 --- a/plugins/modules/typetalk.py +++ b/plugins/modules/typetalk.py @@ -15,6 +15,13 @@ module: typetalk short_description: Send a message to typetalk description: - Send a message to typetalk using typetalk API +extends_documentation_fragment: + - community.general.attributes +attributes: + check_mode: + support: none + diff_mode: + support: none options: client_id: type: str