ANSIBLE-CONSOLE(1)

NAME
ansible-console - REPL console for executing Ansible tasks.

SYNOPSIS

usage: ansible-console [-h] [--version] [-v] [-b]
    [--become-method BECOME_METHOD] [--become-user BECOME_USER] [-K | --become-password-file BECOME_PASSWORD_FILE] [-i INVENTORY] [--list-hosts] [-l SUBSET] [--flush-cache] [--private-key PRIVATE_KEY_FILE] [-u REMOTE_USER] [-c CONNECTION] [-T TIMEOUT] [--ssh-common-args SSH_COMMON_ARGS] [--sftp-extra-args SFTP_EXTRA_ARGS] [--scp-extra-args SCP_EXTRA_ARGS] [--ssh-extra-args SSH_EXTRA_ARGS] [-k | --connection-password-file CONNECTION_PASSWORD_FILE] [-C] [-D] [--vault-id VAULT_IDS] [-J | --vault-password-file VAULT_PASSWORD_FILES] [-f FORKS] [-M MODULE_PATH] [--playbook-dir BASEDIR] [-e EXTRA_VARS] [--task-timeout TASK_TIMEOUT] [--step] [pattern]

DESCRIPTION

A REPL that allows for running ad-hoc tasks against a chosen inventory from a nice shell with built-in tab completion (based on dominis' ansible-shell).

It supports several commands, and you can modify its configuration at runtime:

•   cd [pattern]: change host/group (you can use host patterns eg.: app*.dc*:!app01*)

•   list: list available hosts in the current path

•   list groups: list groups included in the current path

•   become: toggle the become flag

•   !: forces shell module instead of the ansible module (!yum update -y)

•   verbosity [num]: set the verbosity level

•   forks [num]: set the number of forks

•   become_user [user]: set the become_user

•   remote_user [user]: set the remote_user

•   become_method [method]: set the privilege escalation method

•   check [bool]: toggle check mode

•   diff [bool]: toggle diff mode

•   timeout [integer]: set the timeout of tasks in seconds (0 to disable)

•   help [command/module]: display documentation for the command or module

•   exit: exit ansible-console

COMMON OPTIONS
host pattern

--become-method 'BECOME_METHOD' privilege escalation method to use (default=sudo), use ansible-doc -t become -l to list valid choices.

--become-password-file 'BECOME_PASSWORD_FILE', --become-pass-file 'BECOME_PASSWORD_FILE' Become password file

--become-user 'BECOME_USER' run operations as this user (default=root)

--connection-password-file 'CONNECTION_PASSWORD_FILE', --conn-pass-file 'CONNECTION_PASSWORD_FILE' Connection password file

--flush-cache clear the fact cache for every host in inventory

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

--playbook-dir 'BASEDIR' Since this tool does not use playbooks, use this as a substitute playbook directory. This sets the relative path for many features including roles/ group_vars/ etc.

--private-key 'PRIVATE_KEY_FILE', --key-file 'PRIVATE_KEY_FILE' use this file to authenticate the connection

--scp-extra-args 'SCP_EXTRA_ARGS' specify extra arguments to pass to scp only (e.g. -l)

--sftp-extra-args 'SFTP_EXTRA_ARGS' specify extra arguments to pass to sftp only (e.g. -f, -l)

--ssh-common-args 'SSH_COMMON_ARGS' specify common arguments to pass to sftp/scp/ssh (e.g. ProxyCommand)

--ssh-extra-args 'SSH_EXTRA_ARGS' specify extra arguments to pass to ssh only (e.g. -R)

--step one-step-at-a-time: confirm each task before running

--task-timeout 'TASK_TIMEOUT' set task timeout limit in seconds, must be positive integer.

--vault-id the vault identity to use. This argument may be specified multiple times.

--vault-password-file, --vault-pass-file vault password file

--version show program's version number, config file location, configured module search path, module location, executable location and exit

-C, --check don't make any changes; instead, try to predict some of the changes that may occur

-D, --diff when changing (small) files and templates, show the differences in those files; works great with --check

-J, --ask-vault-password, --ask-vault-pass ask for vault password

-K, --ask-become-pass ask for privilege escalation password

-M, --module-path prepend colon-separated path(s) to module library (default={{ ANSIBLE_HOME ~ "/plugins/modules:/usr/share/ansible/plugins/modules" }}). This argument may be specified multiple times.

-T 'TIMEOUT', --timeout 'TIMEOUT' override the connection timeout in seconds (default depends on connection)

-b, --become run operations with become (does not imply password prompting)

-c 'CONNECTION', --connection 'CONNECTION' connection type to use (default=ssh)

-e, --extra-vars set additional variables as key=value or YAML/JSON, if filename prepend with @. This argument may be specified multiple times.

-f 'FORKS', --forks 'FORKS' specify number of parallel processes to use (default=5)

-h, --help show this help message and exit

-i, --inventory, --inventory-file specify inventory host path or comma separated host list. This argument may be specified multiple times.

-k, --ask-pass ask for connection password

-l 'SUBSET', --limit 'SUBSET' further limit selected hosts to an additional pattern

-u 'REMOTE_USER', --user 'REMOTE_USER' connect as this user (default=None)

-v, --verbose Causes Ansible to print more debug messages. Adding multiple -v will increase the verbosity, the builtin plugins currently evaluate up to -vvvvvv. A reasonable level to start is -vvv, connection debugging might require -vvvv. This argument may be specified multiple times.

ARGUMENTS

host-pattern

A name of a group in the inventory, a shell-like glob selecting hosts in inventory or any combination of the two separated by commas.

INVENTORY

Ansible stores the hosts it can potentially operate on in an inventory. This can be an YAML file, ini-like file, a script, directory, list, etc. For additional options, see the documentation on <https://docs.ansible.com/> .

ENVIRONMENT

The following environment variables may be specified.

ANSIBLE_INVENTORY -- Override the default ansible inventory sources

ANSIBLE_LIBRARY -- Override the default ansible module library path

ANSIBLE_CONFIG -- Specify override location for the ansible config file

Many more are available for most options in ansible.cfg

For a full list check <https://docs.ansible.com/> . or use the ansible-config command.

FILES

/etc/ansible/hosts -- Default inventory file

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

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

./ansible.cfg -- Local config file (in current working directory) assumed to be 'project specific' and overrides the rest if present.

As mentioned above, the ANSIBLE_CONFIG environment variable will override all others.

AUTHOR

Ansible was originally written by Michael DeHaan.

COPYRIGHT

Copyright © 2018 Red Hat, Inc | Ansible. Ansible is released under the terms of the GPLv3 license.

SEE ALSO

ansible (1), ansible-config (1), ansible-doc (1), ansible-galaxy (1), ansible-inventory (1), ansible-playbook (1), ansible-pull (1), ansible-vault (1)

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