From 571198c938d66d2cc4d7d7a0d261633d51061968 Mon Sep 17 00:00:00 2001 From: Christopher Allan Webber Date: Fri, 20 May 2011 18:49:04 -0500 Subject: [PATCH] Now you can set CELERY_ALWAYS_EAGER environment variable so that you don't have to run celeryd at the same time. This should make Elrond happy ;) --- mediagoblin/app.py | 8 +++++++- mediagoblin/celery_setup/__init__.py | 5 +++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/mediagoblin/app.py b/mediagoblin/app.py index 640ffc45..714404de 100644 --- a/mediagoblin/app.py +++ b/mediagoblin/app.py @@ -14,6 +14,7 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . +import os import urllib import routes @@ -138,7 +139,12 @@ def paste_app_factory(global_config, **app_config): raise ImproperlyConfigured( "One of direct_remote_path or direct_remote_paths must be provided") - setup_celery_from_config(app_config, global_config) + if asbool(os.environ.get('CELERY_ALWAYS_EAGER')): + setup_celery_from_config( + app_config, global_config, + force_celery_always_eager=True) + else: + setup_celery_from_config(app_config, global_config) mgoblin_app = MediaGoblinApp( connection, db, diff --git a/mediagoblin/celery_setup/__init__.py b/mediagoblin/celery_setup/__init__.py index 551b2741..1a77cc62 100644 --- a/mediagoblin/celery_setup/__init__.py +++ b/mediagoblin/celery_setup/__init__.py @@ -76,6 +76,7 @@ DEFAULT_SETTINGS_MODULE = 'mediagoblin.celery_setup.dummy_settings_module' def setup_celery_from_config(app_config, global_config, settings_module=DEFAULT_SETTINGS_MODULE, + force_celery_always_eager=False, set_environ=True): """ Take a mediagoblin app config and the global config from a paste @@ -85,6 +86,7 @@ def setup_celery_from_config(app_config, global_config, - app_config: the application config section - global_config: the entire paste config, all sections - settings_module: the module to populate, as a string + - - set_environ: if set, this will CELERY_CONFIG_MODULE to the settings_module """ @@ -136,6 +138,9 @@ def setup_celery_from_config(app_config, global_config, celery_imports = celery_settings.setdefault('CELERY_IMPORTS', []) celery_imports.extend(MANDATORY_CELERY_IMPORTS) + if force_celery_always_eager: + celery_settings['CELERY_ALWAYS_EAGER'] = True + __import__(settings_module) this_module = sys.modules[settings_module] -- 2.25.1