10 Commits

4 changed files with 11 additions and 1 deletions

View File

@ -14,6 +14,7 @@ jobs:
include:
- content_type: text/plain
body: file://README.md
attachments: action.yml
- content_type: text/html
body: |
<!DOCTYPE html>
@ -23,6 +24,7 @@ jobs:
<p>Paragraph</p>
</body>
</html>
attachments: package.json,package-lock.json
steps:
- name: Checkout code
uses: actions/checkout@v1
@ -38,3 +40,4 @@ jobs:
to: ${{github.event.pusher.email}}
from: github-actions
content_type: ${{matrix.content_type}}
attachments: ${{matrix.attachments}}

View File

@ -6,7 +6,7 @@ An action that simply sends a mail to multiple recipients.
```yaml
- name: Send mail
uses: dawidd6/action-send-mail@master
uses: dawidd6/action-send-mail@v2
with:
server_address: smtp.gmail.com
server_port: 465
@ -21,4 +21,6 @@ An action that simply sends a mail to multiple recipients.
from: Luke Skywalker # <user@example.com>
# Optional content type (defaults to text/plain):
content_type: text/html
# Optional attachments:
attachments: attachments.zip,git.diff,./dist/static/main.js
```

View File

@ -33,6 +33,9 @@ inputs:
description: Content-Type HTTP header (text/html or text/plain)
required: false
default: text/plain
attachments:
description: Files that will be added to mail message attachments (separated with comma)
required: false
runs:
using: node12
main: main.js

View File

@ -30,6 +30,7 @@ async function main() {
const to = core.getInput("to", { required: true })
const from = core.getInput("from", { required: true })
const content_type = core.getInput("content_type", { required: true })
const attachments = core.getInput("attachments", { required: false })
const transport = nodemailer.createTransport({
host: server_address,
@ -47,6 +48,7 @@ async function main() {
subject: subject,
text: content_type != "text/html" ? get_body(body) : undefined,
html: content_type == "text/html" ? get_body(body) : undefined,
attachments: attachments ? attachments.split(',').map(f => ({ path: f.trim() })) : undefined
})
console.log(info)