Only cleanup source folders
This commit is contained in:
@@ -77,7 +77,8 @@ class Core(Plugin):
|
|||||||
return True
|
return True
|
||||||
|
|
||||||
def cleanUpFolders(self):
|
def cleanUpFolders(self):
|
||||||
self.deleteEmptyFolder(Env.get('app_dir'), show_error = False)
|
only_clean = ['couchpotato', 'libs', 'init']
|
||||||
|
self.deleteEmptyFolder(Env.get('app_dir'), show_error = False, only_clean = only_clean)
|
||||||
|
|
||||||
def available(self, **kwargs):
|
def available(self, **kwargs):
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -140,13 +140,31 @@ class Plugin(object):
|
|||||||
|
|
||||||
return False
|
return False
|
||||||
|
|
||||||
def deleteEmptyFolder(self, folder, show_error = True):
|
def deleteEmptyFolder(self, folder, show_error = True, only_clean = None):
|
||||||
folder = sp(folder)
|
folder = sp(folder)
|
||||||
|
|
||||||
|
allowed_dirs = []
|
||||||
|
if only_clean:
|
||||||
|
for item in os.listdir(folder):
|
||||||
|
full_path = os.path.join(folder, item)
|
||||||
|
if item in only_clean and os.path.isdir(full_path):
|
||||||
|
allowed_dirs.append(full_path)
|
||||||
|
|
||||||
for root, dirs, files in os.walk(folder):
|
for root, dirs, files in os.walk(folder):
|
||||||
|
|
||||||
for dir_name in dirs:
|
for dir_name in dirs:
|
||||||
full_path = os.path.join(root, dir_name)
|
full_path = os.path.join(root, dir_name)
|
||||||
|
|
||||||
|
if only_clean:
|
||||||
|
allow = False
|
||||||
|
for allowed_dir in allowed_dirs:
|
||||||
|
if allowed_dir in full_path:
|
||||||
|
allow = True
|
||||||
|
break
|
||||||
|
|
||||||
|
if not allow:
|
||||||
|
continue
|
||||||
|
|
||||||
if len(os.listdir(full_path)) == 0:
|
if len(os.listdir(full_path)) == 0:
|
||||||
try:
|
try:
|
||||||
os.rmdir(full_path)
|
os.rmdir(full_path)
|
||||||
|
|||||||
Reference in New Issue
Block a user