1{ lib
2, buildPythonPackage
3, fetchPypi
4, betamax
5, hacking
6, iso8601
7, lxml
8, oauthlib
9, os-service-types
10, oslo-config
11, oslo-utils
12, pbr
13, pycodestyle
14, pyyaml
15, requests
16, requests-kerberos
17, requests-mock
18, six
19, stestr
20, stevedore
21, testresources
22, testtools
23}:
24
25buildPythonPackage rec {
26 pname = "keystoneauth1";
27 version = "5.1.2";
28
29 src = fetchPypi {
30 inherit pname version;
31 hash = "sha256-2fdIStX8mwu7fsw8vzeVoXBpT72EglEzHlS6SLvuzHI=";
32 };
33
34 postPatch = ''
35 # only a small portion of the listed packages are actually needed for running the tests
36 # so instead of removing them one by one remove everything
37 rm test-requirements.txt
38 '';
39
40 propagatedBuildInputs = [
41 betamax
42 iso8601
43 lxml
44 oauthlib
45 os-service-types
46 pbr
47 requests
48 requests-kerberos
49 six
50 stevedore
51 ];
52
53 nativeCheckInputs = [
54 hacking
55 oslo-config
56 oslo-utils
57 pycodestyle
58 pyyaml
59 requests-mock
60 stestr
61 testresources
62 testtools
63 ];
64
65 checkPhase = ''
66 stestr run
67 '';
68
69 pythonImportsCheck = [ "keystoneauth1" ];
70
71 meta = with lib; {
72 description = "Authentication Library for OpenStack Identity";
73 homepage = "https://github.com/openstack/keystoneauth";
74 license = licenses.asl20;
75 maintainers = teams.openstack.members;
76 };
77}