nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 adal,
5 buildPythonPackage,
6 certifi,
7 durationpy,
8 fetchFromGitHub,
9 google-auth,
10 mock,
11 pytestCheckHook,
12 python-dateutil,
13 pyyaml,
14 requests,
15 requests-oauthlib,
16 setuptools,
17 six,
18 urllib3,
19 websocket-client,
20}:
21
22buildPythonPackage rec {
23 pname = "kubernetes";
24 version = "35.0.0";
25 pyproject = true;
26
27 src = fetchFromGitHub {
28 owner = "kubernetes-client";
29 repo = "python";
30 tag = "v${version}";
31 hash = "sha256-q52LqOz8aQkzWPwEy1c2jUQJ3hQ2sDVrYGkOgOc7Mm0=";
32 };
33
34 build-system = [
35 setuptools
36 ];
37
38 dependencies = [
39 certifi
40 durationpy
41 google-auth
42 python-dateutil
43 pyyaml
44 requests
45 requests-oauthlib
46 six
47 urllib3
48 websocket-client
49 ];
50
51 optional-dependencies = {
52 adal = [ adal ];
53 };
54
55 pythonImportsCheck = [ "kubernetes" ];
56
57 nativeCheckInputs = [
58 mock
59 pytestCheckHook
60 ]
61 ++ lib.concatAttrValues optional-dependencies;
62
63 disabledTests = lib.optionals stdenv.hostPlatform.isDarwin [
64 # AssertionError: <class 'urllib3.poolmanager.ProxyManager'> != <class 'urllib3.poolmanager.Poolmanager'>
65 "test_rest_proxycare"
66 ];
67
68 meta = {
69 description = "Kubernetes Python client";
70 homepage = "https://github.com/kubernetes-client/python";
71 changelog = "https://github.com/kubernetes-client/python/releases/tag/${src.tag}";
72 license = lib.licenses.asl20;
73 };
74}