mirror of
https://github.com/clinton-hall/nzbToMedia.git
synced 2025-08-20 21:33:13 -07:00
Added proper support for manual runs to return clientAgent = manual and set conditionals around that premise
This commit is contained in:
parent
012e4913a8
commit
880d70f25b
1 changed files with 28 additions and 17 deletions
|
@ -19,7 +19,7 @@ from nzbtomedia.nzbToMediaUtil import category_search, safeName, is_sample, copy
|
||||||
remove_read_only, cleanup_directories, create_torrent_class
|
remove_read_only, cleanup_directories, create_torrent_class
|
||||||
from nzbtomedia import logger
|
from nzbtomedia import logger
|
||||||
|
|
||||||
def processTorrent(inputDirectory, inputName, inputCategory, inputHash, inputID):
|
def processTorrent(inputDirectory, inputName, inputCategory, inputHash, inputID, clientAgent):
|
||||||
status = int(1) # 1 = failed | 0 = success
|
status = int(1) # 1 = failed | 0 = success
|
||||||
root = int(0)
|
root = int(0)
|
||||||
video = int(0)
|
video = int(0)
|
||||||
|
@ -34,8 +34,10 @@ def processTorrent(inputDirectory, inputName, inputCategory, inputHash, inputID)
|
||||||
|
|
||||||
logger.debug("Determined Directory: %s | Name: %s | Category: %s", inputDirectory, inputName, inputCategory)
|
logger.debug("Determined Directory: %s | Name: %s | Category: %s", inputDirectory, inputName, inputCategory)
|
||||||
|
|
||||||
TorrentClass = create_torrent_class(nzbtomedia.CLIENTAGENT)
|
TorrentClass = None
|
||||||
pause_torrent(nzbtomedia.CLIENTAGENT, TorrentClass, inputHash, inputID, inputName)
|
if clientAgent != 'manual':
|
||||||
|
TorrentClass = create_torrent_class(clientAgent)
|
||||||
|
pause_torrent(clientAgent, TorrentClass, inputHash, inputID, inputName)
|
||||||
|
|
||||||
processCategories = nzbtomedia.CFG[nzbtomedia.SECTIONS].sections
|
processCategories = nzbtomedia.CFG[nzbtomedia.SECTIONS].sections
|
||||||
|
|
||||||
|
@ -48,10 +50,13 @@ def processTorrent(inputDirectory, inputName, inputCategory, inputHash, inputID)
|
||||||
Torrent_NoLink = int(nzbtomedia.CFG["SickBeard"][inputCategory]["Torrent_NoLink"]) # 0
|
Torrent_NoLink = int(nzbtomedia.CFG["SickBeard"][inputCategory]["Torrent_NoLink"]) # 0
|
||||||
if Torrent_NoLink == 1:
|
if Torrent_NoLink == 1:
|
||||||
logger.postprocess("Calling autoProcessTV to post-process: %s",inputName)
|
logger.postprocess("Calling autoProcessTV to post-process: %s",inputName)
|
||||||
result = autoProcessTV().processEpisode(inputDirectory, inputName, 0, clientAgent=nzbtomedia.CLIENTAGENT, inputCategory=inputCategory)
|
result = autoProcessTV().processEpisode(inputDirectory, inputName, 0, clientAgent=clientAgent, inputCategory=inputCategory)
|
||||||
if result != 0:
|
if result != 0:
|
||||||
logger.error("A problem was reported in the autoProcessTV script.")
|
logger.error("A problem was reported in the autoProcessTV script.")
|
||||||
resume_torrent(nzbtomedia.CLIENTAGENT, TorrentClass, inputHash, inputID, result, inputName)
|
|
||||||
|
if clientAgent != 'manual':
|
||||||
|
resume_torrent(clientAgent, TorrentClass, inputHash, inputID, result, inputName)
|
||||||
|
|
||||||
cleanup_directories(inputCategory, processCategories, result, outputDestination)
|
cleanup_directories(inputCategory, processCategories, result, outputDestination)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
@ -184,27 +189,29 @@ def processTorrent(inputDirectory, inputName, inputCategory, inputHash, inputID)
|
||||||
if nzbtomedia.CFG['CouchPotato'][inputCategory]:
|
if nzbtomedia.CFG['CouchPotato'][inputCategory]:
|
||||||
logger.postprocess("Calling CouchPotato:" + inputCategory + " to post-process: %s", inputName)
|
logger.postprocess("Calling CouchPotato:" + inputCategory + " to post-process: %s", inputName)
|
||||||
download_id = inputHash
|
download_id = inputHash
|
||||||
result = autoProcessMovie().process(outputDestination, inputName, status, nzbtomedia.CLIENTAGENT, download_id, inputCategory)
|
result = autoProcessMovie().process(outputDestination, inputName, status, clientAgent, download_id, inputCategory)
|
||||||
elif nzbtomedia.CFG['SickBeard'][inputCategory]:
|
elif nzbtomedia.CFG['SickBeard'][inputCategory]:
|
||||||
logger.postprocess("Calling Sick-Beard:" + inputCategory + " to post-process: %s", inputName)
|
logger.postprocess("Calling Sick-Beard:" + inputCategory + " to post-process: %s", inputName)
|
||||||
result = autoProcessTV().processEpisode(outputDestination, inputName, status, nzbtomedia.CLIENTAGENT, inputCategory)
|
result = autoProcessTV().processEpisode(outputDestination, inputName, status, clientAgent, inputCategory)
|
||||||
elif nzbtomedia.CFG['NzbDrone'][inputCategory]:
|
elif nzbtomedia.CFG['NzbDrone'][inputCategory]:
|
||||||
logger.postprocess("Calling NzbDrone:" + inputCategory + " to post-process: %s", inputName)
|
logger.postprocess("Calling NzbDrone:" + inputCategory + " to post-process: %s", inputName)
|
||||||
result = autoProcessTV().processEpisode(outputDestination, inputName, status, nzbtomedia.CLIENTAGENT, inputCategory)
|
result = autoProcessTV().processEpisode(outputDestination, inputName, status, clientAgent, inputCategory)
|
||||||
elif nzbtomedia.CFG['HeadPhones'][inputCategory]:
|
elif nzbtomedia.CFG['HeadPhones'][inputCategory]:
|
||||||
logger.postprocess("Calling HeadPhones:" + inputCategory + " to post-process: %s", inputName)
|
logger.postprocess("Calling HeadPhones:" + inputCategory + " to post-process: %s", inputName)
|
||||||
result = autoProcessMusic().process(inputDirectory, inputName, status, nzbtomedia.CLIENTAGENT, inputCategory)
|
result = autoProcessMusic().process(inputDirectory, inputName, status, clientAgent, inputCategory)
|
||||||
elif nzbtomedia.CFG['Mylar'][inputCategory]:
|
elif nzbtomedia.CFG['Mylar'][inputCategory]:
|
||||||
logger.postprocess("Calling Mylar:" + inputCategory + " to post-process: %s", inputName)
|
logger.postprocess("Calling Mylar:" + inputCategory + " to post-process: %s", inputName)
|
||||||
result = autoProcessComics().processEpisode(outputDestination, inputName, status, nzbtomedia.CLIENTAGENT, inputCategory)
|
result = autoProcessComics().processEpisode(outputDestination, inputName, status, clientAgent, inputCategory)
|
||||||
elif nzbtomedia.CFG['Gamez'][inputCategory]:
|
elif nzbtomedia.CFG['Gamez'][inputCategory]:
|
||||||
logger.postprocess("Calling Gamez:" + inputCategory + " to post-process: %s", inputName)
|
logger.postprocess("Calling Gamez:" + inputCategory + " to post-process: %s", inputName)
|
||||||
result = autoProcessGames().process(outputDestination, inputName, status, nzbtomedia.CLIENTAGENT, inputCategory)
|
result = autoProcessGames().process(outputDestination, inputName, status, clientAgent, inputCategory)
|
||||||
|
|
||||||
if result == 1 and not nzbtomedia.CLIENTAGENT == 'manual':
|
if result == 1 and clientAgent != 'manual':
|
||||||
logger.error("A problem was reported in the autoProcess* script. If torrent was paused we will resume seeding")
|
logger.error("A problem was reported in the autoProcess* script. If torrent was paused we will resume seeding")
|
||||||
|
|
||||||
resume_torrent(nzbtomedia.CLIENTAGENT, TorrentClass, inputHash, inputID, result, inputName)
|
if clientAgent != 'manual':
|
||||||
|
resume_torrent(clientAgent, TorrentClass, inputHash, inputID, result, inputName)
|
||||||
|
|
||||||
cleanup_directories(inputCategory, processCategories, result, outputDestination)
|
cleanup_directories(inputCategory, processCategories, result, outputDestination)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
@ -330,15 +337,18 @@ def main():
|
||||||
# Post-Processing Result
|
# Post-Processing Result
|
||||||
result = 0
|
result = 0
|
||||||
|
|
||||||
|
# clientAgent for Torrents
|
||||||
|
clientAgent = nzbtomedia.CLIENTAGENT
|
||||||
|
|
||||||
try:
|
try:
|
||||||
inputDirectory, inputName, inputCategory, inputHash, inputID = parse_args(nzbtomedia.CLIENTAGENT)
|
inputDirectory, inputName, inputCategory, inputHash, inputID = parse_args(clientAgent)
|
||||||
except:
|
except:
|
||||||
logger.error("There was a problem loading variables")
|
logger.error("There was a problem loading variables")
|
||||||
return -1
|
return -1
|
||||||
|
|
||||||
# check if this is a manual run
|
# check if this is a manual run
|
||||||
if inputDirectory is None:
|
if inputDirectory is None:
|
||||||
nzbtomedia.CLIENTAGENT = 'manual'
|
clientAgent = 'manual'
|
||||||
logger.warning("Invalid number of arguments received from client, Switching to manual run mode ...")
|
logger.warning("Invalid number of arguments received from client, Switching to manual run mode ...")
|
||||||
for section, subsection in nzbtomedia.SUBSECTIONS.items():
|
for section, subsection in nzbtomedia.SUBSECTIONS.items():
|
||||||
for category in subsection:
|
for category in subsection:
|
||||||
|
@ -346,16 +356,17 @@ def main():
|
||||||
dirNames = get_dirnames(section, category)
|
dirNames = get_dirnames(section, category)
|
||||||
for dirName in dirNames:
|
for dirName in dirNames:
|
||||||
logger.postprocess("Running %s:%s as a manual run for folder %s ...", section, category, dirName)
|
logger.postprocess("Running %s:%s as a manual run for folder %s ...", section, category, dirName)
|
||||||
results = processTorrent(dirName, os.path.basename(dirName), category, inputHash, inputID)
|
results = processTorrent(dirName, os.path.basename(dirName), category, inputHash, inputID, clientAgent)
|
||||||
if results != 0:
|
if results != 0:
|
||||||
result = results
|
result = results
|
||||||
logger.error("A problem was reported when trying to manually run %s:%s.", section, category)
|
logger.error("A problem was reported when trying to manually run %s:%s.", section, category)
|
||||||
else:
|
else:
|
||||||
logger.warning("%s:%s is DISABLED, you can enable this in autoProcessMedia.cfg ...", section, category)
|
logger.warning("%s:%s is DISABLED, you can enable this in autoProcessMedia.cfg ...", section, category)
|
||||||
else:
|
else:
|
||||||
result = processTorrent(inputDirectory, inputName, inputCategory, inputHash, inputID)
|
result = processTorrent(inputDirectory, inputName, inputCategory, inputHash, inputID, clientAgent)
|
||||||
|
|
||||||
logger.postprocess("All done.")
|
logger.postprocess("All done.")
|
||||||
return result
|
return result
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
exit(main())
|
exit(main())
|
Loading…
Add table
Add a link
Reference in a new issue