Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dawidd6/action-send-mail
:gear: A GitHub Action to send an email to multiple recipients
https://github.com/dawidd6/action-send-mail
action email github-actions mail multiple-recipients send sendmail
Last synced: about 1 month ago
JSON representation
:gear: A GitHub Action to send an email to multiple recipients
- Host: GitHub
- URL: https://github.com/dawidd6/action-send-mail
- Owner: dawidd6
- License: mit
- Created: 2019-11-18T12:05:03.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-10-07T12:10:31.000Z (about 1 month ago)
- Last Synced: 2024-10-13T14:30:38.389Z (about 1 month ago)
- Topics: action, email, github-actions, mail, multiple-recipients, send, sendmail
- Language: JavaScript
- Homepage:
- Size: 935 KB
- Stars: 452
- Watchers: 10
- Forks: 187
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Send mail GitHub Action
An action that simply sends a mail to multiple recipients.
Some features:
- plain text body
- HTML body
- multipart body (plain text + HTML)
- Markdown to HTML converting (use `html_body`, not `body`)
- file attachments (supports globbing)## Usage
```yaml
- name: Send mail
uses: dawidd6/action-send-mail@v3
with:
# Specify connection via URL (replaces server_address, server_port, secure,
# username and password)
#
# Format:
#
# * smtp://user:password@server:port
# * smtp+starttls://user:password@server:port
connection_url: ${{secrets.MAIL_CONNECTION}}
# Required mail server address if not connection_url:
server_address: smtp.gmail.com
# Server port, default 25:
server_port: 465
# Optional whether this connection use TLS (default is true if server_port is 465)
secure: true
# Optional (recommended) mail server username:
username: ${{secrets.MAIL_USERNAME}}
# Optional (recommended) mail server password:
password: ${{secrets.MAIL_PASSWORD}}
# Required mail subject:
subject: Github Actions job result
# Required recipients' addresses:
to: [email protected],[email protected]
# Required sender full name (address can be skipped):
from: Luke Skywalker #
# Optional plain body:
body: Build job of ${{github.repository}} completed successfully!
# Optional HTML body read from file:
html_body: file://README.html
# Optional carbon copy recipients:
cc: [email protected],[email protected]
# Optional blind carbon copy recipients:
bcc: [email protected],[email protected]
# Optional recipient of the email response:
reply_to: [email protected]
# Optional Message ID this message is replying to:
in_reply_to:
# Optional unsigned/invalid certificates allowance:
ignore_cert: true
# Optional converting Markdown to HTML (set content_type to text/html too):
convert_markdown: true
# Optional attachments:
attachments: attachments.zip,git.diff,./dist/static/*.js
# Optional priority: 'high', 'normal' (default) or 'low'
priority: low
# Optional nodemailerlog: true/false
nodemailerlog: false
# Optional nodemailerdebug: true/false if true lognodem will also be set true
nodemailerdebug: false
```## Troubleshooting
### Gmail
Instead of using your normal Google password, use an App password.
1. [Enable 2-Step Verification.](https://support.google.com/accounts/answer/185839?hl=en&co=GENIE.Platform%3DAndroid).
This is needed to create an App password.
2. [Create an App password](https://support.google.com/accounts/answer/185833?hl=en) for `Mail`.### Unauthenticated login (username/password fields)
The parameters `username` and `password` are set as optional to support self-hosted runners access to on-premise infrastructure. If
you are accessing public email servers make sure you provide a username/password authentication through [GitHub Secrets](https://docs.github.com/en/actions/reference/encrypted-secrets) to make the email delivery secure.