1{ lib
2, buildPythonPackage
3, fetchPypi
4, psutil
5, pytestCheckHook
6, pyyaml
7, pyzmq
8, tornado
9}:
10
11buildPythonPackage rec {
12 pname = "circus";
13 version = "0.18.0";
14 format = "flit";
15
16 src = fetchPypi {
17 inherit pname version;
18 hash = "sha256-GTzoIk4GjO1mckz0gxBvtmdLUaV1g6waDn7Xp+6Mcas=";
19 };
20
21 propagatedBuildInputs = [
22 psutil
23 pyzmq
24 tornado
25 ];
26
27 nativeCheckInputs = [
28 pytestCheckHook
29 pyyaml
30 ];
31
32 disabledTests = [
33 # these tests raise circus.tests.support.TimeoutException
34 "test_reload1"
35 "test_reload2"
36 "test_reload_sequential"
37 "test_reload_uppercase"
38 "test_reload_wid_1_worker"
39 "test_reload_wid_4_workers"
40 "test_add"
41 "test_add_start"
42 "test_command_already_running"
43 "test_launch_cli"
44 "test_handler"
45 "test_resource_watcher_max_cpu"
46 "test_resource_watcher_max_mem"
47 "test_resource_watcher_max_mem_abs"
48 "test_resource_watcher_min_cpu"
49 "test_resource_watcher_min_mem"
50 "test_resource_watcher_min_mem_abs"
51 "test_full_stats"
52 "test_watchdog_discovery_found"
53 "test_watchdog_discovery_not_found"
54 "test_dummy"
55 "test_handler"
56 "test_stdin_socket"
57 "test_stop_and_restart"
58 "test_stream"
59 "test_inherited"
60 "test_set_before_launch"
61 "test_set_by_arbiter"
62 "test_max_age"
63 "test_signal"
64 "test_exits_within_graceful_timeout"
65 "test_kills_after_graceful_timeout"
66 # this test requires socket communication
67 "test_plugins"
68 ];
69
70 pythonImportsCheck = [ "circus" ];
71
72 meta = with lib; {
73 description = "A process and socket manager";
74 homepage = "https://github.com/circus-tent/circus";
75 license = licenses.asl20;
76 };
77}