1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 fetchFromGitHub, 6 7 # build-system 8 setuptools, 9 10 # dependencies 11 dask, 12 distributed, 13 14 # checks 15 cryptography, 16 pytest-asyncio, 17 pytestCheckHook, 18}: 19 20buildPythonPackage rec { 21 pname = "dask-jobqueue"; 22 version = "0.9.0"; 23 pyproject = true; 24 25 src = fetchFromGitHub { 26 owner = "dask"; 27 repo = "dask-jobqueue"; 28 tag = version; 29 hash = "sha256-YujfhjOJzl4xsjjsyrQkEu/CBR04RwJ79c1iSTcMIgw="; 30 }; 31 32 build-system = [ setuptools ]; 33 34 dependencies = [ 35 dask 36 distributed 37 ]; 38 39 nativeCheckInputs = [ 40 cryptography 41 pytest-asyncio 42 pytestCheckHook 43 ]; 44 45 disabledTests = 46 [ 47 # Require some unavailable pytest fixtures 48 "test_adapt" 49 "test_adaptive" 50 "test_adaptive_cores_mem" 51 "test_adaptive_grouped" 52 "test_adapt_parameters" 53 "test_basic" 54 "test_basic_scale_edge_cases" 55 "test_cluster" 56 "test_cluster_error_scheduler_arguments_should_use_scheduler_options" 57 "test_cluster_has_cores_and_memory" 58 "test_command_template" 59 "test_complex_cancel_command" 60 "test_config" 61 "test_dashboard_link" 62 "test_default_number_of_worker_processes" 63 "test_deprecation_env_extra" 64 "test_deprecation_extra" 65 "test_deprecation_job_extra" 66 "test_different_interfaces_on_scheduler_and_workers" 67 "test_docstring_cluster" 68 "test_extra_args_broken_cancel" 69 "test_forward_ip" 70 "test_import_scheduler_options_from_config" 71 "test_job" 72 "test_jobqueue_job_call" 73 "test_log_directory" 74 "test_scale_cores_memory" 75 "test_scale_grouped" 76 "test_scheduler_options" 77 "test_scheduler_options_interface" 78 "test_security" 79 "test_security_temporary" 80 "test_security_temporary_defaults" 81 "test_shebang_settings" 82 "test_use_stdin" 83 "test_worker_name_uses_cluster_name" 84 "test_wrong_parameter_error" 85 ] 86 ++ lib.optionals stdenv.hostPlatform.isDarwin [ 87 # ValueError: invalid operation on non-started TCPListener 88 "test_header" 89 "test_lsf_unit_detection" 90 "test_lsf_unit_detection_without_file" 91 "test_runner" 92 ]; 93 94 pythonImportsCheck = [ "dask_jobqueue" ]; 95 96 __darwinAllowLocalNetworking = true; 97 98 meta = { 99 description = "Deploy Dask on job schedulers like PBS, SLURM, and SGE"; 100 homepage = "https://github.com/dask/dask-jobqueue"; 101 license = lib.licenses.bsd3; 102 maintainers = with lib.maintainers; [ GaetanLepage ]; 103 }; 104}