1{ lib
2, stdenv
3, buildPythonPackage
4, fetchPypi
5, isPy27
6, backports_ssl_match_hostname
7, mock
8, paramiko
9, pytestCheckHook
10, requests
11, six
12, websocket-client
13}:
14
15buildPythonPackage rec {
16 pname = "docker";
17 version = "5.0.3";
18
19 src = fetchPypi {
20 inherit pname version;
21 sha256 = "d916a26b62970e7c2f554110ed6af04c7ccff8e9f81ad17d0d40c75637e227fb";
22 };
23
24 nativeBuildInputs = lib.optional isPy27 mock;
25
26 propagatedBuildInputs = [
27 paramiko
28 requests
29 six
30 websocket-client
31 ] ++ lib.optional isPy27 backports_ssl_match_hostname;
32
33 checkInputs = [
34 pytestCheckHook
35 ];
36
37 pytestFlagsArray = [ "tests/unit" ];
38
39 # Deselect socket tests on Darwin because it hits the path length limit for a Unix domain socket
40 disabledTests = lib.optionals stdenv.isDarwin [ "api_test" "stream_response" "socket_file" ];
41
42 dontUseSetuptoolsCheck = true;
43
44 meta = with lib; {
45 description = "An API client for docker written in Python";
46 homepage = "https://github.com/docker/docker-py";
47 license = licenses.asl20;
48 maintainers = with maintainers; [ jonringer ];
49 };
50}