at 18.09-beta 1.5 kB view raw
1{ stdenv, buildPythonPackage, fetchPypi, fetchpatch, iana-etc, libredirect, 2 pytest, case, kombu, billiard, pytz, anyjson, amqp, eventlet 3}: 4 5let 6 7 # Needed for celery 8 pytest_32 = pytest.overridePythonAttrs( oldAttrs: rec { 9 version = "3.2.5"; 10 src = oldAttrs.src.override { 11 inherit version; 12 sha256 = "6d5bd4f7113b444c55a3bbb5c738a3dd80d43563d063fc42dcb0aaefbdd78b81"; 13 }; 14 }); 15 16in buildPythonPackage rec { 17 pname = "celery"; 18 version = "4.2.0"; 19 20 src = fetchPypi { 21 inherit pname version; 22 sha256 = "ff727c115533edbc7b81b2b4ba1ec88d1c2fc4836e1e2f4c3c33a76ff53e5d7f"; 23 }; 24 25 # Skip test_RedisBackend.test_timeouts_in_url_coerced 26 # See https://github.com/celery/celery/pull/4847 27 patches = fetchpatch { 28 url = https://github.com/celery/celery/commit/b2668607c909c61becd151905b4525190c19ff4a.patch; 29 sha256 = "11w0z2ycyh8kccj4y69zb7bxppiipcwwigg6jn1q9yrcsvz170jq"; 30 }; 31 32 # make /etc/protocols accessible to fix socket.getprotobyname('tcp') in sandbox 33 preCheck = stdenv.lib.optionalString stdenv.isLinux '' 34 export NIX_REDIRECTS=/etc/protocols=${iana-etc}/etc/protocols \ 35 LD_PRELOAD=${libredirect}/lib/libredirect.so 36 ''; 37 postCheck = stdenv.lib.optionalString stdenv.isLinux '' 38 unset NIX_REDIRECTS LD_PRELOAD 39 ''; 40 41 checkInputs = [ pytest_32 case ]; 42 propagatedBuildInputs = [ kombu billiard pytz anyjson amqp eventlet ]; 43 44 meta = with stdenv.lib; { 45 homepage = https://github.com/celery/celery/; 46 description = "Distributed task queue"; 47 license = licenses.bsd3; 48 }; 49}