【问题标题】:Email results of ansible playbook / shell command?ansible playbook / shell命令的电子邮件结果?
【发布时间】:2014-09-30 18:38:04
【问题描述】:

我希望通过电子邮件发送 ansible playbook 的结果

我正在使用 debug: var=results.stdout_lines 来显示 shell 命令的标准输出,但我想将其捆绑并通过电子邮件发送给自己。

我觉得必须有一个内置的方法来做到这一点,但我找不到任何东西?

我的剧本看起来像

- name: run command
      shell: echo `hostname`
      register: results
      when: ansible_os_family == "Debian"

    - debug: var=results.stdout_lines

这将在 playbook 运行期间打印命令的标准输出结果,但我想通过电子邮件将其发送给自己。

我尝试通过电子邮件发送已注册的变量“结果”,但它失败了

- local_action: mail
                subject='Maricache backup report'
                body={{ results.stdout_lines }}
                to='partytime@gmail.com'

【问题讨论】:

    标签: linux ansible


    【解决方案1】:

    尝试一下,在某处找到了解决方案,它也对我有用。

    - name: logs result
      shell: grep "`date '+%b.%d'`" /var/log/commands.log
      register: command_log
    
    - name: mail result
      mail:
        to: helloworld@xyz.com
        subject: "command logs for today"
        body: "{{ command_log.stdout }}"
      when: command_log.stdout
    

    【讨论】:

      猜你喜欢
      • 2013-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-21
      • 1970-01-01
      • 2020-03-29
      • 2020-03-28
      • 1970-01-01
      相关资源
      最近更新 更多