Commit 68f7ea60 by Gilles Cornu Committed by Michael DeHaan

Apply Gilles's patch to atomic_move based on github comment. (Email address not supplied

since wasn't from a pull request)
parent bdeb370d
...@@ -812,9 +812,9 @@ class AnsibleModule(object): ...@@ -812,9 +812,9 @@ class AnsibleModule(object):
rc = False rc = False
context = None context = None
if os.path.exists(dest): if os.path.exists(dest):
st = os.stat(dest)
os.chmod(src, st.st_mode & 07777)
try: try:
st = os.stat(dest)
os.chmod(src, st.st_mode & 07777)
os.chown(src, st.st_uid, st.st_gid) os.chown(src, st.st_uid, st.st_gid)
except OSError, e: except OSError, e:
if e.errno != errno.EPERM: if e.errno != errno.EPERM:
...@@ -838,6 +838,7 @@ class AnsibleModule(object): ...@@ -838,6 +838,7 @@ class AnsibleModule(object):
try: # leaves tmp file behind when sudo and not root try: # leaves tmp file behind when sudo and not root
if os.getenv("SUDO_USER") and os.getuid() != 0: if os.getenv("SUDO_USER") and os.getuid() != 0:
# cleanup will happen by 'rm' of tempdir
shutil.copy(src, tmp_dest) shutil.copy(src, tmp_dest)
else: else:
shutil.move(src, tmp_dest) shutil.move(src, tmp_dest)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment