Как красиво напечатать текст письма в ansible playbook?

#ansible #ansible-2.x

#ansible #ansible-2.x

Вопрос:

Я хотел бы красиво распечатать вывод тела письма здесь в каком-нибудь лучшем формате.

         - name: Email notification with better output format
          mail:
            host: localhost
            port: 25
            from: user@test.com
            to: user1@test.com
            subject: TEST
            body: 
                 Hostname: {{ value1 }}
                 IP: {{ value2 }}
          delegate_to: localhost
 

Просто любопытно узнать, есть ли в ansible какой-нибудь собственный способ красиво распечатать содержимое тела письма. В настоящее время я получаю текст письма в следующем формате:

 Hostname:test1
IP:0.3.100.1
 

Я хотел бы получить более отформатированный вывод тела письма, что-то вроде:

     Hostname: test1
    IP      : 0.3.100.1
 

Спасибо.

Ответ №1:

Используйте формат и отступ. Например

     - debug:
        msg: "{{ body|indent(width=6, first=true, blank=false) }}"
      vars:
        value1: test1
        value2: 0.3.100.1
        body: |
          {{ "Hostname: %s"|format(value1) }}
          {{ "IP      : %s"|format(value2) }}
 

дает

   msg: |2-
          Hostname: test1
          IP      : 0.3.100.1