argparse is lame!
This commit is contained in:
1 parent
89b783c3d1
commit
f1b9376d5f
2 files changed
+16
-31
No files matched your search
+1
-1
@@ -50,6 +50,6 @@ except ImportError, e:
|
|||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
try:
|
try:
|
||||||
cli.cmd_couchpotato(base_path)
|
cli.cmd_couchpotato(base_path, sys.argv[1:])
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
log.critical(e)
|
log.critical(e)
|
||||||
+15
-30
@@ -1,38 +1,26 @@
|
|||||||
|
from couchpotato import web
|
||||||
|
from couchpotato.api import api
|
||||||
|
from couchpotato.core.logger import CPLog
|
||||||
|
from couchpotato.core.settings import settings
|
||||||
|
from libs.daemon import createDaemon
|
||||||
from logging import handlers
|
from logging import handlers
|
||||||
import argparse
|
from optparse import OptionParser
|
||||||
import logging
|
import logging
|
||||||
import os.path
|
import os.path
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
|
||||||
from libs.daemon import createDaemon
|
def cmd_couchpotato(base_path, args):
|
||||||
|
|
||||||
|
|
||||||
from couchpotato import web
|
|
||||||
from couchpotato.api import api
|
|
||||||
from couchpotato.core.logger import CPLog
|
|
||||||
from couchpotato.core.settings import settings
|
|
||||||
|
|
||||||
|
|
||||||
def cmd_couchpotato(base_path, argv=None):
|
|
||||||
'''Commandline entry point.'''
|
'''Commandline entry point.'''
|
||||||
|
|
||||||
# Options
|
# Options
|
||||||
parser = argparse.ArgumentParser()
|
parser = OptionParser('usage: %prog [options]')
|
||||||
parser.add_argument('-s', '--datadir', dest='data_dir',
|
parser.add_option('-s', '--datadir', dest = 'data_dir', default = base_path, help = 'Absolute or ~/ path, where settings/logs/database data is saved (default ./)')
|
||||||
default=base_path,
|
parser.add_option('-t', '--test', '--debug', action = 'store_true', dest = 'debug', help = 'Debug mode')
|
||||||
help="Absolute or ~/ path, where "
|
parser.add_option('-q', '--quiet', action = 'store_true', dest = 'quiet', help = "Don't log to console")
|
||||||
"settings/logs/database data is saved (default ./)")
|
parser.add_option('-d', '--daemon', action = 'store_true', dest = 'daemonize', help = 'Daemonize the app')
|
||||||
parser.add_argument('-t', '--test', '--debug', action='store_true',
|
|
||||||
dest='debug', help='Debug mode')
|
|
||||||
parser.add_argument('-q', '--quiet', action='store_true', dest='quiet',
|
|
||||||
help="Don't log to console")
|
|
||||||
parser.add_argument('-d', '--daemon', action='store_true',
|
|
||||||
dest='daemonize', help='Daemonize the app')
|
|
||||||
|
|
||||||
args = argv if argv else sys.argv[1:]
|
|
||||||
options = parser.parse_args(args)
|
|
||||||
|
|
||||||
|
(options, args) = parser.parse_args(args)
|
||||||
|
|
||||||
# Create data dir if needed
|
# Create data dir if needed
|
||||||
if not os.path.isdir(options.data_dir):
|
if not os.path.isdir(options.data_dir):
|
||||||
@@ -55,8 +43,7 @@ def cmd_couchpotato(base_path, argv=None):
|
|||||||
|
|
||||||
# Logger
|
# Logger
|
||||||
logger = logging.getLogger()
|
logger = logging.getLogger()
|
||||||
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s',
|
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s', '%H:%M:%S')
|
||||||
'%H:%M:%S')
|
|
||||||
level = logging.DEBUG if debug else logging.INFO
|
level = logging.DEBUG if debug else logging.INFO
|
||||||
logger.setLevel(level)
|
logger.setLevel(level)
|
||||||
|
|
||||||
@@ -67,9 +54,7 @@ def cmd_couchpotato(base_path, argv=None):
|
|||||||
logger.addHandler(hdlr)
|
logger.addHandler(hdlr)
|
||||||
|
|
||||||
# To file
|
# To file
|
||||||
hdlr2 = handlers.RotatingFileHandler(os.path.join(log_dir,
|
hdlr2 = handlers.RotatingFileHandler(os.path.join(log_dir, 'CouchPotato.log'), 'a', 5000000, 4)
|
||||||
'CouchPotato.log'),
|
|
||||||
'a', 5000000, 4)
|
|
||||||
hdlr2.setFormatter(formatter)
|
hdlr2.setFormatter(formatter)
|
||||||
logger.addHandler(hdlr2)
|
logger.addHandler(hdlr2)
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user