1{ 2 lib, 3 aiohttp, 4 buildPythonPackage, 5 colorlog, 6 cryptography, 7 fetchFromGitHub, 8 go, 9 pykerberos, 10 pythonOlder, 11 skein, 12 sqlalchemy, 13 traitlets, 14}: 15 16buildPythonPackage rec { 17 pname = "dask-gateway-server"; 18 version = "2023.9.0"; 19 format = "setuptools"; 20 21 disabled = pythonOlder "3.8"; 22 23 src = fetchFromGitHub { 24 owner = "dask"; 25 repo = "dask-gateway"; 26 rev = version; 27 hash = "sha256-hwNLcuFN6ItH5KhC2gDUsaZT7qTC48fPR/Qx6u8B1+M="; 28 }; 29 30 sourceRoot = "${src.name}/${pname}"; 31 32 nativeBuildInputs = [ go ]; 33 34 propagatedBuildInputs = [ 35 aiohttp 36 colorlog 37 cryptography 38 traitlets 39 ]; 40 41 optional-dependencies = { 42 kerberos = [ pykerberos ]; 43 jobqueue = [ sqlalchemy ]; 44 local = [ sqlalchemy ]; 45 yarn = [ 46 skein 47 sqlalchemy 48 ]; 49 }; 50 51 preBuild = '' 52 export HOME=$(mktemp -d) 53 ''; 54 55 # Tests requires cluster for testing 56 doCheck = false; 57 58 pythonImportsCheck = [ "dask_gateway_server" ]; 59 60 meta = with lib; { 61 description = "Multi-tenant server for securely deploying and managing multiple Dask clusters"; 62 homepage = "https://gateway.dask.org/"; 63 license = licenses.bsd3; 64 maintainers = [ ]; 65 }; 66}