diff --git a/celery/bin/base.py b/celery/bin/base.py index 9044b7b12..40956900f 100644 --- a/celery/bin/base.py +++ b/celery/bin/base.py @@ -213,6 +213,7 @@ class Command(object): Option('--workdir', default=None, dest='working_directory'), Option('--no-color', '-C', action='store_true', default=None), Option('--quiet', '-q', action='store_true'), + Option('--skip-checks', action='store_true'), ) #: Enable if the application should support config from the cmdline. @@ -239,7 +240,7 @@ class Command(object): def __init__(self, app=None, get_app=None, no_color=False, stdout=None, stderr=None, quiet=False, on_error=None, - on_usage_error=None): + on_usage_error=None, skip_checks=False): self.app = app self.get_app = get_app or self._get_default_app self.stdout = stdout or sys.stdout @@ -247,6 +248,7 @@ def __init__(self, app=None, get_app=None, no_color=False, self._colored = None self._no_color = no_color self.quiet = quiet + self.skip_checks = skip_checks if not self.description: self.description = self.__doc__ if on_error: @@ -464,6 +466,9 @@ def setup_app_from_commandline(self, argv): config = preload_options.get('config') if config: os.environ['CELERY_CONFIG_MODULE'] = config + skip_checks = preload_options.get('skip_checks') + if skip_checks: + os.environ['CELERY_SKIP_CHECKS'] = 'true' if self.respects_app_option: if app: self.app = self.find_app(app) diff --git a/celery/fixups/django.py b/celery/fixups/django.py index 73c5c2862..d1207af81 100644 --- a/celery/fixups/django.py +++ b/celery/fixups/django.py @@ -156,6 +156,8 @@ def validate_models(self): pass else: django_setup() + if os.environ.get('CELERY_SKIP_CHECKS'): + return s = StringIO() try: from django.core.management.validation import get_validation_errors