Ansible is a extra-simple Python API for doing 'remote things' over SSH.
Ansible is a extra-simple Python API for doing 'remote things' over SSH.
While Func, which I co-wrote, aspired to avoid using SSH and have it's own daemon infrastructure, Ansible aspires to be quite different and more minimal, but still able to grow more modularly over time.
While [Func](http://fedorahosted.org/func), which I co-wrote, aspired to avoid using SSH and have it's own daemon infrastructure, Ansible aspires to be quite different and more minimal, but still able to grow more modularly over time. This is based on talking to a lot of users of various tools and wishing to eliminate problems with connectivity and long running daemons, or not picking tool X because they preferred to code in Y.
Why use Ansible versus something else? (Fabric, Capistrano, mCollective, Func, SaltStack, etc?) It will have far less code, it will be more correct, and it will be the easiest thing to hack on and use you'll ever see -- regardless of your favorite language of choice.
Why use Ansible versus something else? (Fabric, Capistrano, mCollective, Func, SaltStack, etc?) It will have far less code, it will be more correct, and it will be the easiest thing to hack on and use you'll ever see -- regardless of your favorite language of choice. Want to only code plugins in bash or clojure? Ansible doesn't care. The docs will fit on one page and the source will be blindingly obvious.
Principles
Principles
==========
==========
@ -51,7 +51,10 @@ Example:
This list is further filtered by the pattern wildcard (-P) to target
This list is further filtered by the pattern wildcard (-P) to target
specific hosts. This is covered below.
specific hosts. This is covered below.
Comamnd line usage example
You can organize groups of systems by having multiple inventory
files (i.e. keeping webservers different from dbservers, etc)
Command line usage example
==========================
==========================
Run a module by name with arguments
Run a module by name with arguments
@ -66,7 +69,11 @@ API Example
The API is simple and returns basic datastructures.
The API is simple and returns basic datastructures.