# using $hostvars in a custom module

**URL:** <https://forum.ansible.com/t/using-hostvars-in-a-custom-module/12168>\
**Category:** Ansible Project\
**Created:** [December 28, 2012, 1:36am UTC](https://forum.ansible.com/t/using-hostvars-in-a-custom-module/12168 "2012-12-28T01:36:36Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![James\_Martin](https://avatars.discourse-cdn.com/v4/letter/j/f14d63/32.png) [@James\_Martin](https://forum.ansible.com/u/James_Martin)\
**Post date:** [December 28, 2012, 1:36am UTC](https://forum.ansible.com/t/using-hostvars-in-a-custom-module/12168/1 "2012-12-28T01:36:36Z")

</div>

Is it possible to use $hostvars in a custom module? I tried passing it to my custom module and was told that the module only wanted key/value pairs.

Thanks,

James

---

<div class="post-metadata">

**Author:** ![Brian\_Coca1](https://avatars.discourse-cdn.com/v4/letter/b/278dde/32.png) [@Brian\_Coca1](https://forum.ansible.com/u/Brian_Coca1)\
**Post date:** [December 28, 2012, 2:48pm UTC](https://forum.ansible.com/t/using-hostvars-in-a-custom-module/12168/2 "2012-12-28T14:48:29Z")

</div>

I believe modules already get the host variables (inject dictionary IIRC).

---

<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:** [December 29, 2012, 1:12am UTC](https://forum.ansible.com/t/using-hostvars-in-a-custom-module/12168/3 "2012-12-29T01:12:25Z")

</div>

If you mean a normal 'remote' module, they don't -- they only get what  
is explicitly passed to them on the module line.

If you are writing a server side module, they have access to all of that info.

---

<div class="post-metadata">

**Author:** ![James\_Martin](https://avatars.discourse-cdn.com/v4/letter/j/f14d63/32.png) [@James\_Martin](https://forum.ansible.com/u/James_Martin)\
**Post date:** [December 29, 2012, 1:22am UTC](https://forum.ansible.com/t/using-hostvars-in-a-custom-module/12168/4 "2012-12-29T01:22:56Z")

</div>

> \> I believe modules already get the host variables (inject dictionary  
> IIRC).
> 
> If you mean a normal 'remote' module, they don't -- they only get what  
> is explicitly passed to them on the module line.

I'm dealing with a normal 'remote' module in this case. How do I pass  
$hostvars to the remote module?

> If you are writing a server side module, they have access to all of that  
> info.
> 
> --
> 
> Thanks,

James

---

<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:** [December 29, 2012, 2:20am UTC](https://forum.ansible.com/t/using-hostvars-in-a-custom-module/12168/5 "2012-12-29T02:20:14Z")

</div>

You can't. But you can do stuff like explicitly passing some  
variables down, ex:

action: foo asdf=$asdf
