Ver Fonte

Show error message if "celeryd" run on windows, telling the user to run "pyhton -m celery.bin.celeryd" instead.

Ask Solem há 14 anos atrás
pai
commit
a50925b32b
3 ficheiros alterados com 40 adições e 36 exclusões
  1. 4 28
      bin/celeryd
  2. 19 0
      celery/bin/celeryd.py
  3. 17 8
      setup.py

+ 4 - 28
bin/celeryd

@@ -1,31 +1,7 @@
 #!/usr/bin/env python
-import sys
-
-from celery.bin import celeryd
-
-WINDOWS_MESSAGE = """
-
-The celeryd command does not work on Windows.
-
-Instead, please use:
-
-    ..> python -m celery.bin.celeryd
-
-You can also supply arguments:
-
-    ..> python -m celery.bin.celeryd --concurrency=10 --loglevel=DEBUG
-
-
-"""
-
-def main():
-    if sys.platform == "win32":
-        sys.stderr.write(WINDOWS_MESSAGE)
-        sys.exit()
-
-    celeryd.main()
 
 if __name__ == "__main__":
-    import multiprocessing
-    multiprocessing.freeze_support()
-    main()
+    from celery.bin import celeryd
+    from multiprocessing import freeze_support
+    freeze_support()
+    celeryd.main()

+ 19 - 0
celery/bin/celeryd.py

@@ -157,5 +157,24 @@ def main():
     worker = WorkerCommand()
     worker.execute_from_commandline()
 
+
+
+def windows_main():
+    sys.stderr.write("""
+
+The celeryd command does not work on Windows.
+
+Instead, please use:
+
+    ..> python -m celery.bin.celeryd
+
+You can also supply arguments:
+
+    ..> python -m celery.bin.celeryd --concurrency=10 --loglevel=DEBUG
+
+
+    """.strip())
+
+
 if __name__ == "__main__":          # pragma: no cover
     main()

+ 17 - 8
setup.py

@@ -144,6 +144,22 @@ if os.path.exists("README.rst"):
 else:
     long_description = "See http://pypi.python.org/pypi/celery"
 
+
+console_scripts = [
+        'celerybeat = celery.bin.celerybeat:main',
+        'camqadm = celery.bin.camqadm:main',
+        'celeryev = celery.bin.celeryev:main',
+        'celeryctl = celery.bin.celeryctl:main',
+        'celeryd-multi = celery.bin.celeryd_multi:main',
+]
+
+import platform
+if platform.system() == "Windows":
+    console_scripts.append('celeryd = celery.bin.celeryd:windows_main')
+else:
+    console_scripts.append('celeryd = celery.bin.celeryd:main')
+
+
 setup(
     name="celery",
     version=distmeta.__version__,
@@ -183,14 +199,7 @@ setup(
         "Programming Language :: Python :: 2.7",
     ],
     entry_points={
-        'console_scripts': [
-            'celeryd = celery.bin.celeryd:main',
-            'celerybeat = celery.bin.celerybeat:main',
-            'camqadm = celery.bin.camqadm:main',
-            'celeryev = celery.bin.celeryev:main',
-            'celeryctl = celery.bin.celeryctl:main',
-            'celeryd-multi = celery.bin.celeryd_multi:main',
-            ],
+        'console_scripts': console_scripts,
     },
     long_description=long_description,
 )