1{ stdenv, buildPythonPackage, fetchFromGitHub, python
2
3, pbr, testtools, testresources, testrepository
4, requests-mock, fixtures, openssl, oslotest, pep8
5
6, oslo-serialization, oslo-config, oslo-i18n, oslo-utils
7, Babel, prettytable, requests, six, iso8601, stevedore
8, netaddr, debtcollector, bandit, webob, mock, pycrypto
9}:
10
11buildPythonPackage rec {
12 name = "keystoneclient-${version}";
13 version = "1.8.1";
14
15 src = fetchFromGitHub {
16 owner = "openstack";
17 repo = "python-keystoneclient";
18 rev = version;
19 sha256 = "0yayn1hb3mncqb0isy8vy6d519xya7mhf5pcbn60fzdqjrkj2prq";
20 };
21
22 PBR_VERSION = "${version}";
23
24 buildInputs = [
25 pbr testtools testresources testrepository requests-mock fixtures openssl
26 oslotest pep8
27 ];
28 propagatedBuildInputs = [
29 oslo-serialization oslo-config oslo-i18n oslo-utils
30 Babel prettytable requests six iso8601 stevedore
31 netaddr debtcollector bandit webob mock pycrypto
32 ];
33
34 postPatch = ''
35 sed -i 's@python@${python.interpreter}@' .testr.conf
36 sed -ie '/argparse/d' requirements.txt
37 '';
38
39 doCheck = false; # The checkPhase below is broken
40
41 checkPhase = ''
42 patchShebangs run_tests.sh
43 ./run_tests.sh
44 '';
45
46 meta = with stdenv.lib; {
47 homepage = https://github.com/openstack/python-novaclient/;
48 description = "Client library and command line tool for the OpenStack Nova API";
49 license = licenses.asl20;
50 platforms = platforms.linux;
51 };
52}