argparse is lame!

This commit is contained in:
Ruud committed 2011-02-13 13:22:36 +01:00
1 parent 89b783c3d1
commit f1b9376d5f
2 files changed
+16 -31

No files matched your search

+1 -1
View File
@@ -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
View File
@@ -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)