组附件中的电子邮件主机名,而不是每个服务器的单独邮件

Email hostnames in a group attachment rather than individual mails per server

关于每月补丁,我们目前在安装更新之前发送了 pre_task 邮件通知,但由于电子邮件正文中包含 {{ inventory_hostname }},这是按服务器发送的。

有没有办法替换正文中的 inventory_hostname 以引用主机组(在本例中为 groupOne)中的所有服务器,以便发送一封包含所有主机名的电子邮件而不是单独的电子邮件?

hosts: groupOne

become: true

any_errors_fatal: true

pre_tasks:

name: Notification email of patching beginning
mail:
    host: XXXXXXXXXXXXXXXXXXXXX.com

    port: XXXXXX

    to: hello@gmail.com

    sender: patching@gmail.com
    subject: Patching_Notification
    body: "Monthly patching is about to commence for {{ inventory_hostname }}. A further email will be sent on completion"

您可以使用 group_names 变量来获取主机的组名。

https://docs.ansible.com/ansible/latest/reference_appendices/special_variables.html#magic

您可能只想 运行 您的 pre_tasks 通知一次 run_once: yes