Fixed process_method issue #296

Fixed bug where it would detect the incorrect fork branch due to improperly set constants

Adds ability for user to set process_method from cfg file, leaving it empty defaults to sickbeard's process method from its config.
This commit is contained in:
echel0n 2014-03-30 18:11:51 -07:00
commit 017e2239a4
4 changed files with 19 additions and 7 deletions

View file

@ -106,6 +106,11 @@ def processEpisode(dirName, nzbName=None, failed=False, clientAgent=None, inputC
except (ConfigParser.NoOptionError, ValueError): except (ConfigParser.NoOptionError, ValueError):
nzbExtractionBy = "Downloader" nzbExtractionBy = "Downloader"
try:
process_method = config.get(section, "process_method")
except ConfigParser.NoOptionError:
process_method = None
TimeOut = 60 * int(wait_for) # SickBeard needs to complete all moving and renaming before returning the log sequence via url. TimeOut = 60 * int(wait_for) # SickBeard needs to complete all moving and renaming before returning the log sequence via url.
socket.setdefaulttimeout(int(TimeOut)) #initialize socket timeout. socket.setdefaulttimeout(int(TimeOut)) #initialize socket timeout.
@ -152,17 +157,24 @@ def processEpisode(dirName, nzbName=None, failed=False, clientAgent=None, inputC
if watch_dir != "" and (not host in ['localhost', '127.0.0.1'] or nzbName == "Manual Run"): if watch_dir != "" and (not host in ['localhost', '127.0.0.1'] or nzbName == "Manual Run"):
dirName = watch_dir dirName = watch_dir
# don't have sickbeard display any output
params['quiet'] = 1 params['quiet'] = 1
for param in copy.copy(params): for param in copy.copy(params):
if param is "failed": if param is "failed":
params["failed"] = failed params[param] = failed
if param is "dirName": if param is "dirName":
params["dirName"] = dirName params[param] = dirName
if param is "dir": if param is "dir":
params["dir"] = dirName params[param] = dirName
if param is "process_method":
if process_method:
params[param] = process_method
else:
del params[param]
if nzbName != None: if nzbName != None:
params['nzbName'] = nzbName params['nzbName'] = nzbName

View file

@ -305,8 +305,8 @@ def addnzbget():
section = "SickBeard" section = "SickBeard"
envKeys = ['CATEGORY', 'HOST', 'PORT', 'USERNAME', 'PASSWORD', 'SSL', 'WEB_ROOT', 'WATCH_DIR', 'FORK', 'DELETE_FAILED', 'DELAY', 'WAIT_FOR'] envKeys = ['CATEGORY', 'HOST', 'PORT', 'USERNAME', 'PASSWORD', 'SSL', 'WEB_ROOT', 'WATCH_DIR', 'FORK', 'DELETE_FAILED', 'DELAY', 'WAIT_FOR', 'PROCESS_METHOD']
cfgKeys = ['sbCategory', 'host', 'port', 'username', 'password', 'ssl', 'web_root', 'watch_dir', 'fork', 'delete_failed', 'delay', 'wait_for'] cfgKeys = ['sbCategory', 'host', 'port', 'username', 'password', 'ssl', 'web_root', 'watch_dir', 'fork', 'delete_failed', 'delay', 'wait_for', 'process_method']
for index in range(len(envKeys)): for index in range(len(envKeys)):
key = 'NZBPO_SB' + envKeys[index] key = 'NZBPO_SB' + envKeys[index]
if os.environ.has_key(key): if os.environ.has_key(key):

View file

@ -15,7 +15,7 @@ fork_failed_torrent = "failed-torrent"
forks = {} forks = {}
forks[fork_default] = {"dir": None, "process": None} forks[fork_default] = {"dir": None, "process": None}
forks[fork_failed] = {"dir": None, "failed": None} forks[fork_failed] = {"dirName": None, "failed": None}
forks[fork_failed_torrent] = {"dir": None, "failed": None, "process_method": None} forks[fork_failed_torrent] = {"dir": None, "failed": None, "process_method": None}
SICKBEARD_FAILED = [fork_failed, fork_failed_torrent] SICKBEARD_FAILED = [fork_failed, fork_failed_torrent]

View file

@ -37,7 +37,7 @@ fork = auto
delete_failed = 0 delete_failed = 0
nzbExtractionBy = Downloader nzbExtractionBy = Downloader
Torrent_ForceLink = 1 Torrent_ForceLink = 1
process_method =
[HeadPhones] [HeadPhones]
#### autoProcessing for Music #### autoProcessing for Music