mirror of
https://github.com/dawidd6/action-send-mail.git
synced 2025-07-01 12:43:15 +07:00
Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
f16ced8d0e | |||
b4d21e7654 | |||
8fee2012a2 | |||
df3751004c |
2
.github/workflows/test.yml
vendored
2
.github/workflows/test.yml
vendored
@ -25,5 +25,5 @@ jobs:
|
||||
password: ${{secrets.PASSWORD}}
|
||||
subject: ${{github.repository}}
|
||||
body: ${{matrix.body}}
|
||||
to: ${{secrets.USERNAME}}
|
||||
to: ${{github.event.pusher.email}},${{secrets.USERNAME}}
|
||||
from: github-actions
|
3
LICENSE
3
LICENSE
@ -1,7 +1,6 @@
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2018 GitHub, Inc. and contributors
|
||||
Copyright (c) 2020 Dawid Dziurla
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
@ -19,4 +19,6 @@ An action that simply sends a mail to multiple recipients.
|
||||
body: file://README.md
|
||||
to: obiwan@tatooine.com,yoda@dagobah.com
|
||||
from: Luke Skywalker
|
||||
# Optional content type:
|
||||
content_type: text/html
|
||||
```
|
||||
|
@ -29,6 +29,10 @@ inputs:
|
||||
from:
|
||||
description: Full name of mail sender
|
||||
required: true
|
||||
content_type:
|
||||
description: Content-Type HTTP header (MIME type)
|
||||
required: false
|
||||
default: text/plain
|
||||
runs:
|
||||
using: docker
|
||||
image: Dockerfile
|
||||
|
10
main.rb
10
main.rb
@ -4,14 +4,15 @@
|
||||
require 'net/smtp'
|
||||
|
||||
# Inputs
|
||||
address = ENV['INPUT_SERVER_ADDRESS']
|
||||
port = ENV['INPUT_SERVER_PORT']
|
||||
server_address = ENV['INPUT_SERVER_ADDRESS']
|
||||
server_port = ENV['INPUT_SERVER_PORT']
|
||||
username = ENV['INPUT_USERNAME']
|
||||
password = ENV['INPUT_PASSWORD']
|
||||
subject = ENV['INPUT_SUBJECT']
|
||||
body = ENV['INPUT_BODY']
|
||||
to = ENV['INPUT_TO']
|
||||
from = ENV['INPUT_FROM']
|
||||
content_type = ENV['INPUT_CONTENT_TYPE'] || 'text/plain'
|
||||
|
||||
# Body
|
||||
prefix = 'file://'
|
||||
@ -24,6 +25,7 @@ body = if body.start_with?(prefix)
|
||||
|
||||
# Message
|
||||
message = <<~END_OF_MESSAGE
|
||||
Content-Type: #{content_type}; charset=utf-8
|
||||
Subject: #{subject}
|
||||
From: #{from} <#{username}>
|
||||
|
||||
@ -32,9 +34,9 @@ END_OF_MESSAGE
|
||||
|
||||
# Send
|
||||
begin
|
||||
smtp = Net::SMTP.new(address, port.to_i)
|
||||
smtp = Net::SMTP.new(server_address, server_port.to_i)
|
||||
smtp.enable_tls
|
||||
smtp.start(address, username, password, :login)
|
||||
smtp.start(server_address, username, password, :login)
|
||||
smtp.send_message(message, username, to.split(','))
|
||||
rescue StandardError => e
|
||||
puts "Error: #{e.message}"
|
||||
|
Reference in New Issue
Block a user