mirror of
https://github.com/clinton-hall/nzbToMedia.git
synced 2025-08-19 21:03:14 -07:00
Merge branch 'release-11.7' into nightly
# Conflicts: # changelog.txt # core/versionCheck.py # nzbToMedia.py
This commit is contained in:
commit
d1edf9f2a2
6 changed files with 104 additions and 43 deletions
|
@ -1,5 +1,9 @@
|
|||
#!/usr/bin/env python2
|
||||
# coding=utf-8
|
||||
|
||||
import cleanup
|
||||
cleanup.clean('core', 'libs')
|
||||
|
||||
import datetime
|
||||
import os
|
||||
import sys
|
||||
|
|
|
@ -41,6 +41,15 @@ Delete invisible.cmd
|
|||
Use args instead of Wscript.Arguments
|
||||
|
||||
|
||||
V11.7 12/25/2018
|
||||
|
||||
Merry Christmas and Happy Holidays!
|
||||
|
||||
Add cleanup script to clean up bytecode
|
||||
Add automatic cleanup on update
|
||||
|
||||
NOTE: Cleanup will force-run every time during a transitional period to minimize issues with upcoming refactoring
|
||||
|
||||
V11.06 11/03/2018
|
||||
|
||||
updates to incorporate importMode for NzbDrone/Sonarr and Radarr.
|
||||
|
|
86
cleanup.py
Normal file
86
cleanup.py
Normal file
|
@ -0,0 +1,86 @@
|
|||
from __future__ import print_function
|
||||
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
|
||||
def git_clean(remove_directories=False, force=False, dry_run=False, interactive=False, quiet=False, exclude=None,
|
||||
ignore_rules=False, clean_ignored=False, paths=None):
|
||||
"""Execute git clean commands."""
|
||||
command = ['git', 'clean']
|
||||
if remove_directories:
|
||||
command.append('-d')
|
||||
if force:
|
||||
command.append('--force')
|
||||
if interactive:
|
||||
command.append('--interactive')
|
||||
if quiet:
|
||||
command.append('--quiet')
|
||||
if dry_run:
|
||||
command.append('--dry-run')
|
||||
if exclude:
|
||||
try:
|
||||
exclude = exclude.split(' ')
|
||||
except AttributeError:
|
||||
pass
|
||||
for exclusion in exclude:
|
||||
command.append('--exclude={pattern}'.format(pattern=exclusion))
|
||||
if ignore_rules:
|
||||
command.append('-x')
|
||||
if clean_ignored:
|
||||
command.append('-X')
|
||||
if paths:
|
||||
try:
|
||||
paths = paths.split(' ')
|
||||
except AttributeError:
|
||||
pass
|
||||
command.extend(paths)
|
||||
return subprocess.check_output(command)
|
||||
|
||||
|
||||
def clean_bytecode():
|
||||
"""Clean bytecode files."""
|
||||
try:
|
||||
result = git_clean(
|
||||
remove_directories=True,
|
||||
force=True,
|
||||
exclude=[
|
||||
'*.*', # exclude everything
|
||||
'!*.py[co]', # except bytecode
|
||||
'!**/__pycache__/', # and __pycache__ folders
|
||||
],
|
||||
)
|
||||
except subprocess.CalledProcessError as error:
|
||||
sys.exit(error.returncode)
|
||||
else:
|
||||
return result
|
||||
|
||||
|
||||
def clean_folders(*paths):
|
||||
"""Clean obsolete folders."""
|
||||
try:
|
||||
result = git_clean(
|
||||
remove_directories=True,
|
||||
force=True,
|
||||
ignore_rules=True,
|
||||
paths=paths,
|
||||
)
|
||||
except subprocess.CalledProcessError as error:
|
||||
sys.exit(error.returncode)
|
||||
else:
|
||||
return result
|
||||
|
||||
|
||||
def clean(*paths):
|
||||
"""Clean up bytecode and obsolete folders."""
|
||||
print('-- Cleaning bytecode --')
|
||||
result = clean_bytecode()
|
||||
print(result or 'No bytecode to clean\n')
|
||||
if paths:
|
||||
print('-- Cleaning folders: {} --'.format(paths))
|
||||
result = clean_folders(*paths)
|
||||
print(result or 'No folders to clean\n')
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
clean('libs', 'core')
|
|
@ -13,6 +13,7 @@ import traceback
|
|||
|
||||
from six.moves.urllib.request import urlretrieve
|
||||
|
||||
import cleanup
|
||||
import core
|
||||
from core import github_api as github, logger
|
||||
import libs.util
|
||||
|
@ -81,23 +82,9 @@ class CheckVersion(object):
|
|||
def update(self):
|
||||
if self.updater.need_update():
|
||||
result = self.updater.update()
|
||||
self.clean()
|
||||
cleanup.clean('core', 'libs')
|
||||
return result
|
||||
|
||||
@staticmethod
|
||||
def clean():
|
||||
# Clean libs
|
||||
result = libs.util.git_clean(
|
||||
remove_directories=True,
|
||||
force=True,
|
||||
ignore_rules=True,
|
||||
paths=[
|
||||
libs.LIB_ROOT,
|
||||
core.SOURCE_ROOT,
|
||||
],
|
||||
)
|
||||
logger.debug(result)
|
||||
|
||||
|
||||
class UpdateManager(object):
|
||||
def get_github_repo_user(self):
|
||||
|
|
28
libs/util.py
28
libs/util.py
|
@ -59,31 +59,3 @@ def install_requirements(
|
|||
args.append(path)
|
||||
|
||||
subprocess.call(args)
|
||||
|
||||
|
||||
def git_clean(remove_directories=False, force=False, dry_run=False, interactive=False, quiet=False, exclude=None,
|
||||
ignore_rules=False, clean_ignored=False, paths=None):
|
||||
command = ['git', 'clean']
|
||||
if remove_directories:
|
||||
command.append('-d')
|
||||
if force:
|
||||
command.append('--force')
|
||||
if interactive:
|
||||
command.append('--interactive')
|
||||
if quiet:
|
||||
command.append('--quiet')
|
||||
if dry_run:
|
||||
command.append('--dry-run')
|
||||
if exclude:
|
||||
command.append('--exclude={pattern}'.format(pattern=exclude))
|
||||
if ignore_rules:
|
||||
command.append('-x')
|
||||
if clean_ignored:
|
||||
command.append('-X')
|
||||
if paths:
|
||||
try:
|
||||
paths = paths.split(' ')
|
||||
except AttributeError:
|
||||
pass
|
||||
command.extend(paths)
|
||||
return subprocess.check_output(command)
|
||||
|
|
|
@ -623,6 +623,9 @@
|
|||
|
||||
from __future__ import print_function
|
||||
|
||||
import cleanup
|
||||
cleanup.clean('core', 'libs')
|
||||
|
||||
import datetime
|
||||
import os
|
||||
import sys
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue