From: Hans-Christoph Steiner Date: Tue, 5 Dec 2017 08:13:19 +0000 (+0100) Subject: nightly: use shutil.move() only so all ops work across filesystems X-Git-Tag: 1.0.0~46^2 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=4561ea59a63e55c73107ccd8135fed1855772828;p=fdroidserver.git nightly: use shutil.move() only so all ops work across filesystems https://gitlab.com/fdroid/fdroidserver/merge_requests/377#note_49998712 --- diff --git a/fdroidserver/nightly.py b/fdroidserver/nightly.py index ddb66ebb..50c859f4 100644 --- a/fdroidserver/nightly.py +++ b/fdroidserver/nightly.py @@ -70,7 +70,7 @@ def _ssh_key_from_debug_keystore(): rsakey = paramiko.RSAKey.from_private_key_file(privkey) fingerprint = base64.b64encode(hashlib.sha256(rsakey.asbytes()).digest()).decode('ascii').rstrip('=') ssh_private_key_file = os.path.join(tmp_dir, 'debug_keystore_' + fingerprint + '_id_rsa') - os.rename(privkey, ssh_private_key_file) + shutil.move(privkey, ssh_private_key_file) pub = rsakey.get_name() + ' ' + rsakey.get_base64() + ' ' + ssh_private_key_file with open(ssh_private_key_file + '.pub', 'w') as fp: @@ -283,8 +283,8 @@ Last updated: {date}'''.format(repo_git_base=repo_git_base, os.makedirs(os.path.dirname(ssh_dir), exist_ok=True) privkey = _ssh_key_from_debug_keystore() ssh_private_key_file = os.path.join(ssh_dir, os.path.basename(privkey)) - os.rename(privkey, ssh_private_key_file) - os.rename(privkey + '.pub', ssh_private_key_file + '.pub') + shutil.move(privkey, ssh_private_key_file) + shutil.move(privkey + '.pub', ssh_private_key_file + '.pub') if shutil.rmtree.avoids_symlink_attacks: shutil.rmtree(os.path.dirname(privkey))