Commit graph

98 commits

Author SHA1 Message Date
James Cammarata
c840cbaad9 Merge branch 'fork_fixes' of https://github.com/akerl/ansible into akerl-fork_fixes 2013-09-19 10:37:45 -05:00
James Cammarata
d5b96abd80 Added support for -vvvv to enable ssh connection debugging
This patch also checks specifically for a return code of 255, which
indicates an unknown SSH error of some kind. When that happens, ansible
will now recommend running with -vvvv (if not enabled) or show the
output from 'ssh -vvv' (when it is enabled)
2013-09-19 05:58:54 -05:00
Brian Harring
5b1b831cc7 Make ssh's ControlPath configurable via ansible.cfg
This shouldn't generally be needed unless you're working in an environment
that uses rediculously long FQDNs; if the name is too long, you wind up
hitting unix domain socket filepath limits enforced by ssh.
2013-09-18 15:07:07 -04:00
Les Aker
98bf473cb2 fixes for PTY handling 2013-09-16 17:44:32 -04:00
James Cammarata
3848e02959 Merge branch 'issue4022' of https://github.com/sfromm/ansible into sfromm-issue4022
Conflicts:
	lib/ansible/runner/connection_plugins/accelerate.py
2013-09-16 05:50:35 -05:00
James Cammarata
f4b3defcbf Set sudo in accelerate commands correctly
Fixes #4111
2013-09-15 20:20:22 -05:00
James Cammarata
2a47f72139 Merge pull request #4049 from mscherer/fix_no_kerberos
Fix no kerberos
2013-09-06 07:10:10 -07:00
Michael Scherer
f489702973 Also add back gssapi-keyex
While this is not currently implemented in openssh as far as I know,
there is patch floating around on the web and this may land one day
upstream.
2013-09-06 10:40:34 +02:00
Keiichi Mori
17c39b94a3 support GSSAPIAuth back
GSSAPIAuthentication has not been supported
due to PreferredAuthentications trick ( 2bdba17a85 )
2013-09-06 10:40:25 +02:00
James Cammarata
20b0dc4abd Check for an empty executable passed into the accelerate plugin
This was breaking at least the script module, so it would seem best
to check for it and set it to the default executable value
2013-09-05 15:11:26 -05:00
James Cammarata
f6e1bdabea Ensure ports are set correctly in accelerate module 2013-09-05 09:52:10 -05:00
guersam
64db327411 Fix: raise correct error in accelerate mode 2013-09-05 15:10:45 +09:00
Stephen Fromm
d704b55860 Support using paramiko to set up accelerate connection
Adds original_transport attribute to Runner to track what the original
transport was before it is changed to 'accelerate'.
If using paramiko in original_transport, uses ParamikoConnection.  If
not, falls back to SSHConnection like before.
2013-09-04 13:57:03 -07:00
James Cammarata
fff497a1ae Make sure the accelerated port is set to a sane value 2013-09-04 15:52:39 -05:00
James Cammarata
cc21e5c90c Adding hostvars to injected variables in accelerate ssh runner
Also some minor cleanup of some fb* variables and functions, which
were remnants of the old fireball2 name

Fixes #4021
2013-09-04 15:29:46 -05:00
James Cammarata
c0fecf87d1 Increase default socket timeout to 5 minutes 2013-09-04 09:47:40 -05:00
James Cammarata
2696135b3b Display error during launch of accelerated daemon
* also minor tweak to the # of retries in the connection attempt

Fixes #4012
2013-09-03 12:28:32 -05:00
James Cammarata
53c2f4c1bb Fix race condition on creating the temp directory for ControlPersist
Fixes #3943
2013-09-03 11:00:33 -05:00
James Cammarata
d69d5c294f Renaming fireball2 as 'accelerate' and removing old references 2013-08-30 13:26:27 -05:00
James Cammarata
7d3ae9fc75 Fixing a few bugs related to fireball2
* ssh port not being picked up, always uses default of 22
* forgot to 'import time' in the fireball2 connection plugin
2013-08-28 19:27:18 -05:00
James Cammarata
af1dd7075f Adding chunked file transfers to fireball2 2013-08-28 11:14:58 -05:00
James Cammarata
959138d00d Added accelerate_port to plays, and made it configurable 2013-08-28 11:14:58 -05:00
James Cammarata
167f185092 Initial support for running gather_facts through fireball2 2013-08-28 11:14:58 -05:00
James Cammarata
b45342923c Initial support for sudoable commands over fireball2
Caveats:
* requiretty must be disabled in the sudoers config
* asking for a password doesn't work yet, so any sudoers users must
  be configured with NOPASSWD
* if not starting the daemon as root, the user running the daemon
  must have sudoers entries to allow them to run the command as the
  target sudo_user
