aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mediagoblin/app.py17
-rw-r--r--mediagoblin/init/__init__.py13
2 files changed, 16 insertions, 14 deletions
diff --git a/mediagoblin/app.py b/mediagoblin/app.py
index ab8549cb..0ef670d7 100644
--- a/mediagoblin/app.py
+++ b/mediagoblin/app.py
@@ -21,19 +21,14 @@ import routes
from webob import Request, exc
from mediagoblin import routing, util, storage
-from mediagoblin.init.config import (
- read_mediagoblin_config, generate_validation_report)
from mediagoblin.db.open import setup_connection_and_db_from_config
from mediagoblin.mg_globals import setup_globals
from mediagoblin.init.celery import setup_celery_from_config
-from mediagoblin.init import get_jinja_loader, get_staticdirector
+from mediagoblin.init import get_jinja_loader, get_staticdirector, \
+ setup_global_and_app_config
from mediagoblin.workbench import WorkbenchManager
-class Error(Exception): pass
-class ImproperlyConfigured(Error): pass
-
-
class MediaGoblinApp(object):
"""
WSGI application of MediaGoblin
@@ -55,13 +50,7 @@ class MediaGoblinApp(object):
##############
# Open and setup the config
- global_config, validation_result = read_mediagoblin_config(config_path)
- app_config = global_config['mediagoblin']
- # report errors if necessary
- validation_report = generate_validation_report(
- global_config, validation_result)
- if validation_report:
- raise ImproperlyConfigured(validation_report)
+ global_config, app_config = setup_global_and_app_config(config_path)
##########################################
# Setup other connections / useful objects
diff --git a/mediagoblin/init/__init__.py b/mediagoblin/init/__init__.py
index 4bf69158..4a14fdf8 100644
--- a/mediagoblin/init/__init__.py
+++ b/mediagoblin/init/__init__.py
@@ -16,12 +16,25 @@
import jinja2
from mediagoblin import staticdirect
+from mediagoblin.init.config import (
+ read_mediagoblin_config, generate_validation_report)
class Error(Exception): pass
class ImproperlyConfigured(Error): pass
+def setup_global_and_app_config(config_path):
+ global_config, validation_result = read_mediagoblin_config(config_path)
+ app_config = global_config['mediagoblin']
+ # report errors if necessary
+ validation_report = generate_validation_report(
+ global_config, validation_result)
+ if validation_report:
+ raise ImproperlyConfigured(validation_report)
+
+ return global_config, app_config
+
def get_jinja_loader(user_template_path=None):
"""
Set up the Jinja template loaders, possibly allowing for user