1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 netaddr,
6 oslo-i18n,
7 pbr,
8 pyyaml,
9 requests,
10 rfc3986,
11 setuptools,
12 stevedore,
13 callPackage,
14}:
15
16buildPythonPackage rec {
17 pname = "oslo-config";
18 version = "10.0.0";
19 pyproject = true;
20
21 src = fetchPypi {
22 pname = "oslo_config";
23 inherit version;
24 hash = "sha256-Mz5nXbjGvncVs97PeMOYyhE4Q5IlqidGMuiTFIN/bqM=";
25 };
26
27 postPatch = ''
28 # only a small portion of the listed packages are actually needed for running the tests
29 # so instead of removing them one by one remove everything
30 rm test-requirements.txt
31 '';
32
33 build-system = [ setuptools ];
34
35 dependencies = [
36 netaddr
37 oslo-i18n
38 pbr
39 pyyaml
40 requests
41 rfc3986
42 stevedore
43 ];
44
45 # check in passthru.tests.pytest to escape infinite recursion with other oslo components
46 doCheck = false;
47
48 passthru.tests = {
49 tests = callPackage ./tests.nix { };
50 };
51
52 pythonImportsCheck = [ "oslo_config" ];
53
54 meta = with lib; {
55 description = "Oslo Configuration API";
56 homepage = "https://github.com/openstack/oslo.config";
57 license = licenses.asl20;
58 teams = [ teams.openstack ];
59 };
60}