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