ANSIBLE-PLAYBOOK(1)

NAME
ansible-playbook - run an ansible playbook

SYNOPSIS

ansible-playbook <filename.yml> ... [options]

DESCRIPTION

Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool used to run them. See the project home page (link below) for more information.

ARGUMENTS

filename.yml
    The names of one or more YAML format files to run as ansible playbooks.

OPTIONS

-v, --verbose
    Verbose mode, more output from successful actions will be shown. Give up to three times for more output.

-i PATH, --inventory=PATH
    The PATH to the inventory hosts file, which defaults to /etc/ansible/hosts.

-M DIRECTORY, --module-path=DIRECTORY
    The DIRECTORY search path to load modules from. The default is /usr/share/ansible. This can also be set with the ANSIBLE_LIBRARY environment variable.

-e VARS, --extra-vars=VARS
    Extra variables to inject into a playbook, in key=value key=value format or as quoted JSON (hashes and arrays). To load variables from a file, specify the file preceded by @ (e.g. @vars.yml).

-f NUM, --forks=NUM
    Level of parallelism. NUM is specified as an integer, the default is 5.

-k, --ask-pass
    Prompt for the SSH password instead of assuming key-based authentication with ssh-agent.

-K, --ask-sudo-pass
    Prompt for the password to use for playbook plays that request sudo access, if any.

-U, SUDO_USER, --sudo-user=SUDO_USER
    Desired sudo user (default=root).

-t, TAGS, --tags=TAGS
    Only run plays and tasks tagged with these values.

--skip-tags=SKIP_TAGS
    Only run plays and tasks whose tags do not match these values.

--syntax-check
    Look for syntax errors in the playbook, but don’t run anything

--check
    Do not make any changes on the remote system, but test resources to see what might have changed. Note this can not scan all possible resource types and is only a simulation.

--diff
    When changing any templated files, show the unified diffs of how they changed. When used with --check, shows how the files would have changed if --check were not used.

-T SECONDS, --timeout=SECONDS
    Connection timeout to use when trying to talk to hosts, in SECONDS.

-s, --sudo
    Force all plays to use sudo, even if not marked as such.

-u USERNAME, --user=USERNAME
    Use this remote user name on playbook steps that do not indicate a user name to run as.

-c CONNECTION, --connection=CONNECTION
    Connection type to use. Possible options are paramiko (SSH), ssh, and local. local is mostly useful for crontab or kickstarts.

-l SUBSET, --limit=SUBSET
    Further limits the selected host/group patterns.

--list-hosts
    Outputs a list of matching hosts; does not execute anything else.

ENVIRONMENT

The following environment variables may be specified.

ANSIBLE_HOSTS — Override the default ansible hosts file

ANSIBLE_LIBRARY — Override the default ansible module library path

FILES

/etc/ansible/hosts — Default inventory file

/usr/share/ansible/ — Default module library

/etc/ansible/ansible.cfg — Config file, used if present

~/.ansible.cfg — User config file, overrides the default config if present

AUTHOR

Ansible was originally written by Michael DeHaan. See the AUTHORS file for a complete list of contributors.

COPYRIGHT

Copyright © 2012, Michael DeHaan

Ansible is released under the terms of the GPLv3 License.

SEE ALSO

ansible(1), ansible-pull(1), ansible-doc(1)

Extensive documentation is available in the documentation site: http://docs.ansible.com. IRC and mailing list info can be found in file CONTRIBUTING.md, available in: https://github.com/ansible/ansible

AUTHOR

:doctype:manpage
    Author.