Commit graph

29 commits

Author SHA1 Message Date
Abhijit Menon-Sen
3ad9b4cba6 Rework additional ssh argument handling
Now we have the following ways to set additional arguments:

1. [ssh_connection]ssh_args in ansible.cfg: global setting, prepended to
   every command line for ssh/scp/sftp. Overrides default ControlPersist
   settings.
2. ansible_ssh_common_args inventory variable. Appended to every command
   line for ssh/scp/sftp. Used in addition to ssh_args, if set above, or
   the default settings.
3. ansible_{sftp,scp,ssh}_extra_args inventory variables. Appended to
   every command line for the relevant binary only. Used in addition to
   #1 and #2, if set above, or the default settings.
3. Using the --ssh-common-args or --{sftp,scp,ssh}-extra-args command
   line options (which are overriden by #2 and #3 above).

This preserves backwards compatibility (for ssh_args in ansible.cfg),
but also permits global settings (e.g. ProxyCommand via _common_args) or
ssh-specific options (e.g. -R via ssh_extra_args).

Fixes #12576
2015-10-02 21:26:25 +05:30
James Cammarata
6650ba7654 Squashed commit of the following:
commit 9921bb9d20
Author: Abhijit Menon-Sen <ams@2ndQuadrant.com>
Date:   Mon Aug 10 20:19:44 2015 +0530

    Document --ssh-extra-args command-line option

commit 8b25595e7b
Author: Abhijit Menon-Sen <ams@2ndQuadrant.com>
Date:   Thu Aug 13 13:24:57 2015 +0530

    Don't disable GSSAPI/Pubkey authentication when using --ask-pass

    This commit is based on a bug report and PR by kolbyjack (#6846) which
    was subsequently closed and rebased as #11690. The original problem was:

        «The password on the delegated host is different from the one I
        provided on the command line, so it had to use the pubkey, and the
        main host doesn't have a pubkey on it yet, so it had to use the
        password.»

    (This commit is revised and included here because #11690 would conflict
    with the changes in #11908 otherwise.)

    Closes #11690

commit 119d032389
Author: Abhijit Menon-Sen <ams@2ndQuadrant.com>
Date:   Thu Aug 13 11:16:42 2015 +0530

    Be more explicit about why SSH arguments are added

    This adds vvvvv log messages that spell out in detail where each SSH
    command-line argument is obtained from.

    Unfortunately, we can't be sure if, say, self._play_context.remote_user
    is obtained from ANSIBLE_REMOTE_USER in the environment, remote_user in
    ansible.cfg, -u on the command line, or an ansible_ssh_user setting in
    the inventory or on a task or play. In some cases, e.g. timeout, we
    can't even be sure if it was set by the user or just a default.

    Nevertheless, on the theory that at five v's you can use all the hints
    available, I've mentioned the possible sources in the log messages.

    Note that this caveat applies only to the arguments that ssh.py adds by
    itself. In the case of ssh_args and ssh_extra_args, we know where they
    are from, and say so, though we can't say WHERE in the inventory they
    may be set (e.g. in host_vars or group_vars etc.).

commit b605c285ba
Author: Abhijit Menon-Sen <ams@2ndQuadrant.com>
Date:   Tue Aug 11 15:19:43 2015 +0530

    Add a FAQ entry about ansible_ssh_extra_args

commit 49f8edd035
Author: Abhijit Menon-Sen <ams@2ndQuadrant.com>
Date:   Mon Aug 10 20:48:50 2015 +0530

    Allow ansible_ssh_args to be set as an inventory variable

    Before this change, ssh_args could be set only in the [ssh_connection]
    section of ansible.cfg, and was applied to all hosts. Now it's possible
    to set ansible_ssh_args as an inventory variable (directly, or through
    group_vars or host_vars) to selectively override the global setting.

    Note that the default ControlPath settings are applied only if ssh_args
    is not set, and this is true of ansible_ssh_args as well. So if you want
    to override ssh_args but continue to set ControlPath, you'll need to
    repeat the appropriate options when setting ansible_ssh_args.

    (If you only need to add options to the default ssh_args, you may be
    able to use the ansible_ssh_extra_args inventory variable instead.)

commit 37c1a5b679
Author: Abhijit Menon-Sen <ams@2ndQuadrant.com>
Date:   Mon Aug 10 19:42:30 2015 +0530

    Allow overriding ansible_ssh_extra_args on the command-line

    This patch makes it possible to do:

        ansible somehost -m setup \
            --ssh-extra-args '-o ProxyCommand="ssh -W %h:%p -q user@bouncer.example.com"'

    This overrides the inventory setting, if any, of ansible_ssh_extra_args.

    Based on a patch originally by @Richard2ndQuadrant.

commit b023ace8a8
Author: Abhijit Menon-Sen <ams@2ndQuadrant.com>
Date:   Mon Aug 10 19:06:19 2015 +0530

    Add an ansible_ssh_extra_args inventory variable

    This can be used to configure a per-host or per-group ProxyCommand to
    connect to hosts through a jumphost, e.g.:

        inventory:
            [gatewayed]
            foo ansible_ssh_host=192.0.2.1

        group_vars/gatewayed.yml:
            ansible_ssh_extra_args: '-o ProxyCommand="ssh -W %h:%p -q bounceuser@gateway.example.com"'

    Note that this variable is used in addition to any ssh_args configured
    in the [ssh_connection] section of ansible.cfg (so you don't need to
    repeat the ControlPath settings in ansible_ssh_extra_args).
2015-09-03 11:26:56 -04:00
Damian Gerow
1c5611100e Add become support for OpenBSD doas 2015-08-17 21:31:18 -04:00
snetting
4693531851 update ansible man1 2015-07-22 09:56:50 +01:00
Till Maas
8ad2eac7e1 Mention ANSIBLE_INVENTORY
Support for ANSIBLE_HOSTS is faded out, see commit
c73254543a, therefore do not mention it in
the man pages.
2015-05-05 16:54:32 +02:00
Chris AtLee
1bf8f78b18 Add --list-hosts to man pages.
Fixes #9574
2015-02-27 08:38:45 -05:00
Maykel Moya
0b1320e48c Update doc, irc and mailing list information in manpages input 2014-02-12 16:02:33 +01:00
Maykel Moya
06beddfe68 Fix documentation url 2014-02-11 16:55:10 +01:00
Maykel Moya
0b44a3e54f Minor grammar fix in manpages 2014-02-11 16:50:10 +01:00
Ray
a66f0462cd minor correction
--remote-user= does not work:
 ansible: error: no such option: --remote-user

--user= does. Updating docs
2013-10-31 17:56:52 -05:00
Michael Vogt
d7b5b47efe improve wording, thanks to Michael DeHaan 2013-05-25 08:53:20 +02:00
Michael Vogt
22b0cf9275 use the same text for -M in ansible.1 and ansible-playbook.1 2013-05-23 21:34:33 +02:00
Michael Vogt
8338e75463 document in the man-page that {ansible,ansible-playbook} -M can also be overriden with the ANSIBLE_LIBRARY environment 2013-05-23 21:22:58 +02:00
Yves Dorfsman
8b10cc5946 Mention of ansible-doc and man pages for modules. 2013-03-18 20:31:42 -06:00
Oscar Korz
ba807ed5a8 Correct -u description in ansible man page 2013-02-09 19:24:53 -08:00
Gregory Duchatelet
ba4f71db27 Moved docs about "--limit=~REGEX" from man page to asciidoc. 2012-12-04 21:08:29 +01:00
Fabian Arrotin
96770a3057 - Fixed some typos for the ansible config file
- added the ANSIBLE_CONFIG environment variable
2012-10-30 17:08:12 +01:00
Michael DeHaan
70ed560fb3 Add FILES to manpage 2012-10-12 17:37:30 -04:00
Jan-Piet Mens
a9dad7f3bd remove duplicate private-key option from manpage 2012-10-05 09:18:19 +02:00
Michael DeHaan
4920533c05 Add --limit to manpage 2012-09-06 18:42:18 -04:00
Tim Bielawa
698bcaa581 Fully document the -v option. 2012-08-15 10:13:38 -04:00
Tim Bielawa
6d9e873724 Add some docs/examples
Add a basic ansible-pull man page.

Add the example playbooks/scripts to the RPM package.

Closes #841
2012-08-14 13:05:44 -04:00
Tim Bielawa
bf7e83bea6 Update man pages and the message for an exception. 2012-08-09 10:22:43 -04:00
Michael DeHaan
8fa4dc3920 Small change to previous patch, make ranges of hosts inclusive. 2012-07-24 20:10:05 -04:00
Michael DeHaan
efac68b636 Remove the -D module debug flag, which no longer is functional due to sudo pty requirements, and replace with -v/--verbose.
This flag will show playbook output from non-failing commands.  -v is also added to /usr/bin/ansible, but not  yet used.

I also gutted some internals code dealing with 'invocations' which allowed the callback to know what module invoked
it.  This is not something 0.5 does or needed, so callbacks have been simplified.
2012-06-19 21:57:43 -04:00
Michael DeHaan
eda2333b24 Update manpage to mention -U (--sudo-user). 2012-05-06 18:32:43 -04:00
Michael DeHaan
36e454c52f Because paramiko using a pty can't distinguish stderr and stdout, remove handling that
treated -D as a way to show stderr, and make sure modules don't include things on stderr.
Update docs and test module script to come into line.
2012-04-27 01:25:38 -04:00
Tim Bielawa
621dc83ac2 Fix man page option description indentation. 2012-04-17 11:39:51 -04:00
Tim Bielawa
d43cf592eb Renaming asciidoc sources to .in.
Change manpages to build from *.in and add comments about how the make
targets work.
2012-04-17 10:31:40 -04:00
Renamed from docs/man/man1/ansible.1.asciidoc (Browse further)