summary refs log tree commit diff
diff options
context:
space:
mode:
authorMartin Milata <martin@martinmilata.cz>2020-12-31 13:57:43 +0100
committerMartin Milata <martin@martinmilata.cz>2020-12-31 13:58:17 +0100
commit97e51c67d4af80063664f34663a5e3db92db4d75 (patch)
tree1301cdf7a5570d54b3244e74060d6ad858854772
parentb4b338eedc4faa4c9ef3120783634664e2347c48 (diff)
downloadnixpkgs-97e51c67d4af80063664f34663a5e3db92db4d75.tar
nixpkgs-97e51c67d4af80063664f34663a5e3db92db4d75.tar.gz
nixpkgs-97e51c67d4af80063664f34663a5e3db92db4d75.tar.bz2
nixpkgs-97e51c67d4af80063664f34663a5e3db92db4d75.tar.lz
nixpkgs-97e51c67d4af80063664f34663a5e3db92db4d75.tar.xz
nixpkgs-97e51c67d4af80063664f34663a5e3db92db4d75.tar.zst
nixpkgs-97e51c67d4af80063664f34663a5e3db92db4d75.zip
nixos/moinmoin: fix module by switching to eventlet worker
The service was failing with:

gunicorn[2192104]: [2020-12-31 13:35:28 +0000] [2192104] [ERROR] Exception in worker process
gunicorn[2192104]: Traceback (most recent call last):
gunicorn[2192104]:   File "/nix/store/jmc14qf1sfnlhw27xyyj862ghkmdkj5a-python2.7-gunicorn-19.10.0/lib/python2.7/site-packages/gunicorn/arbiter.py", line 586, in spawn_worker
gunicorn[2192104]:     worker.init_process()
gunicorn[2192104]:   File "/nix/store/jmc14qf1sfnlhw27xyyj862ghkmdkj5a-python2.7-gunicorn-19.10.0/lib/python2.7/site-packages/gunicorn/workers/ggevent.py", line 196, in init_process
gunicorn[2192104]:     self.patch()
gunicorn[2192104]:   File "/nix/store/jmc14qf1sfnlhw27xyyj862ghkmdkj5a-python2.7-gunicorn-19.10.0/lib/python2.7/site-packages/gunicorn/workers/ggevent.py", line 65, in patch
gunicorn[2192104]:     monkey.patch_all(subprocess=True)
gunicorn[2192104]:   File "/nix/store/fysf67w3i8iv1hfvp536nl8jbzqyk1s7-python-2.7.18-env/lib/python2.7/site-packages/gevent/monkey.py", line 1160, in patch_all
gunicorn[2192104]:     from gevent import events
gunicorn[2192104]:   File "/nix/store/fysf67w3i8iv1hfvp536nl8jbzqyk1s7-python-2.7.18-env/lib/python2.7/site-packages/gevent/events.py", line 67, in <module>
gunicorn[2192104]:     from zope.interface import Interface
gunicorn[2192104]: ImportError: No module named zope.interface
-rw-r--r--nixos/modules/services/web-apps/moinmoin.nix4
1 files changed, 2 insertions, 2 deletions
diff --git a/nixos/modules/services/web-apps/moinmoin.nix b/nixos/modules/services/web-apps/moinmoin.nix
index 3a876f75f4a..7a54255a46e 100644
--- a/nixos/modules/services/web-apps/moinmoin.nix
+++ b/nixos/modules/services/web-apps/moinmoin.nix
@@ -211,7 +211,7 @@ in
             environment = let
               penv = python.buildEnv.override {
                 # setuptools: https://github.com/benoitc/gunicorn/issues/1716
-                extraLibs = [ python.pkgs.gevent python.pkgs.setuptools pkg ];
+                extraLibs = [ python.pkgs.eventlet python.pkgs.setuptools pkg ];
               };
             in {
               PYTHONPATH = "${dataDir}/${wikiIdent}/config:${penv}/${python.sitePackages}";
@@ -233,7 +233,7 @@ in
               ExecStart = ''${python.pkgs.gunicorn}/bin/gunicorn moin_wsgi \
                 --name gunicorn-${wikiIdent} \
                 --workers ${toString cfg.gunicorn.workers} \
-                --worker-class gevent \
+                --worker-class eventlet \
                 --bind unix:/run/moin/${wikiIdent}/gunicorn.sock
               '';