-
Notifications
You must be signed in to change notification settings - Fork 5.5k
Add attachment support to SMTP state and module #47442
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@cachedout hey! You've helped me with my last PR when Jenkins was failing. This time even the reviewer bot is not making an appearance. Any idea about what might be going on here? |
Hi @jeduardo The bot broke a little while ago. :( Let's start by having you fix up these lint errors, please: https://jenkins.saltstack.com/job/PR/job/salt-pr-lint-n/21534/violations/file/salt/modules/smtp.py/ |
@cachedout it took some time specially after the linting task was not accessible for a couple days but linting problems are finally resolved! What else? |
@cachedout hey! Builds seem to be failing now because of issues not related to the changes suggested in this PR. Could you please review it and send forward any other suggestions? I'm really keen to get this functionality added to Salt, either as I'm proposing or in any other way. Thanks! |
salt/modules/smtp.py
Outdated
@@ -76,6 +82,7 @@ def send_msg(recipient, | |||
use_ssl='True', | |||
username=None, | |||
password=None, | |||
attachments=None, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you move this to the end of the list so we don't cause an API error?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, of course! Moved to the end, thanks for spotting it. :)
salt/states/smtp.py
Outdated
subject, | ||
sender=None, | ||
profile=None, | ||
attachments=None, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same comment here. :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@rallytime thanks for approving it! :) |
What does this PR do?
This PR adds support to sending out email messages containing one or more attachments specified through a new parameter called
attachments
.The acceptable value for this parameter is a list of files present in the local filesystem that will be added as attachments to the outgoing email sent by the Salt state/module for SMTP.
What issues does this PR fix or reference?
When trying to deploy some automation bits where Salt generates a file periodically (for example, a client certificate) I have faced the issue that I cannot easily send out the generated file to a recipient through email.
The enhancement on this PR makes this particular use case possible.
Previous Behavior
The
attachments
key is not present and is ignored by Salt.New Behavior
All files in the minion filesystem specified as a list under the
attachments
key are added as individual attachments to an outgoing email message.Tests written?
No
Commits signed with GPG?
No