diff options
author | Christopher Allan Webber <cwebber@dustycloud.org> | 2014-11-30 16:40:10 -0600 |
---|---|---|
committer | Christopher Allan Webber <cwebber@dustycloud.org> | 2014-12-03 15:40:57 -0600 |
commit | b8e2ab2f5502b68da2c50e62542bf743e66b1958 (patch) | |
tree | 01b9381cfbf1ce906230cbcec88d31407472ead6 | |
parent | a4768df0ca2e956f245e0833331ed8abb203937a (diff) | |
download | mediagoblin-b8e2ab2f5502b68da2c50e62542bf743e66b1958.tar.lz mediagoblin-b8e2ab2f5502b68da2c50e62542bf743e66b1958.tar.xz mediagoblin-b8e2ab2f5502b68da2c50e62542bf743e66b1958.zip |
Starting to deprecate the app_config, global_config by attaching stuff to app
- app.global_config, app.app_config
- making setup_crypto use app.app_config
- setting app.workbench_manager
-rw-r--r-- | mediagoblin/app.py | 28 | ||||
-rw-r--r-- | mediagoblin/init/__init__.py | 7 | ||||
-rw-r--r-- | mediagoblin/tools/crypto.py | 6 |
3 files changed, 23 insertions, 18 deletions
diff --git a/mediagoblin/app.py b/mediagoblin/app.py index 3142224d..00aa4fab 100644 --- a/mediagoblin/app.py +++ b/mediagoblin/app.py @@ -85,11 +85,11 @@ class MediaGoblinApp(object): ############## # Open and setup the config - global_config, app_config = setup_global_and_app_config(config_path) + self.global_config, self.app_config = setup_global_and_app_config(config_path) media_type_warning() - setup_crypto() + setup_crypto(self.app_config) ########################################## # Setup other connections / useful objects @@ -108,9 +108,9 @@ class MediaGoblinApp(object): # Set up the database if DISABLE_GLOBALS: - self.db_manager = setup_database(app_config['run_migrations']) + self.db_manager = setup_database(self.app_config['run_migrations']) else: - self.db = setup_database(app_config['run_migrations']) + self.db = setup_database(self.app_config['run_migrations']) # Quit app if need to run dbupdate ## NOTE: This is currently commented out due to session errors.. @@ -118,11 +118,11 @@ class MediaGoblinApp(object): # check_db_up_to_date() # Register themes - self.theme_registry, self.current_theme = register_themes(app_config) + self.theme_registry, self.current_theme = register_themes(self.app_config) # Get the template environment self.template_loader = get_jinja_loader( - app_config.get('local_templates'), + self.app_config.get('local_templates'), self.current_theme, PluginManager().get_template_paths() ) @@ -130,7 +130,7 @@ class MediaGoblinApp(object): # Check if authentication plugin is enabled and respond accordingly. self.auth = check_auth_enabled() if not self.auth: - app_config['allow_comments'] = False + self.app_config['allow_comments'] = False # Set up storage systems self.public_store, self.queue_store = setup_storage() @@ -139,16 +139,16 @@ class MediaGoblinApp(object): self.url_map = get_url_map() # set up staticdirector tool - self.staticdirector = get_staticdirector(app_config) + self.staticdirector = get_staticdirector(self.app_config) # Setup celery, if appropriate - if setup_celery and not app_config.get('celery_setup_elsewhere'): + if setup_celery and not self.app_config.get('celery_setup_elsewhere'): if os.environ.get('CELERY_ALWAYS_EAGER', 'false').lower() == 'true': setup_celery_from_config( - app_config, global_config, + self.app_config, self.global_config, force_celery_always_eager=True) else: - setup_celery_from_config(app_config, global_config) + setup_celery_from_config(self.app_config, self.global_config) ####################################################### # Insert appropriate things into mediagoblin.mg_globals @@ -167,14 +167,14 @@ class MediaGoblinApp(object): # Workbench *currently* only used by celery, so this only # matters in always eager mode :) - setup_workbench() + self.workbench_manager = setup_workbench() # instantiate application meddleware self.meddleware = [common.import_component(m)(self) for m in meddleware.ENABLED_MEDDLEWARE] @contextmanager - def gen_context(self, ctx=None): + def gen_context(self, ctx=None, **kwargs): """ Attach contextual information to request, or generate a context object @@ -188,7 +188,7 @@ class MediaGoblinApp(object): else: yield self._gen_context(self.db, ctx) - def _gen_context(self, db, ctx): + def _gen_context(self, db, ctx, **kwargs): # Set up context # -------------- diff --git a/mediagoblin/init/__init__.py b/mediagoblin/init/__init__.py index e0711416..b6421e06 100644 --- a/mediagoblin/init/__init__.py +++ b/mediagoblin/init/__init__.py @@ -28,6 +28,8 @@ from mediagoblin.tools.pluginapi import hook_runall from mediagoblin.tools.workbench import WorkbenchManager from mediagoblin.storage import storage_system_from_config +from mediagoblin.tools.transition import DISABLE_GLOBALS + class Error(Exception): pass @@ -154,4 +156,7 @@ def setup_workbench(): workbench_manager = WorkbenchManager(app_config['workbench_path']) - setup_globals(workbench_manager=workbench_manager) + if not DISABLE_GLOBALS: + setup_globals(workbench_manager=workbench_manager) + + return workbench_manager diff --git a/mediagoblin/tools/crypto.py b/mediagoblin/tools/crypto.py index c85ecd4a..1107e200 100644 --- a/mediagoblin/tools/crypto.py +++ b/mediagoblin/tools/crypto.py @@ -36,7 +36,7 @@ try: except AttributeError: getrandbits = random.getrandbits - +# TODO: This should be attached to the MediaGoblinApp __itsda_secret = None @@ -73,9 +73,9 @@ def create_key(key_dir, key_filepath): _log.info("Saved new key for It's Dangerous") -def setup_crypto(): +def setup_crypto(app_config): global __itsda_secret - key_dir = mg_globals.app_config["crypto_path"] + key_dir = app_config["crypto_path"] key_filepath = os.path.join(key_dir, 'itsdangeroussecret.bin') try: load_key(key_filepath) |