1{ lib, buildPythonPackage, fetchPypi, libxml2
2, m2crypto, ply, pyyaml, six, pbr, pythonOlder, isPy37
3, httpretty, lxml, mock, pytest, requests, decorator, unittest2
4}:
5
6buildPythonPackage rec {
7 pname = "pywbem";
8 version = "0.12.6";
9
10 # Support added in master https://github.com/pywbem/pywbem/commit/b2f2f1a151a30355bbc6652dca69a7b30bfe941e awaiting release
11 disabled = isPy37;
12
13 src = fetchPypi {
14 inherit pname version;
15 sha256 = "1dc6b745rrys600n05apdf6lb2vv5arlcwv7aiz9whgkbcd9qhki";
16 };
17
18 propagatedBuildInputs = [
19 mock
20 pbr
21 ply
22 pyyaml
23 six
24 ] ++ lib.optionals (pythonOlder "3.0") [ m2crypto ];
25
26 checkInputs = [
27 decorator
28 httpretty
29 libxml2
30 lxml
31 pytest
32 requests
33 unittest2
34 ];
35
36 postPatch = ''
37 # Uses deprecated library yamlordereddictloader
38 rm testsuite/test_client.py
39
40 # Wants `wbemcli` in PATH
41 rm testsuite/test_wbemcli.py
42
43 # Disables tests that use testfixtures which is currently broken by nonbuilding zope_component
44 rm testsuite/{test_logging,test_recorder,test_wbemconnection_mock}.*
45 '';
46
47 checkPhase = ''
48 pytest testsuite/
49 '';
50
51 meta = with lib; {
52 description = "Support for the WBEM standard for systems management";
53 homepage = https://pywbem.github.io;
54 license = licenses.lgpl21Plus;
55 maintainers = with maintainers; [ peterhoeg ];
56 };
57}