2013-08-28 11:14:58 -05:00
James Cammarata
4b552457e7 Bail out correctly if socket.recv gets nothing (indicating a closed socket) 2013-08-28 11:14:58 -05:00
James Cammarata
86f01965cd Fireball2 module will now launch in a proper tmp path 2013-08-28 11:14:58 -05:00
James Cammarata
521e14a3ad Fireball2 mode working! 2013-08-28 11:14:58 -05:00
James Cammarata
acc5d09351 Initial commit for the "fireball2" connection plugin
Still needs:
* chunked file transfer/receive
* should probably move all send/recv operations to separate
  functions to reduce code duplication
* initial connection setup over ssh? or do we handle that in runner?
2013-08-28 11:14:58 -05:00
James Cammarata
e6ad3b7792 Merge pull request #3895 from mscherer/fix_option_new_ssh
make sure ssh do not ask password
2013-08-22 10:26:54 -07:00
James Cammarata
6bf5d19506 SSH connection plugin creates ControlPersist socket files in a secure directory
Files were being created in /tmp, but will now be created in $HOME/.ansible/cp/
Addresses CVE-2013-4259: ansible uses a socket with predictable filename in /tmp
2013-08-21 11:40:46 -05:00
Michael Scherer
2bdba17a85 make sure ssh do not ask password
For some reason, ssh seems to ask for password even when
PasswordAuthentication is set to no, adding PreferredAuthentications
with the 2 options removed do the trick.
2013-08-20 22:02:37 +02:00
Michael Scherer
3aac187387 fix ssh connection plugin to work with ipv6 address
Due to various inconsistencies of ssh and sftp regarding ipv6 and
ipv4 handling, some special arguments must be passed, and the
ipv6 must be passed in a specific format.
2013-08-19 15:27:20 -05:00
Michael Vogt
89bc43cab0 support i18n on sudo failure 2013-08-10 17:56:39 -04:00
James Cammarata
ba38d6bc16 Adding support for hashed known_hosts entries
Fixes Issue #3716 - SSH known host checking needs to understand
hashed known hosts
2013-08-02 11:08:02 -05:00
Michael DeHaan
419661542b Added some pipes.quote ops to make sure paths with spaces in them are ok. 2013-07-20 18:28:11 -04:00
Michael DeHaan
e1167d6977 tweak indentation for 'make pep8' 2013-07-20 12:48:11 -04:00
Michael Vogt
9caef884e1 fail early on the wrong sudo password instead of waiting until the timeout happens 2013-07-19 10:23:00 -04:00
Michael DeHaan
8a3ea0774a Update error message since user may have specified connection type via non command line or by default. 2013-07-19 09:09:04 -04:00
Michael DeHaan
cf6e1f8db9 Make it possible to tell paramiko to not record new host keys, which can be slow with a large number of hosts.
-c ssh is preferred in most cases if you have ControlPersist available, otherwise if you are comfortable you
can turn off recording while leaving host key checking on, etc.
2013-07-05 22:06:54 -04:00
Michael DeHaan
2cb7c30834 Improve interlaced output prevention when asking for host key approval. 2013-07-04 18:17:45 -04:00
Michael DeHaan
1683d44d2e Lock around SSH connectivity to new hosts in host checking mode such that prompts for host approval
messages do not get interlaced.
2013-07-04 16:04:31 -04:00
Michael DeHaan
ffadbc520a Enable paramiko to ask whether to add keys to known hosts. 2013-07-04 14:05:41 -04:00
Michael DeHaan
9db4f7a9a6 Makes host key checking the default behavior but can be disabled in ansible.cfg or by environment variable. 2013-07-03 16:47:20 -04:00
Michael DeHaan
c265c761d0 Slight message tweak. 2013-06-30 18:27:15 -04:00
Arturas Slajus
9be93d6ac7 Better error for fireball + sudo mode. 2013-06-25 10:45:01 +03:00
Michael DeHaan
16709ecd76 Replace tab with spaces. 2013-05-19 19:26:30 -04:00
Dimos Alevizos
e96bc981ce Set paramiko's logging level
Excplicity set paramiko's logging level to WARNING.
By default it inherits ansible's DEBUG logging level (set in
callbacks.py) and fills the log file with useless debug messages.
Obviously it only applies if log_path is set in ansible.cfg
2013-05-19 19:26:30 -04:00
Maykel Moya
60f24bb077 Remove unused modules 2013-05-18 23:11:47 +02:00
Maykel Moya
f52e3dee70 Don't hardcode chroot executable path 2013-05-18 23:09:38 +02:00
Michael DeHaan
9073aa17ab Chroot also needs args/kwargs. 2013-04-05 14:50:15 -04:00