1{ stdenv
2, lib
3, buildPythonPackage
4, fetchFromGitHub
5, cliff
6, oslo-i18n
7, oslo-utils
8, openstacksdk
9, pbr
10, requests-mock
11, simplejson
12, stestr
13}:
14
15buildPythonPackage rec {
16 pname = "osc-lib";
17 version = "2.8.0";
18
19 src = fetchFromGitHub {
20 owner = "openstack";
21 repo = "osc-lib";
22 rev = version;
23 hash = "sha256-ijL/m9BTAgDUjqy77nkl3rDppeUPBycmEqlL6uMruIA=";
24 };
25
26 # fake version to make pbr.packaging happy and not reject it...
27 PBR_VERSION = version;
28
29 nativeBuildInputs = [
30 pbr
31 ];
32
33 propagatedBuildInputs = [
34 cliff
35 openstacksdk
36 oslo-i18n
37 oslo-utils
38 simplejson
39 ];
40
41 nativeCheckInputs = [
42 requests-mock
43 stestr
44 ];
45
46 checkPhase = ''
47 # tests parse cli output which slightly changed
48 stestr run -e <(echo "
49 osc_lib.tests.utils.test_tags.TestTagHelps.test_add_tag_filtering_option_to_parser
50 osc_lib.tests.utils.test_tags.TestTagHelps.test_add_tag_option_to_parser_for_create
51 osc_lib.tests.utils.test_tags.TestTagHelps.test_add_tag_option_to_parser_for_set
52 osc_lib.tests.utils.test_tags.TestTagHelps.test_add_tag_option_to_parser_for_unset
53 ")
54 '';
55
56 pythonImportsCheck = [ "osc_lib" ];
57
58 meta = with lib; {
59 description = "OpenStackClient Library";
60 homepage = "https://github.com/openstack/osc-lib";
61 license = licenses.asl20;
62 maintainers = teams.openstack.members;
63 };
64}