I've created a role, provision_docker 
<https://github.com/chrismeyersfsu/provision_docker>, to help test Ansible 
roles and playbooks. It's simple 
<https://github.com/chrismeyersfsu/provision_docker/blob/master/tasks/main.yml> 
and leverages Docker (not vms).

*Highlights:*

   - Best practice directory structure 
   
<https://github.com/chrismeyersfsu/provision_docker#recommended-role--testing-directory-structure>
   - Test roles/playbooks using docker (spin up multiple hosts [1] 
   
<https://github.com/chrismeyersfsu/role-install_mongod/blob/master/test/main.yml>
   )
   - Plays nicely with TravisCI, (see example repos below [1] 
   
<https://github.com/chrismeyersfsu/role-install_mongod/blob/master/.travis.yml>
    [2] 
   <https://github.com/chrismeyersfsu/ansible_test_deps/blob/master/.travis.yml>
    [3] 
   <https://github.com/chrismeyersfsu/role-iptables/blob/master/.travis.yml>
    [4] 
   <https://github.com/chrismeyersfsu/role-devstack/blob/master/.travis.yml>
   )
   - Curated Dockerfile's 
   <https://github.com/chrismeyersfsu/provision_docker/tree/master/files> 
   centos 6/7 ubuntu 12.04/14.04 images w/ init system and ssh enabled

*Example Uses:*

   1. HA mongo chrismeyersfsu/role-install_mongod 
   <https://github.com/chrismeyersfsu/role-install_mongod/tree/master/test>
   2. Ansible hacking/development env bringup 
   chrismeyersfsu/ansible_test_deps 
   <https://github.com/chrismeyersfsu/ansible_test_deps/tree/master/test>
   3. iptables chrismeyersfsu/role-iptables 
   <https://github.com/chrismeyersfsu/role-iptables/tree/master/test>
   4. devstack (openstack on a single machine) chrismeyersfsu/role-devstack 
   <https://github.com/chrismeyersfsu/role-devstack/tree/master/test>
   

Feedback welcome!

<https://i.imgflip.com/wjpkl.jpg>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/ef574046-b834-4cf4-9ddb-b1f098b3e882%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to