at master 1.6 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 fixtures, 6 pytestCheckHook, 7 pythonOlder, 8 requests, 9 requests-mock, 10 rich, 11 setuptools, 12 urllib3, 13 writableTmpDirAsHomeHook, 14}: 15 16buildPythonPackage rec { 17 pname = "podman"; 18 version = "5.6.0"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.11"; 22 23 src = fetchFromGitHub { 24 owner = "containers"; 25 repo = "podman-py"; 26 tag = "v${version}"; 27 hash = "sha256-VlPhW0FL51EQQRlDrd0F3ByXu/xpydXLSCM5umzpIW0="; 28 }; 29 30 build-system = [ setuptools ]; 31 32 dependencies = [ 33 requests 34 urllib3 35 ]; 36 37 optional-dependencies = { 38 progress_bar = [ rich ]; 39 }; 40 41 nativeCheckInputs = [ 42 fixtures 43 pytestCheckHook 44 requests-mock 45 writableTmpDirAsHomeHook 46 ]; 47 48 pythonImportsCheck = [ "podman" ]; 49 50 disabledTests = [ 51 # Integration tests require a running container setup 52 "AdapterIntegrationTest" 53 "ContainersIntegrationTest" 54 "ContainersExecIntegrationTests" 55 "ImagesIntegrationTest" 56 "ManifestsIntegrationTest" 57 "NetworksIntegrationTest" 58 "PodsIntegrationTest" 59 "SecretsIntegrationTest" 60 "SystemIntegrationTest" 61 "VolumesIntegrationTest" 62 ]; 63 64 disabledTestPaths = [ 65 # Access to the host's filesystem 66 "podman/tests/integration/test_container_create.py" 67 "podman/tests/unit/test_utils.py" 68 ]; 69 70 meta = with lib; { 71 description = "Python bindings for Podman's RESTful API"; 72 homepage = "https://github.com/containers/podman-py"; 73 changelog = "https://github.com/containers/podman-py/releases/tag/${src.tag}"; 74 license = licenses.asl20; 75 maintainers = with maintainers; [ fab ]; 76 }; 77}