ansible/docsite/latest/rst/contrib.rst
Michael DeHaan d706aca82b Merge
2013-06-09 13:55:58 -04:00

6.8 KiB

Ansible Resources

User contributed playbooks, modules, and articles. This is a small curated list, but growing. Everyone is encouraged to add to this document, just edit it on Github and send a pull request!

Ansible Modules

Ansible modules are a way of adding new client-side logic to ansible. They can be written in any language. Generally our goal is to include most modules in core ("batteries included!"), though a few may remain outside of core depending on use cases and implementations.

All python modules (especially all submitted to core) should use the common "AnsibleModule" class to dramatically reduce the amount of boilerplate code required.

Not all modules above may take advantage of this feature. See the official documentation for more details.

Selected Playbooks

Playbooks are Ansible's configuration management language. It should be easy to write your own from scratch for most applications (we keep the language simple for EXACTLY that reason), but it can be helpful to look at what others have done for reference and see what is possible.

The ansible-examples repo on github contains some examples of best-practices Ansible content deploying some full stack workloads:

And here are some other community-developed playbooks. Feel free to submit a pull request to the docs to add your own.

Callbacks and Plugins

The Ansible project has a whole repo devoted to extending ansible with new connection types, logging/event callbacks, and inventory data storage. Talk to Cobbler and EC2, tweak the way things are logged, or even add sound effects.

Scripts And Misc

Ansible isn't just a program, it's also an API. Here's some examples of some clever integrations with the "Runner" and also Playbook APIs, and integrations with other interesting pieces of software.

Blogs, Videos & Articles

Disclaimer

Modules and playbooks here may not be using the latest in Ansible features. When in doubt to the features of a particular version of Ansbile, always consult ansible.cc and in particular see Best Practices for some tips and tricks that may be useful.

Ansible is (C) 2012, Michael DeHaan and others and is available under the GPLv3 license. Content here is as specified by individual contributors.