2014-07-02 149 views
3

我想發送一封電子郵件使用Ansible,但我不明白它是如何工作的,因爲我不知道如何提供此類服務的用戶和密碼(未在documentation)。如何發送電子郵件與Ansible

我的機器和電子郵件服務器都在同一個網絡中,但我需要進行身份驗證才能發送電子郵件。

這是我的YML文件:

--- 
- name: Testing email 
    hosts: localhost 
    tasks: 
    - name: Send email 
     local_action: mail 
     host=mail.server.com 
     port=993 
     subject="Ansible test mail" 
     body="Testing email" 
     [email protected] 
     to="[email protected] 
     charset=utf8 

這是主機的文件的相關內容:

[localhost] 
localhost ansible_connection=local 

約我應該如何配置它的任何想法?提前致謝。

回答

4

查看mail模塊的源代碼(https://github.com/ansible/ansible/blob/d1effecb2ef073e478c67a7ca39cf56708a66a48/library/notification/mail),它看起來不像它支持SMTP認證。

但是,爲它添加支持應該不會太難。這需要將用戶名和密碼參數添加到模塊中,檢測它們是否都已提供,如果是,請使用這些參數調用smtp.login()

事實上,它看起來像有引入請求做的正是在這裏的那一刻

https://github.com/ansible/ansible/pull/7213

這裏

https://github.com/ansible/ansible/pull/6667

所以支持將最有可能儘快加入開發。