1{ 2 lib, 3 stdenv, 4 adal, 5 buildPythonPackage, 6 certifi, 7 fetchFromGitHub, 8 google-auth, 9 mock, 10 pytestCheckHook, 11 python-dateutil, 12 pythonOlder, 13 pythonRelaxDepsHook, 14 pyyaml, 15 requests, 16 requests-oauthlib, 17 setuptools, 18 six, 19 urllib3, 20 websocket-client, 21}: 22 23buildPythonPackage rec { 24 pname = "kubernetes"; 25 version = "29.0.0"; 26 pyproject = true; 27 28 disabled = pythonOlder "3.6"; 29 30 src = fetchFromGitHub { 31 owner = "kubernetes-client"; 32 repo = "python"; 33 rev = "refs/tags/v${version}"; 34 hash = "sha256-KChfiXYnJTeIW6O7GaK/fMxU2quIvbjc4gB4aZBeTtI="; 35 }; 36 37 postPatch = '' 38 substituteInPlace kubernetes/base/config/kube_config_test.py \ 39 --replace-fail "assertEquals" "assertEqual" 40 ''; 41 42 pythonRelaxDeps = [ "urllib3" ]; 43 44 build-system = [ 45 pythonRelaxDepsHook 46 setuptools 47 ]; 48 49 dependencies = [ 50 certifi 51 google-auth 52 python-dateutil 53 pyyaml 54 requests 55 requests-oauthlib 56 six 57 urllib3 58 websocket-client 59 ]; 60 61 passthru.optional-dependencies = { 62 adal = [ adal ]; 63 }; 64 65 pythonImportsCheck = [ "kubernetes" ]; 66 67 nativeCheckInputs = [ 68 mock 69 pytestCheckHook 70 ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies); 71 72 disabledTests = lib.optionals stdenv.isDarwin [ 73 # AssertionError: <class 'urllib3.poolmanager.ProxyManager'> != <class 'urllib3.poolmanager.Poolmanager'> 74 "test_rest_proxycare" 75 ]; 76 77 meta = with lib; { 78 description = "Kubernetes Python client"; 79 homepage = "https://github.com/kubernetes-client/python"; 80 changelog = "https://github.com/kubernetes-client/python/releases/tag/v${version}"; 81 license = licenses.asl20; 82 maintainers = with maintainers; [ lsix ]; 83 }; 84}