mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-09-19 04:59:01 +00:00
Fix issues with configuration/parameters loading
- Change default server directory from plinth/ to /plinth as the program expects. - First load the values from configuration file and then override them with command line parameters. - Show default values on the command line help. - Use configuration file values as default values to command line parameters. - Log the value of script prefix (server_dir) for easy debugging. - Make sure the server_dir is properly loaded from configuration files.
This commit is contained in:
parent
2a83f29b8b
commit
e09018fe9a
@ -9,7 +9,7 @@ config_dir = /etc/plinth
|
|||||||
data_dir = /var/lib/plinth
|
data_dir = /var/lib/plinth
|
||||||
log_dir = /var/log/plinth
|
log_dir = /var/log/plinth
|
||||||
pid_dir = /var/run
|
pid_dir = /var/run
|
||||||
server_dir = plinth/
|
server_dir = /plinth
|
||||||
actions_dir = /usr/share/plinth/actions
|
actions_dir = /usr/share/plinth/actions
|
||||||
doc_dir = /usr/share/doc/plinth
|
doc_dir = /usr/share/doc/plinth
|
||||||
|
|
||||||
|
|||||||
@ -40,19 +40,20 @@ LOGGER = logging.getLogger(__name__)
|
|||||||
def parse_arguments():
|
def parse_arguments():
|
||||||
"""Parse command line arguments"""
|
"""Parse command line arguments"""
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description='Plinth web interface for FreedomBox')
|
description='Plinth web interface for FreedomBox',
|
||||||
|
formatter_class=argparse.ArgumentDefaultsHelpFormatter)
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'--pidfile', default='plinth.pid',
|
'--pidfile', default=cfg.pidfile,
|
||||||
help='specify a file in which the server may write its pid')
|
help='specify a file in which the server may write its pid')
|
||||||
# TODO: server_dir is actually a url prefix; use a better variable name
|
# TODO: server_dir is actually a url prefix; use a better variable name
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'--server_dir', default='/',
|
'--server_dir', default=cfg.server_dir,
|
||||||
help='web server path under which to serve')
|
help='web server path under which to serve')
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'--debug', action='store_true', default=False,
|
'--debug', action='store_true', default=cfg.debug,
|
||||||
help='enable debugging and run server *insecurely*')
|
help='enable debugging and run server *insecurely*')
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'--no-daemon', action='store_true', default=False,
|
'--no-daemon', action='store_true', default=cfg.no_daemon,
|
||||||
help='do not start as a daemon')
|
help='do not start as a daemon')
|
||||||
|
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
@ -239,10 +240,10 @@ def configure_django():
|
|||||||
|
|
||||||
def main():
|
def main():
|
||||||
"""Intialize and start the application"""
|
"""Intialize and start the application"""
|
||||||
parse_arguments()
|
|
||||||
|
|
||||||
cfg.read()
|
cfg.read()
|
||||||
|
|
||||||
|
parse_arguments()
|
||||||
|
|
||||||
setup_logging()
|
setup_logging()
|
||||||
|
|
||||||
service.init()
|
service.init()
|
||||||
@ -250,6 +251,7 @@ def main():
|
|||||||
configure_django()
|
configure_django()
|
||||||
|
|
||||||
LOGGER.info('Configuration loaded from file - %s', cfg.CONFIG_FILE)
|
LOGGER.info('Configuration loaded from file - %s', cfg.CONFIG_FILE)
|
||||||
|
LOGGER.info('Script prefix - %s', cfg.server_dir)
|
||||||
|
|
||||||
module_loader.load_modules()
|
module_loader.load_modules()
|
||||||
|
|
||||||
|
|||||||
@ -78,6 +78,7 @@ def read():
|
|||||||
('Path', 'status_log_file'),
|
('Path', 'status_log_file'),
|
||||||
('Path', 'access_log_file'),
|
('Path', 'access_log_file'),
|
||||||
('Path', 'pidfile'),
|
('Path', 'pidfile'),
|
||||||
|
('Path', 'server_dir'),
|
||||||
('Network', 'host'),
|
('Network', 'host'),
|
||||||
('Network', 'port'),
|
('Network', 'port'),
|
||||||
('Network', 'secure_proxy_ssl_header'),
|
('Network', 'secure_proxy_ssl_header'),
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user