[![Build Status](https://travis-ci.org/chriswayg/ansible-msmtp-mailer.svg?branch=master)](https://travis-ci.org/chriswayg/ansible-msmtp-mailer) # ansible-msmtp-mailer This ansible role deploys msmtp as a mailer for RHEL8 and compatible. ## Prerequisite * Access to a functioning SMTP server. ## How to install * Either use git to clone/download into your roles directory: - `git clone https://git.garbaye.fr/Garbaye/ansible-msmtp-mailer.git` * Or import in your requirements.yml: ``` roles: - src: git+https://git.garbaye.fr/Garbaye/ansible-msmtp-mailer.git ``` ## Variables All the default variables are located **defaults/main.yml**. Mostly you would need to configure the following variables. - *msmtp_accounts:* You can define one or more smtp accounts: ``` msmtp_accounts: - account: gmail host: smtp.gmail.com port: 587 auth: "on" from: example@gmail.example user: example@gmail.example password: "some password" - account: mysmtp host: smtp.example port: 587 auth: "on" from: admin@example.org user: myuser@example.org password: plain-text-password2 ``` - *msmtp_default_account:* Default smtp account to use ```msmtp_default_account: "gmail"``` - Logging - Option A (syslog) ``` msmtp_log : "syslog" ``` - Option B (file logging) ``` msmtp_log : "file" msmtp_logfile : /var/log/msmtp.log ``` - Option C (No logging) ``` msmtp_log : "no" ``` - Mail aliases - *msmtp_alias_default:* default email this required `msmtp_alias_default : ops@example.com` - *msmtp_alias_root:* root email this is optional `msmtp_alias_root : root@example.com` - *msmtp_alias_cron:* cron email this optional `msmtp_alias_cron : cron@example.com` ## Configure You can configure your variables in ansible with one of the following * Create a variable in host/group variables directory. * Editing vars/main.yml * Run ansible-playbook with -e * Edit the defaults/main.yml (not recommended) ## Example Playbook ```yaml --- - hosts: all roles: - ansible-msmtp-mailer ``` ## Run - mstmp used to function out of the box with the provided defaults/main.yml settings, because the configuration used a real smtp server for testing, but Yandex does not allow this any more. Instead use a Gmail account for testing. ```ansible-playbook -l hostname msmtp.yml``` ## Test You should get a test mail if it works as expected on the root mail ## Documentation [msmtp manual](http://msmtp.sourceforge.net/doc/msmtp.html) ## Authors: - Forked from [GitHub - chriswayg/ansible-msmtp-mailer](https://github.com/chriswayg/ansible-msmtp-mailer) - Forked from [GitHub - AutomationWithAnsible/ansible-msmtp: Ansible MSTMP](https://github.com/AutomationWithAnsible/ansible-msmtp) - By [Adham Helal](https://github.com/ahelal) - [Christian Wagner](https://github.com/chriswayg) ## License: - Apache 2.0