Save all settings at once.
Removed log dir
This commit is contained in:
+24
-7
@@ -1,4 +1,5 @@
|
||||
from couchpotato import app
|
||||
from couchpotato.core.logger import CPLog
|
||||
from couchpotato.settings import Settings
|
||||
from logging import handlers
|
||||
from optparse import OptionParser
|
||||
@@ -12,16 +13,26 @@ def cmd_couchpotato(base_path):
|
||||
|
||||
# Options
|
||||
parser = OptionParser('usage: %prog [options]')
|
||||
parser.add_option('-l', '--logdir', dest = 'logdir', default = 'logs', help = 'log DIRECTORY (default ./logs)')
|
||||
parser.add_option('-s', '--datadir', dest = 'data_dir', default = base_path, help = 'Absolute or ~/ path, where settings/logs/database data is saved (default ./)')
|
||||
parser.add_option('-t', '--test', '--debug', action = 'store_true', dest = 'debug', help = 'Debug mode')
|
||||
parser.add_option('-q', '--quiet', action = 'store_true', dest = 'quiet', help = "Don't log to console")
|
||||
parser.add_option('-d', '--daemon', action = 'store_true', dest = 'daemonize', help = 'Daemonize the app')
|
||||
|
||||
(options, args) = parser.parse_args(sys.argv[1:])
|
||||
|
||||
# Create data dir if needed
|
||||
if not os.path.isdir(options.data_dir):
|
||||
options.data_dir = os.path.expanduser(options.data_dir)
|
||||
os.makedirs(options.data_dir)
|
||||
|
||||
# Create logging dir
|
||||
log_dir = os.path.join(options.data_dir, 'logs');
|
||||
if not os.path.isdir(log_dir):
|
||||
os.mkdir(log_dir)
|
||||
|
||||
|
||||
# Register settings
|
||||
settings = Settings(os.path.join(base_path, 'settings.conf'))
|
||||
settings = Settings(os.path.join(options.data_dir, 'settings.conf'))
|
||||
debug = options.debug or settings.get('debug', default = False)
|
||||
|
||||
|
||||
@@ -38,19 +49,25 @@ def cmd_couchpotato(base_path):
|
||||
logger.addHandler(hdlr)
|
||||
|
||||
# To file
|
||||
hdlr2 = handlers.RotatingFileHandler(os.path.join(options.logdir, 'CouchPotato.log'), 'a', 5000000, 4)
|
||||
hdlr2 = handlers.RotatingFileHandler(os.path.join(log_dir, 'CouchPotato.log'), 'a', 5000000, 4)
|
||||
hdlr2.setFormatter(formatter)
|
||||
logger.addHandler(hdlr2)
|
||||
|
||||
|
||||
# Load config
|
||||
# Start logging
|
||||
log = CPLog(__name__)
|
||||
log.debug('Started with params %s' % args)
|
||||
|
||||
|
||||
# Load configs
|
||||
from couchpotato.settings.loader import SettingsLoader
|
||||
sl = SettingsLoader(root = base_path)
|
||||
sl.loadConfig('couchpotato', 'core')
|
||||
sl.addConfig('couchpotato', 'core')
|
||||
sl.run()
|
||||
|
||||
|
||||
# Create app
|
||||
app
|
||||
app.host = settings.get('host', default = '0.0.0.0')
|
||||
app.port = settings.get('port', default = 5000)
|
||||
app.run(debug = debug)
|
||||
app.debug = debug
|
||||
app.run()
|
||||
|
||||
Reference in New Issue
Block a user