'\" t
. \" Title: ansible
. \" Author: [see the "AUTHOR" section]
. \" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
. \" Date: 07/04/2012
. \" Manual: System administration commands
. \" Source: Ansible 0.6
. \" Language: English
. \"
.TH "ANSIBLE" "1" "07/04/2012" "Ansible 0\&.6" "System administration commands"
. \" -----------------------------------------------------------------
. \" * set default formatting
. \" -----------------------------------------------------------------
. \" disable hyphenation
.nh
. \" disable justification (adjust text to left margin only)
.ad l
. \" -----------------------------------------------------------------
. \" * MAIN CONTENT STARTS HERE *
. \" -----------------------------------------------------------------
.SH "NAME"
ansible \- run a command somewhere else
.SH "SYNOPSIS"
.sp
ansible <host\- pattern> [\- f forks] [\- m module_name] [\- a args]
.SH "DESCRIPTION"
.sp
\fB Ansible\fR is an extra\- simple tool/framework/API for doing \' remote things\' over SSH\& .
.SH "ARGUMENTS"
.PP
\fB host\- pattern\fR
.RS 4
A name of a group in the inventory file, a shell\- like glob selecting hosts in inventory file, or any combination of the two separated by semicolons\& .
.RE
.SH "OPTIONS"
.PP
\fB \- i\fR \fI PATH\fR , \fB \- \- inventory=\fR \fI PATH\fR
.RS 4
The
\fI PATH\fR
to the inventory hosts file, which defaults to
\fI /etc/ansible/hosts\fR \& .
.RE
.PP
\fB \- f\fR \fI NUM\fR , \fB \- \- forks=\fR \fI NUM\fR
.RS 4
Level of parallelism\& .
\fI NUM\fR
is specified as an integer, the default is 5\& .
.RE
.PP
\fB \- m\fR \fI NAME\fR , \fB \- \- module\- name=\fR \fI NAME\fR
.RS 4
Execute the module called
\fI NAME\fR \& .
.RE
.PP
\fB \- M\fR \fI DIRECTORY\fR , \fB \- \- module\- path=\fR \fI DIRECTORY\fR
.RS 4
The
\fI DIRECTORY\fR
to load modules from\& . The default is
\fI /usr/share/ansible\fR \& .
.RE
.PP
\fB \- a\fR \' \fI ARGUMENTS\fR \' , \fB \- \- args=\fR \' \fI ARGUMENTS\fR \'
.RS 4
The
\fI ARGUMENTS\fR
to pass to the module\& .
.RE
.PP
\fB \- k\fR , \fB \- \- ask\- pass\fR
.RS 4
Prompt for the SSH password instead of assuming key\- based authentication with ssh\- agent\& .
.RE
.PP
\fB \- K\fR , \fB \- \- ask\- sudo\- pass\fR
.RS 4
Prompt for the password to use with \- \- sudo, if any
.RE
.PP
\fB \- o\fR , \fB \- \- one\- line\fR
.RS 4
Try to output everything on one line\& .
.RE
.PP
\fB \- s\fR , \fB \- \- sudo\fR
.RS 4
Run the command as the user given by \- u and sudo to root\& .
.RE
.PP
\fB \- t\fR \fI DIRECTORY\fR , \fB \- \- tree=\fR \fI DIRECTORY\fR
.RS 4
Save contents in this output
\fI DIRECTORY\fR , with the results saved in a file named after each host\& .
.RE
.PP
\fB \- T\fR \fI SECONDS\fR , \fB \- \- timeout=\fR \fI SECONDS\fR
.RS 4
Connection timeout to use when trying to talk to hosts, in
\fI SECONDS\fR \& .
.RE
.PP
\fB \- B\fR \fI NUM\fR , \fB \- \- background=\fR \fI NUM\fR
.RS 4
Run commands in the background, killing the task after
\fI NUM\fR
seconds\& .
.RE
.PP
\fB \- P\fR \fI NUM\fR , \fB \- \- poll=\fR \fI NUM\fR
.RS 4
Poll a background job every
\fI NUM\fR
seconds\& . Requires
\fB \- B\fR \& .
.RE
.PP
\fB \- u\fR \fI USERNAME\fR , \fB \- \- remote\- user=\fR \fI USERNAME\fR
.RS 4
Use this remote
\fI USERNAME\fR
instead of root\& .
.RE
.PP
\fB \- U\fR \fI SUDO_USERNAME\fR , \fB \- \- sudo\- user=\fR \fI SUDO_USERNAME\fR
.RS 4
Sudo to
\fI SUDO_USERNAME\fR
instead of root\& . Implies \- \- sudo\& .
.RE
.PP
\fB \- c\fR \fI CONNECTION\fR , \fB \- \- connection=\fR \fI CONNECTION\fR
.RS 4
Connection type to use\& . Possible options are
\fI paramiko\fR
(SSH) and
\fI local\fR \& . Local is mostly useful for crontab or kickstarts\& .
.RE
.SH "INVENTORY"
.sp
Ansible stores the hosts it can potentially operate on in an inventory
file\& . The syntax is one host per line\& . Optionally, ansible can use a
line of the form base[beg:end]tail to define a set of hosts, where
[beg:end] defines a numerical range. If 'beg' is left out, it
defaults to 0\& . An example: mail[1:6].example.com, where 'head'
is 'mail', 'beg' is 1, 'end' is 6, and 'tail' is '.example.com'\& . In
addition, 'beg' can be a a string padded with zero(s) to the left. If so
provided, it acts as a formatting hint during hostname expansion. The usage
must be confirmed by having an 'end' that has the same length as 'beg',
else an exception is raised. An example: mail[001:003].example.com is to be
expanded to mail001.example.com, mail002.example.com, and
mail003.example.com\& . Groups headers are allowed and are included on their
own line, enclosed in square brackets\& .
.SH "FILES"
.sp
/etc/ansible/hosts \(em Default inventory file
.sp
/usr/share/ansible/ \(em Default module library
.SH "ENVIRONMENT"
.sp
The following environment variables may specified\& .
.sp
ANSIBLE_HOSTS \(em Override the default ansible hosts file
.sp
ANSIBLE_LIBRARY \(em Override the default ansible module library path
.SH "AUTHOR"
.sp
Ansible was originally written by Michael DeHaan\& . See the AUTHORS file for a complete list of contributors\& .
.SH "COPYRIGHT"
.sp
Copyright \(co 2012, Michael DeHaan
.sp
Ansible is released under the terms of the GPLv3 License\& .
.SH "SEE ALSO"
.sp
\fB ansible\- playbook\fR (1)
.sp
Extensive documentation as well as IRC and mailing list info is available on the ansible home page: https://ansible\& .github\& .com/