# Implementing custom modules

**URL:** <https://forum.ansible.com/t/implementing-custom-modules/14957>\
**Category:** Ansible Project\
**Created:** [April 7, 2014, 4:22pm UTC](https://forum.ansible.com/t/implementing-custom-modules/14957 "2014-04-07T16:22:48Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Marc\_Tardif](https://avatars.discourse-cdn.com/v4/letter/m/ecc23a/32.png) [@Marc\_Tardif](https://forum.ansible.com/u/Marc_Tardif)\
**Post date:** [April 7, 2014, 4:22pm UTC](https://forum.ansible.com/t/implementing-custom-modules/14957/1 "2014-04-07T16:22:48Z")

</div>

Hi folks,

I need a module like wait\_for that also checks for something useful  
returned by a URL. The reason is that a port might be open but the  
service might not be returning anything useful yet.

So, I'd like to know how to implement a custom module that resides outside  
the ansible project so that I don't have to either fork the project or copy  
my module into the project. In other words, I want to extend ansible with  
a custom module.

---

<div class="post-metadata">

**Author:** ![Marc\_Tardif](https://avatars.discourse-cdn.com/v4/letter/m/ecc23a/32.png) [@Marc\_Tardif](https://forum.ansible.com/u/Marc_Tardif)\
**Post date:** [April 7, 2014, 9:39pm UTC](https://forum.ansible.com/t/implementing-custom-modules/14957/2 "2014-04-07T21:39:34Z")

</div>

Nevermind folks, I just discovered the Bundling Ansible Modules With  
Playbooks section from the Best Practices documentation:

&nbsp;&nbsp;[http://docs.ansible.com/playbooks\_best\_practices.html#bundling-ansible-modules-with-playbooks](http://docs.ansible.com/playbooks_best_practices.html#bundling-ansible-modules-with-playbooks)

\* Marc Tardif \<marc@interunion.ca\> [2014-04-07 12:22 -0400]:

---

<div class="post-metadata">

**Author:** ![Michael\_DeHaan1](https://avatars.discourse-cdn.com/v4/letter/m/5e9695/32.png) [@Michael\_DeHaan1](https://forum.ansible.com/u/Michael_DeHaan1)\
**Post date:** [April 9, 2014, 1:55pm UTC](https://forum.ansible.com/t/implementing-custom-modules/14957/3 "2014-04-09T13:55:09Z")

</div>

You might want to take a look at: [http://docs.ansible.com/playbooks\_loops.html#id19](http://docs.ansible.com/playbooks_loops.html#id19)
