mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-05-08 06:12:51 +00:00
More fixing of become stuff in v2
This commit is contained in:
@@ -454,7 +454,7 @@ class ActionBase:
|
||||
success_key = None
|
||||
|
||||
if sudoable:
|
||||
cmd, prompt, success_key = self._connection_info.make_become_cmd(executable, cmd)
|
||||
cmd, prompt, success_key = self._connection_info.make_become_cmd(cmd, executable)
|
||||
|
||||
debug("executing the command %s through the connection" % cmd)
|
||||
rc, stdin, stdout, stderr = self._connection.exec_command(cmd, tmp, executable=executable, in_data=in_data)
|
||||
|
||||
@@ -50,27 +50,14 @@ class Connection(ConnectionBase):
|
||||
if in_data:
|
||||
raise AnsibleError("Internal Error: this module does not support optimized module pipelining")
|
||||
|
||||
# FIXME: su/sudo stuff needs to be generalized
|
||||
#if not self.runner.sudo or not sudoable:
|
||||
# if executable:
|
||||
# local_cmd = executable.split() + ['-c', cmd]
|
||||
# else:
|
||||
# local_cmd = cmd
|
||||
#else:
|
||||
# local_cmd, prompt, success_key = utils.make_become_cmd(self.runner.sudo_exe, sudo_user, executable, cmd)
|
||||
if executable:
|
||||
local_cmd = executable.split() + ['-c', cmd]
|
||||
else:
|
||||
local_cmd = cmd
|
||||
|
||||
executable = executable.split()[0] if executable else None
|
||||
|
||||
self._display.vvv("%s EXEC %s" % (self._connection_info.remote_addr, local_cmd))
|
||||
self._display.vvv("%s EXEC %s" % (self._connection_info.remote_addr, cmd))
|
||||
# FIXME: cwd= needs to be set to the basedir of the playbook
|
||||
debug("opening command with Popen()")
|
||||
p = subprocess.Popen(
|
||||
local_cmd,
|
||||
shell=isinstance(local_cmd, basestring),
|
||||
cmd,
|
||||
shell=isinstance(cmd, basestring),
|
||||
executable=executable, #cwd=...
|
||||
stdin=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE,
|
||||
|
||||
@@ -281,20 +281,7 @@ class Connection(ConnectionBase):
|
||||
# ssh_cmd += ['-6']
|
||||
ssh_cmd += [self._connection_info.remote_addr]
|
||||
|
||||
#if not (self._connection_info.sudo or self._connection_info.su):
|
||||
# prompt = None
|
||||
# if executable:
|
||||
# ssh_cmd.append(executable + ' -c ' + pipes.quote(cmd))
|
||||
# else:
|
||||
# ssh_cmd.append(cmd)
|
||||
#elif self._connection_info.su and self._connection_info.su_user:
|
||||
# su_cmd, prompt, success_key = self._connection_info.make_su_cmd(executable, cmd)
|
||||
# ssh_cmd.append(su_cmd)
|
||||
#else:
|
||||
# # FIXME: hard-coded sudo_exe here
|
||||
# sudo_cmd, prompt, success_key = self._connection_info.make_become_cmd('/usr/bin/sudo', executable, cmd)
|
||||
# ssh_cmd.append(sudo_cmd)
|
||||
|
||||
ssh_cmd.append(cmd)
|
||||
self._display.vvv("EXEC %s" % ' '.join(ssh_cmd), host=self._connection_info.remote_addr)
|
||||
|
||||
not_in_host_file = self.not_in_host_file(self._connection_info.remote_addr)
|
||||
|
||||
Reference in New Issue
Block a user