Refactor rchmod to utils.paths.rchmod

This commit is contained in:
Labrys of Knossos 2019-01-15 18:02:36 -05:00
commit d960c432eb
3 changed files with 35 additions and 17 deletions

View file

@ -37,6 +37,7 @@ from core.utils.paths import (
get_dir_size,
make_dir,
onerror,
rchmod,
remote_dir,
remove_dir,
remove_empty_folders,

View file

@ -149,3 +149,16 @@ def clean_directory(path, files):
shutil.rmtree(path, onerror=onerror)
except Exception:
logger.error('Unable to delete directory {0}'.format(path))
def rchmod(path, mod):
logger.log('Changing file mode of {0} to {1}'.format(path, oct(mod)))
os.chmod(path, mod)
if not os.path.isdir(path):
return # Skip files
for root, dirs, files in os.walk(path):
for d in dirs:
os.chmod(os.path.join(root, d), mod)
for f in files:
os.chmod(os.path.join(root, f), mod)