|
|
|
#!/usr/bin/env python
|
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
'''Wrapper for the command line interface.'''
|
|
|
|
|
|
|
|
from os.path import dirname, isfile
|
|
|
|
import os
|
|
|
|
import subprocess
|
|
|
|
import sys
|
|
|
|
import traceback
|
|
|
|
|
|
|
|
# Root path
|
|
|
|
base_path = dirname(os.path.abspath(__file__))
|
|
|
|
|
|
|
|
# Insert local directories into path
|
|
|
|
sys.path.insert(0, os.path.join(base_path, 'libs'))
|
|
|
|
|
|
|
|
from couchpotato.core.logger import CPLog
|
|
|
|
log = CPLog(__name__)
|
|
|
|
|
|
|
|
try:
|
|
|
|
from couchpotato import cli
|
|
|
|
except ImportError, e:
|
|
|
|
log.info('Checking local dependencies...')
|
|
|
|
if isfile(__file__):
|
|
|
|
cwd = dirname(__file__)
|
|
|
|
log.info('Updating libraries...')
|
|
|
|
stdout, stderr = subprocess.Popen(['git', 'submodule', 'init'],
|
|
|
|
stderr = subprocess.PIPE,
|
|
|
|
stdout = subprocess.PIPE).communicate()
|
|
|
|
if stderr:
|
|
|
|
log.info('[WARNING] Git is complaining:')
|
|
|
|
log.info(stderr)
|
|
|
|
stdout, stderr = subprocess.Popen(['git', 'submodule', 'update'],
|
|
|
|
stderr = subprocess.PIPE,
|
|
|
|
stdout = subprocess.PIPE).communicate()
|
|
|
|
if stderr:
|
|
|
|
log.info('[WARNING] Git is complaining:')
|
|
|
|
log.info(stderr)
|
|
|
|
|
|
|
|
log.info('Passing execution to couchpotato...')
|
|
|
|
try:
|
|
|
|
from couchpotato import cli
|
|
|
|
except ImportError:
|
|
|
|
log.error("[ERROR]: Something's seriously wrong.")
|
|
|
|
log.error(traceback.print_exc())
|
|
|
|
sys.exit(1)
|
|
|
|
else:
|
|
|
|
# Running from Titanium
|
|
|
|
raise NotImplementedError("Don't know how to do that.")
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
try:
|
|
|
|
cli.cmd_couchpotato(base_path, sys.argv[1:])
|
|
|
|
except Exception, e:
|
|
|
|
log.critical(e)
|