1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 debtcollector,
6 oslotest,
7 stestr,
8 pbr,
9 setuptools,
10}:
11
12buildPythonPackage rec {
13 pname = "oslo.context";
14 version = "5.6.0";
15 pyproject = true;
16
17 src = fetchPypi {
18 inherit pname version;
19 hash = "sha256-UiLDJja+BwojDfnTFBoLJ6lfCjtpePTBSFvK2kekw8s=";
20 };
21
22 postPatch = ''
23 # only a small portion of the listed packages are actually needed for running the tests
24 # so instead of removing them one by one remove everything
25 rm test-requirements.txt
26 '';
27
28 build-system = [ setuptools ];
29
30 dependencies = [
31 debtcollector
32 pbr
33 ];
34
35 nativeCheckInputs = [
36 oslotest
37 stestr
38 ];
39
40 checkPhase = ''
41 runHook preCheck
42 stestr run
43 runHook postCheck
44 '';
45
46 pythonImportsCheck = [ "oslo_context" ];
47
48 meta = with lib; {
49 description = "Oslo Context library";
50 homepage = "https://github.com/openstack/oslo.context";
51 license = licenses.asl20;
52 maintainers = teams.openstack.members;
53 };
54}