# How to email task's status

**URL:** <https://forum.ansible.com/t/how-to-email-tasks-status/12014>\
**Category:** Ansible Project\
**Created:** [October 22, 2012, 2:48pm UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014 "2012-10-22T14:48:08Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![Edgars](https://avatars.discourse-cdn.com/v4/letter/e/f17d59/32.png) [@Edgars](https://forum.ansible.com/u/Edgars)\
**Post date:** [October 22, 2012, 2:48pm UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/1 "2012-10-22T14:48:08Z")

</div>

I want to send email with task exit status after it is completed:

Here is my playbook:

> * * *
> 
> - name: deploy cfg  
> hosts: all  
> user: admin  
> sudo: True  
> tasks:
> - name: copy cfg  
> action: copy src=/var/repo/file.cfg dest=/etc/file.cfg owner=root group=root mode=755  
> register: status

> 

> - name: Send status report  
> hosts: smtprelaysrv  
> user: admin  
> sudo: True  
> tasks:
> - name: Send status report  
> action: mail subject=‘Ansible report’ to=admin from=ansible-report@localhost body=‘Ansible task has completed with status ${status.rc}’

However it seems that mail module does not understand variable ${status.rc} nor ${status}.

Am I doing something wrong?

Thanks,  
Edgars

---

<div class="post-metadata">

**Author:** ![Michael\_DeHaan](https://avatars.discourse-cdn.com/v4/letter/m/c4cdca/32.png) [@Michael\_DeHaan](https://forum.ansible.com/u/Michael_DeHaan)\
**Post date:** [October 22, 2012, 2:48pm UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/2 "2012-10-22T14:48:59Z")

</div>

Mail module shouldn't even need to care, as templating is generic

Can you describe what behavior you are seeing?

---

<div class="post-metadata">

**Author:** ![Edgars](https://avatars.discourse-cdn.com/v4/letter/e/f17d59/32.png) [@Edgars](https://forum.ansible.com/u/Edgars)\
**Post date:** [October 22, 2012, 2:52pm UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/3 "2012-10-22T14:52:59Z")

</div>

I am receiving email with body:

> Ansible task has completed with status ${status.rc}

What I want to is:

---

<div class="post-metadata">

**Author:** ![Edgars](https://avatars.discourse-cdn.com/v4/letter/e/f17d59/32.png) [@Edgars](https://forum.ansible.com/u/Edgars)\
**Post date:** [October 23, 2012, 7:35am UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/4 "2012-10-23T07:35:32Z")

</div>

No, double-quotes does not work either.

---

<div class="post-metadata">

**Author:** ![Dag\_Wieers](https://avatars.discourse-cdn.com/v4/letter/d/45deac/32.png) [@Dag\_Wieers](https://forum.ansible.com/u/Dag_Wieers)\
**Post date:** [October 23, 2012, 8:22am UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/5 "2012-10-23T08:22:18Z")

</div>

It works fine for me:

---

<div class="post-metadata">

**Author:** ![Edgars](https://avatars.discourse-cdn.com/v4/letter/e/f17d59/32.png) [@Edgars](https://forum.ansible.com/u/Edgars)\
**Post date:** [October 23, 2012, 9:20am UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/6 "2012-10-23T09:20:37Z")

</div>

Yes, it works that way. So it seems that variables are not global in whole playbook!? Say, if I have such playbook structure:

> * * *
> 
> - name: Deploy  
> hosts: all  
> tasks:
> - action: command uptime  
> register: status

> 

> - name: Send report  
> hosts: smtp\_relay\_server
> 
> tasks:
> 
> - action: mail subject=${status}

It does not pass variable from one host block to another?

---

<div class="post-metadata">

**Author:** ![Michael\_DeHaan](https://avatars.discourse-cdn.com/v4/letter/m/c4cdca/32.png) [@Michael\_DeHaan](https://forum.ansible.com/u/Michael_DeHaan)\
**Post date:** [October 23, 2012, 11:23am UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/7 "2012-10-23T11:23:53Z")

</div>

Perhaps you were trying to access it from a different host record, or  
the groups in one did not always contain all of the other.

---

<div class="post-metadata">

**Author:** ![Edgars](https://avatars.discourse-cdn.com/v4/letter/e/f17d59/32.png) [@Edgars](https://forum.ansible.com/u/Edgars)\
**Post date:** [October 23, 2012, 12:58pm UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/8 "2012-10-23T12:58:20Z")

</div>

I am not sure if I understood you. Yes, i am trying to access that variable from different host record. Doesn’t it work that way?

---

<div class="post-metadata">

**Author:** ![Michael\_DeHaan](https://avatars.discourse-cdn.com/v4/letter/m/c4cdca/32.png) [@Michael\_DeHaan](https://forum.ansible.com/u/Michael_DeHaan)\
**Post date:** [October 23, 2012, 12:59pm UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/9 "2012-10-23T12:59:40Z")

</div>

I'd suggest stopping by IRC.

---

<div class="post-metadata">

**Author:** ![Edgars](https://avatars.discourse-cdn.com/v4/letter/e/f17d59/32.png) [@Edgars](https://forum.ansible.com/u/Edgars)\
**Post date:** [October 23, 2012, 3:19pm UTC](https://forum.ansible.com/t/how-to-email-tasks-status/12014/10 "2012-10-23T15:19:27Z")

</div>

I am there, asked already twice, but I guess my questions “lost in translation” 🙂
