Commit f74a1fa4 by Seth Vidal

make atomic_replace use shutil.copy2 instead of os.rename() so it will

work across filesystems
parent 5df2dadc
...@@ -797,7 +797,11 @@ class AnsibleModule(object): ...@@ -797,7 +797,11 @@ class AnsibleModule(object):
if self.selinux_enabled(): if self.selinux_enabled():
context = self.selinux_default_context(dest) context = self.selinux_default_context(dest)
self.set_context_if_different(src, context, False) self.set_context_if_different(src, context, False)
os.rename(src, dest) try:
shutil.copy2(src, dest)
except shutil.Error, e:
self.fail_json(msg='Could not atomic_replace file: %s to %s: %s' % (src, dest, e))
def run_command(self, args, check_rc=False, close_fds=False, executable=None, data=None): def run_command(self, args, check_rc=False, close_fds=False, executable=None, data=None):
''' '''
......
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