Browse Source

celery.bin: Ensure __package__ is set (PEP-366)

Ask Solem 13 years ago
parent
commit
442d180b3d

+ 6 - 3
celery/bin/camqadm.py

@@ -6,6 +6,9 @@
 """
 from __future__ import absolute_import
 
+if __name__ == "__main__" and __package__ is None:
+    __package__ = "celery.bin.celeryctl"
+
 import cmd
 import sys
 import shlex
@@ -15,10 +18,10 @@ from itertools import count
 
 from amqplib import client_0_8 as amqp
 
-from celery.app import app_or_default
-from celery.utils import padlist
+from ..app import app_or_default
+from ..utils import padlist
 
-from celery.bin.base import Command
+from .base import Command
 
 # Valid string -> bool coercions.
 BOOLS = {"1": True, "0": False,

+ 5 - 2
celery/bin/celerybeat.py

@@ -25,13 +25,16 @@
 from __future__ import with_statement
 from __future__ import absolute_import
 
+if __name__ == "__main__" and __package__ is None:
+    __package__ = "celery.bin.celerybeat"
+
 import os
 
 from functools import partial
 
-from celery.platforms import detached
+from ..platforms import detached
 
-from celery.bin.base import Command, Option, daemon_options
+from .base import Command, Option, daemon_options
 
 
 class BeatCommand(Command):

+ 10 - 7
celery/bin/celeryctl.py

@@ -2,6 +2,9 @@
 from __future__ import absolute_import
 from __future__ import with_statement
 
+if __name__ == "__main__" and __package__ is None:
+    __package__ = "celery.bin.celeryctl"
+
 import os
 import sys
 
@@ -11,13 +14,13 @@ from textwrap import wrap
 
 from anyjson import deserialize
 
-from celery import __version__
-from celery.app import app_or_default, current_app
-from celery.platforms import EX_OK, EX_FAILURE, EX_UNAVAILABLE
-from celery.utils import term
-from celery.utils.timeutils import maybe_iso8601
+from .. import __version__
+from ..app import app_or_default, current_app
+from ..platforms import EX_OK, EX_FAILURE, EX_UNAVAILABLE
+from ..utils import term
+from ..utils.timeutils import maybe_iso8601
 
-from celery.bin.base import Command as CeleryCommand
+from ..bin.base import Command as CeleryCommand
 
 HELP = """
 Type '%(prog_name)s <command> --help' for help using
@@ -228,7 +231,7 @@ class result(Command):
     )
 
     def run(self, task_id, *args, **kwargs):
-        from celery import registry
+        from .. import registry
         result_cls = self.app.AsyncResult
         task = kwargs.get("task")
 

+ 5 - 2
celery/bin/celeryd.py

@@ -73,6 +73,9 @@
 """
 from __future__ import absolute_import
 
+if __name__ == "__main__" and __package__ is None:
+    __package__ = "celery.bin.celeryd"
+
 import sys
 
 try:
@@ -80,7 +83,7 @@ try:
 except ImportError:  # pragma: no cover
     freeze_support = lambda: True  # noqa
 
-from celery.bin.base import Command, Option
+from .base import Command, Option
 
 
 class WorkerCommand(Command):
@@ -92,7 +95,7 @@ class WorkerCommand(Command):
         kwargs.pop("app", None)
         # Pools like eventlet/gevent needs to patch libs as early
         # as possible.
-        from celery import concurrency
+        from .. import concurrency
         kwargs["pool"] = concurrency.get_implementation(
                     kwargs.get("pool") or self.app.conf.CELERYD_POOL)
         return self.app.Worker(**kwargs).run()

+ 6 - 3
celery/bin/celeryd_detach.py

@@ -2,15 +2,18 @@
 from __future__ import absolute_import
 from __future__ import with_statement
 
+if __name__ == "__main__" and __package__ is None:
+    __package__ = "celery.bin.celeryd_detach"
+
 import os
 import sys
 
 from optparse import OptionParser, BadOptionError
 
-from celery import __version__
-from celery.platforms import detached
+from .. import __version__
+from ..platforms import detached
 
-from celery.bin.base import daemon_options
+from .base import daemon_options
 
 OPTION_LIST = daemon_options(default_pidfile="celeryd.pid")
 

+ 8 - 5
celery/bin/celeryd_multi.py

@@ -88,6 +88,9 @@ Examples
 """
 from __future__ import absolute_import
 
+if __name__ == "__main__" and __package__ is None:
+    __package__ = "celery.bin.celeryd_multi"
+
 import errno
 import os
 import signal
@@ -98,10 +101,10 @@ from collections import defaultdict
 from subprocess import Popen
 from time import sleep
 
-from celery import __version__
-from celery.platforms import shellsplit
-from celery.utils import term
-from celery.utils.encoding import from_utf8
+from .. import __version__
+from ..platforms import shellsplit
+from ..utils import term
+from ..utils.encoding import from_utf8
 
 SIGNAMES = set(sig for sig in dir(signal)
                         if sig.startswith("SIG") and "_" not in sig)
@@ -290,7 +293,7 @@ class MultiTool(object):
             self.note("")
 
     def getpids(self, p, cmd, callback=None):
-        from celery import platforms
+        from .. import platforms
         pidfile_template = p.options.setdefault("--pidfile", "celeryd@%n.pid")
 
         nodes = []

+ 9 - 6
celery/bin/celeryev.py

@@ -2,15 +2,18 @@
 from __future__ import absolute_import
 from __future__ import with_statement
 
+if __name__ == "__main__" and __package__ is None:
+    __package__ = "celery.bin.celeryev"
+
 import os
 import sys
 
 from functools import partial
 
-from celery import platforms
-from celery.platforms import detached
+from .. import platforms
+from ..platforms import detached
 
-from celery.bin.base import Command, Option, daemon_options
+from .base import Command, Option, daemon_options
 
 
 class EvCommand(Command):
@@ -41,19 +44,19 @@ class EvCommand(Command):
             os.chdir(workdir)
 
     def run_evdump(self):
-        from celery.events.dumper import evdump
+        from ..events.dumper import evdump
         self.set_process_status("dump")
         return evdump(app=self.app)
 
     def run_evtop(self):
-        from celery.events.cursesmon import evtop
+        from ..events.cursesmon import evtop
         self.set_process_status("top")
         return evtop(app=self.app)
 
     def run_evcam(self, camera, logfile=None, pidfile=None, uid=None,
             gid=None, umask=None, working_directory=None,
             detach=False, **kwargs):
-        from celery.events.snapshot import evcam
+        from ..events.snapshot import evcam
         workdir = working_directory
         self.set_process_status("cam")
         kwargs["app"] = self.app