Merge pull request #437 from dagwieers/mktemp-vanish
Get rid of mktemp dependency to support AIX
This commit is contained in:
commit
634cf9aaba
1 changed files with 10 additions and 12 deletions
|
@ -639,7 +639,7 @@ class Runner(object):
|
||||||
cache = self.setup_cache.get(host, {})
|
cache = self.setup_cache.get(host, {})
|
||||||
module_name = utils.template(self.module_name, cache, self.setup_cache)
|
module_name = utils.template(self.module_name, cache, self.setup_cache)
|
||||||
|
|
||||||
tmp = self._get_tmp_path(conn)
|
tmp = self._make_tmp_path(conn)
|
||||||
result = None
|
result = None
|
||||||
|
|
||||||
if self.module_name == 'copy':
|
if self.module_name == 'copy':
|
||||||
|
@ -691,22 +691,20 @@ class Runner(object):
|
||||||
|
|
||||||
# *****************************************************
|
# *****************************************************
|
||||||
|
|
||||||
def _get_tmp_path(self, conn):
|
def _make_tmp_path(self, conn):
|
||||||
''' gets a temporary path on a remote box '''
|
''' make and return a temporary path on a remote box '''
|
||||||
|
|
||||||
basetmp = C.DEFAULT_REMOTE_TMP
|
basetmp = C.DEFAULT_REMOTE_TMP
|
||||||
if self.remote_user == 'root':
|
if self.remote_user == 'root':
|
||||||
basetmp ="/var/tmp"
|
basetmp = "/var/tmp"
|
||||||
cmd = "mktemp -d %s/ansible.XXXXXX" % basetmp
|
basetmp = os.path.join(basetmp, 'ansible-%s-%s' % (time.time(), random.randint(0, 2**48)))
|
||||||
|
|
||||||
|
cmd = "mkdir -p %s" % basetmp
|
||||||
if self.remote_user != 'root':
|
if self.remote_user != 'root':
|
||||||
cmd = "mkdir -p %s && %s" % (basetmp, cmd)
|
cmd += " && chmod a+x %s" % basetmp
|
||||||
|
|
||||||
result = self._low_level_exec_command(conn, cmd, None, sudoable=False)
|
result = self._low_level_exec_command(conn, cmd, None, sudoable=False)
|
||||||
cleaned = result.split("\n")[0].strip() + '/'
|
return basetmp
|
||||||
if self.remote_user != 'root':
|
|
||||||
cmd = 'chmod a+x %s' % cleaned
|
|
||||||
self._low_level_exec_command(conn, cmd, None, sudoable=False)
|
|
||||||
return cleaned
|
|
||||||
|
|
||||||
|
|
||||||
# *****************************************************
|
# *****************************************************
|
||||||
|
@ -720,7 +718,7 @@ class Runner(object):
|
||||||
if not os.path.exists(in_path):
|
if not os.path.exists(in_path):
|
||||||
raise errors.AnsibleFileNotFound("module not found: %s" % in_path)
|
raise errors.AnsibleFileNotFound("module not found: %s" % in_path)
|
||||||
|
|
||||||
out_path = tmp + module
|
out_path = os.path.join(tmp, module)
|
||||||
conn.put_file(in_path, out_path)
|
conn.put_file(in_path, out_path)
|
||||||
return out_path
|
return out_path
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue