Explicitly execute /bin/sh versus $SHELL because some folks have very incompatible/weird shells. We do not

execute modules through the shell, this is only for basic ops, so should be sufficient.
This commit is contained in:
Michael DeHaan
2012-10-25 23:00:07 -04:00
parent ff787146d1
commit 5e2c2564bc
2 changed files with 3 additions and 3 deletions

View File

@@ -71,7 +71,7 @@ class Connection(object):
# the -p option.
randbits = ''.join(chr(random.randint(ord('a'), ord('z'))) for x in xrange(32))
prompt = '[sudo via ansible, key=%s] password: ' % randbits
sudocmd = 'sudo -k && sudo -p "%s" -u %s "$SHELL" -c %s' % (
sudocmd = 'sudo -k && sudo -p "%s" -u %s /bin/sh -c %s' % (
prompt, sudo_user, pipes.quote(cmd))
sudo_output = ''
ssh_cmd.append(sudocmd)