Pull request #2959 updated Connecting to https://api.github.com using docker-jenkins/****** (docker-jenkins GitHub credentials) Loading trusted files from base branch master at a48a5a9647761406d66e8271f19fab7fa0c5f582 rather than 99bf2a304915a61639744a4ab0d3e8abc84e050d Obtained Jenkinsfile from a48a5a9647761406d66e8271f19fab7fa0c5f582 Running in Durability level: PERFORMANCE_OPTIMIZED Loading library jps@master Examining docker/jps Attempting to resolve master as a branch Resolved master as branch master at revision 5d8b74fd03a1c7cc00e1c1f32d100ed97a17f4f0 The recommended git tool is: NONE using credential jps-reader > git rev-parse --resolve-git-dir /var/cloudbees-jenkins-distribution/workspace/docker-py_PR-2959@libs/jps/.git # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/docker/jps.git # timeout=10 Fetching without tags Fetching upstream changes from https://github.com/docker/jps.git > git --version # timeout=10 > git --version # 'git version 2.20.1' using GIT_ASKPASS to set credentials GitHub credentials for docker/jps > git fetch --no-tags --force --progress -- https://github.com/docker/jps.git +refs/heads/master:refs/remotes/origin/master # timeout=10 Checking out Revision 5d8b74fd03a1c7cc00e1c1f32d100ed97a17f4f0 (master) > git config core.sparsecheckout # timeout=10 > git checkout -f 5d8b74fd03a1c7cc00e1c1f32d100ed97a17f4f0 # timeout=10 Commit message: "Merge pull request #25 from ingshtrom/in-2733-load-from-file" > git rev-list --no-walk 5d8b74fd03a1c7cc00e1c1f32d100ed97a17f4f0 # timeout=10 Excluding src/test/ from checkout of git https://github.com/docker/jps.git so that shared library test code cannot be accessed by Pipelines. To remove this log message, move the test code outside of src/. To restore the previous behavior that allowed access to files in src/test/, pass -Dorg.jenkinsci.plugins.workflow.libs.SCMSourceRetriever.INCLUDE_SRC_TEST_IN_LIBRARIES=true to the java command used to start Jenkins. [Pipeline] Start of Pipeline [Pipeline] node Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-08f7ffcb17cf6c747) in /home/ubuntu/workspace/docker-py_PR-2959 [Pipeline] { [Pipeline] withDockerRegistry $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/ad2b1291-dc55-49dd-a189-0795e1697e0d/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/docker-py_PR-2959:/workspace busybox chown -R 1000:1000 /workspace [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (build image) [Pipeline] checkout The recommended git tool is: git using credential docker-jenkins-github-credentials Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Fetching without tags Cloning repository https://github.com/docker/docker-py.git > git init /home/ubuntu/workspace/docker-py_PR-2959 # timeout=10 Fetching upstream changes from https://github.com/docker/docker-py.git > git --version # timeout=10 > git --version # 'git version 2.25.1' using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2959/head:refs/remotes/origin/PR-2959 +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/2959/head:refs/remotes/origin/PR-2959 # timeout=10 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 Fetching upstream changes from https://github.com/docker/docker-py.git using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2959/head:refs/remotes/origin/PR-2959 +refs/heads/master:refs/remotes/origin/master # timeout=10 Merging remotes/origin/master commit a48a5a9647761406d66e8271f19fab7fa0c5f582 into PR head commit 99bf2a304915a61639744a4ab0d3e8abc84e050d Merge succeeded, producing 99bf2a304915a61639744a4ab0d3e8abc84e050d Checking out Revision 99bf2a304915a61639744a4ab0d3e8abc84e050d (PR-2959) Commit message: "Updated unit tests" First time build. Skipping changelog. [Pipeline] sh + git rev-parse HEAD [Pipeline] withDockerRegistry [Pipeline] { [Pipeline] isUnix [Pipeline] sh > git config core.sparsecheckout # timeout=10 > git checkout -f 99bf2a304915a61639744a4ab0d3e8abc84e050d # timeout=10 > git remote # timeout=10 > git config --get remote.origin.url # timeout=10 using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git merge a48a5a9647761406d66e8271f19fab7fa0c5f582 # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 99bf2a304915a61639744a4ab0d3e8abc84e050d # timeout=10 > git rev-list --no-walk 78f444ea715b96436f30999b34ca3266bf3b56b8 # timeout=10 + docker pull dockerpinata/docker-py:sshdind-99bf2a304915a61639744a4ab0d3e8abc84e050d Error response from daemon: manifest for dockerpinata/docker-py:sshdind-99bf2a304915a61639744a4ab0d3e8abc84e050d not found: manifest unknown: manifest unknown [Pipeline] isUnix [Pipeline] sh + docker build -t dockerpinata/docker-py:sshdind-99bf2a304915a61639744a4ab0d3e8abc84e050d -f tests/Dockerfile-ssh-dind . Sending build context to Docker daemon 1.375MB Step 1/11 : ARG API_VERSION=1.39 Step 2/11 : ARG ENGINE_VERSION=19.03.12 Step 3/11 : FROM docker:${ENGINE_VERSION}-dind ---> 66dc2d45749a Step 4/11 : RUN apk add --no-cache openssh ---> Using cache ---> fb4fa1b7d6c6 Step 5/11 : RUN ssh-keygen -A ---> Using cache ---> ebdb13069528 Step 6/11 : RUN echo "IgnoreUserKnownHosts yes" > /etc/ssh/sshd_config && echo "PubkeyAuthentication yes" >> /etc/ssh/sshd_config && echo "PermitRootLogin yes" >> /etc/ssh/sshd_config ---> Using cache ---> ffbb0394408a Step 7/11 : COPY tests/ssh-keys/authorized_keys /root/.ssh/authorized_keys ---> Using cache ---> 504c95b81233 Step 8/11 : RUN chmod 600 /root/.ssh/authorized_keys ---> Using cache ---> 3e58901c5497 Step 9/11 : RUN echo "root:root" | chpasswd ---> Using cache ---> d71fade76364 Step 10/11 : RUN ln -s /usr/local/bin/docker /usr/bin/docker ---> Using cache ---> f9e90f5c01d5 Step 11/11 : EXPOSE 22 ---> Using cache ---> 0407e7491763 Successfully built 0407e7491763 Successfully tagged dockerpinata/docker-py:sshdind-99bf2a304915a61639744a4ab0d3e8abc84e050d [Pipeline] isUnix [Pipeline] sh $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/2bdeb274-fe24-4c46-a670-ed0ee9bb4af4/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded + docker tag dockerpinata/docker-py:sshdind-99bf2a304915a61639744a4ab0d3e8abc84e050d dockerpinata/docker-py:sshdind-99bf2a304915a61639744a4ab0d3e8abc84e050d [Pipeline] isUnix [Pipeline] sh + docker push dockerpinata/docker-py:sshdind-99bf2a304915a61639744a4ab0d3e8abc84e050d The push refers to repository [docker.io/dockerpinata/docker-py] 762f0e73abe3: Preparing 023c2baf0550: Preparing 6f228874b90b: Preparing 82fa0c67c367: Preparing 0c31ee1fa0da: Preparing 24d1f019eebf: Preparing 9eb3400139ee: Preparing 1149e736aa92: Preparing 39e79983ac8b: Preparing da8c28465f82: Preparing d1292e236c36: Preparing 8890c171a12b: Preparing 4ae5bd84d450: Preparing 723a561964c8: Preparing 78764725b56c: Preparing 51d6d3d09136: Preparing 1507bc794612: Preparing 50644c29ef5a: Preparing 24d1f019eebf: Waiting 9eb3400139ee: Waiting 1149e736aa92: Waiting 39e79983ac8b: Waiting da8c28465f82: Waiting d1292e236c36: Waiting 8890c171a12b: Waiting 4ae5bd84d450: Waiting 723a561964c8: Waiting 78764725b56c: Waiting 51d6d3d09136: Waiting 1507bc794612: Waiting 50644c29ef5a: Waiting 762f0e73abe3: Layer already exists 82fa0c67c367: Layer already exists 6f228874b90b: Layer already exists 0c31ee1fa0da: Layer already exists 023c2baf0550: Layer already exists 1149e736aa92: Layer already exists 39e79983ac8b: Layer already exists 24d1f019eebf: Layer already exists 9eb3400139ee: Layer already exists da8c28465f82: Layer already exists d1292e236c36: Layer already exists 8890c171a12b: Layer already exists 4ae5bd84d450: Layer already exists 723a561964c8: Layer already exists 78764725b56c: Layer already exists 1507bc794612: Layer already exists 51d6d3d09136: Layer already exists 50644c29ef5a: Layer already exists sshdind-99bf2a304915a61639744a4ab0d3e8abc84e050d: digest: sha256:67a56fe575f5830b275c24da93ad2aeca193392d22a956ae012c8a2fd8242e18 size: 4067 [Pipeline] isUnix [Pipeline] sh + docker pull dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d Error response from daemon: manifest for dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d not found: manifest unknown: manifest unknown [Pipeline] isUnix [Pipeline] sh + docker build -t dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d -f tests/Dockerfile --build-arg PYTHON_VERSION=3.7 . Sending build context to Docker daemon 1.375MB Step 1/21 : ARG PYTHON_VERSION=3.7 Step 2/21 : FROM python:${PYTHON_VERSION} ---> dbd6ecf8172a Step 3/21 : ARG APT_MIRROR ---> Using cache ---> 1a51478d646a Step 4/21 : RUN sed -ri "s/(httpredir|deb).debian.org/${APT_MIRROR:-deb.debian.org}/g" /etc/apt/sources.list && sed -ri "s/(security).debian.org/${APT_MIRROR:-security.debian.org}/g" /etc/apt/sources.list ---> Using cache ---> cfa92f9534ac Step 5/21 : RUN apt-get update && apt-get -y install --no-install-recommends gnupg2 pass ---> Using cache ---> e9ba8119747b Step 6/21 : COPY tests/ssh-keys /root/.ssh ---> Using cache ---> 29570defd2c4 Step 7/21 : RUN chmod -R 600 /root/.ssh ---> Using cache ---> 00f4c58281c3 Step 8/21 : COPY ./tests/gpg-keys /gpg-keys ---> Using cache ---> 9d8562f609b5 Step 9/21 : RUN gpg2 --import gpg-keys/secret ---> Using cache ---> 654aa6847ee2 Step 10/21 : RUN gpg2 --import-ownertrust gpg-keys/ownertrust ---> Using cache ---> 2d6e61b65cf0 Step 11/21 : RUN yes | pass init $(gpg2 --no-auto-check-trustdb --list-secret-key | awk '/^sec/{getline; $1=$1; print}') ---> Using cache ---> 1403525727a5 Step 12/21 : RUN gpg2 --check-trustdb ---> Using cache ---> 1ce405965c6e Step 13/21 : ARG CREDSTORE_VERSION=v0.6.3 ---> Using cache ---> 093f6524dc0c Step 14/21 : RUN curl -sSL -o /opt/docker-credential-pass.tar.gz https://github.com/docker/docker-credential-helpers/releases/download/$CREDSTORE_VERSION/docker-credential-pass-$CREDSTORE_VERSION-amd64.tar.gz && tar -xf /opt/docker-credential-pass.tar.gz -O > /usr/local/bin/docker-credential-pass && rm -rf /opt/docker-credential-pass.tar.gz && chmod +x /usr/local/bin/docker-credential-pass ---> Using cache ---> c0d0d712a35c Step 15/21 : WORKDIR /src ---> Using cache ---> 8d81fedf4c53 Step 16/21 : COPY requirements.txt /src/requirements.txt ---> Using cache ---> e70565aa3551 Step 17/21 : RUN pip install -r requirements.txt ---> Using cache ---> 1824f3806063 Step 18/21 : COPY test-requirements.txt /src/test-requirements.txt ---> Using cache ---> 1dafee1a1451 Step 19/21 : RUN pip install -r test-requirements.txt ---> Using cache ---> 257225b82344 Step 20/21 : COPY . /src ---> 884a348a610e Step 21/21 : RUN pip install . ---> Running in 0e8de81fd310 Processing /src  DEPRECATION: A future pip version will change local packages to be built in-place without first copying to a temporary directory. We recommend you use --use-feature=in-tree-build to test your packages with this new behavior before it becomes the default. pip 21.3 will remove support for this functionality. You can find discussion regarding this at https://github.com/pypa/pip/issues/7555. Requirement already satisfied: websocket-client>=0.32.0 in /usr/local/lib/python3.7/site-packages (from docker==5.1.0.dev0) (0.56.0) Requirement already satisfied: requests!=2.18.0,>=2.14.2 in /usr/local/lib/python3.7/site-packages (from docker==5.1.0.dev0) (2.26.0) Requirement already satisfied: charset-normalizer~=2.0.0 in /usr/local/lib/python3.7/site-packages (from requests!=2.18.0,>=2.14.2->docker==5.1.0.dev0) (2.0.12) Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.7/site-packages (from requests!=2.18.0,>=2.14.2->docker==5.1.0.dev0) (1.26.5) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/site-packages (from requests!=2.18.0,>=2.14.2->docker==5.1.0.dev0) (2021.10.8) Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.7/site-packages (from requests!=2.18.0,>=2.14.2->docker==5.1.0.dev0) (2.5) Requirement already satisfied: six in /usr/local/lib/python3.7/site-packages (from websocket-client>=0.32.0->docker==5.1.0.dev0) (1.16.0) Building wheels for collected packages: docker Building wheel for docker (setup.py): started Building wheel for docker (setup.py): finished with status 'done' Created wheel for docker: filename=docker-5.1.0.dev0-py3-none-any.whl size=146356 sha256=75236cd462f0de9a0cd327d7766261744870adef5832e05710abda8090557341 Stored in directory: /tmp/pip-ephem-wheel-cache-q9exq57r/wheels/6f/63/19/359cf44f647b75d0ea75ecc03aa429fec4c372b453eb4b6525 Successfully built docker Installing collected packages: docker Successfully installed docker-5.1.0.dev0 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv WARNING: You are using pip version 21.2.4; however, version 22.0.3 is available. You should consider upgrading via the '/usr/local/bin/python -m pip install --upgrade pip' command. Removing intermediate container 0e8de81fd310 ---> 85c389eb6f58 Successfully built 85c389eb6f58 Successfully tagged dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d [Pipeline] isUnix [Pipeline] sh + docker tag dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d [Pipeline] isUnix [Pipeline] sh + docker push dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d The push refers to repository [docker.io/dockerpinata/docker-py] 1df4bd09fcde: Preparing 0e80e6a2ba0f: Preparing 4c44aeb9352a: Preparing 1ac912944175: Preparing 21513bcac550: Preparing 982ed0204b02: Preparing fc5dfaf3f5f9: Preparing a56c6fb0af23: Preparing f5bc18006586: Preparing d192558dbf41: Preparing bffe07afc801: Preparing 5d959a3925c2: Preparing 1483e5334e4b: Preparing 06d0b7122053: Preparing 78c8e7e4fdb6: Preparing 2c18fa8f0e89: Preparing e4f7a1f2e69c: Preparing 8bbe4b0f3547: Preparing 52adde6b4d9c: Preparing 36c3e231faac: Preparing 182f3ce3bf27: Preparing 316e3949bffa: Preparing e3f84a8cee1f: Preparing 48144a6f44ae: Preparing 26d5108b2cba: Preparing 89fda00479fc: Preparing 982ed0204b02: Waiting fc5dfaf3f5f9: Waiting a56c6fb0af23: Waiting 8bbe4b0f3547: Waiting f5bc18006586: Waiting d192558dbf41: Waiting 52adde6b4d9c: Waiting 36c3e231faac: Waiting bffe07afc801: Waiting 182f3ce3bf27: Waiting 5d959a3925c2: Waiting 316e3949bffa: Waiting e3f84a8cee1f: Waiting 1483e5334e4b: Waiting 06d0b7122053: Waiting 48144a6f44ae: Waiting 78c8e7e4fdb6: Waiting 26d5108b2cba: Waiting 2c18fa8f0e89: Waiting e4f7a1f2e69c: Waiting 89fda00479fc: Waiting 1ac912944175: Layer already exists 4c44aeb9352a: Layer already exists 21513bcac550: Layer already exists fc5dfaf3f5f9: Layer already exists 982ed0204b02: Layer already exists a56c6fb0af23: Layer already exists f5bc18006586: Layer already exists bffe07afc801: Layer already exists d192558dbf41: Layer already exists 5d959a3925c2: Layer already exists 1483e5334e4b: Layer already exists 06d0b7122053: Layer already exists 78c8e7e4fdb6: Layer already exists 2c18fa8f0e89: Layer already exists e4f7a1f2e69c: Layer already exists 8bbe4b0f3547: Layer already exists 52adde6b4d9c: Layer already exists 36c3e231faac: Layer already exists 316e3949bffa: Layer already exists 182f3ce3bf27: Layer already exists e3f84a8cee1f: Layer already exists 48144a6f44ae: Layer already exists 26d5108b2cba: Layer already exists 89fda00479fc: Layer already exists 0e80e6a2ba0f: Pushed 1df4bd09fcde: Pushed py3-99bf2a304915a61639744a4ab0d3e8abc84e050d: digest: sha256:a9801c94eb39f966999fd48a20405b9fa29a1cd2c27e56b378aaecdc64771c90 size: 5766 [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] node Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-08f7ffcb17cf6c747) in /home/ubuntu/workspace/docker-py_PR-2959 [Pipeline] { [Pipeline] withDockerRegistry $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/178c4502-e1c2-42a4-a21b-54b5353a6cea/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] sh + docker run --rm --entrypoint=python dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d /src/scripts/versions.py [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] parallel [Pipeline] { (Branch: py3.7_19.03.12) [Pipeline] { (Branch: py3.7_19.03.13) [Pipeline] { (Branch: py3.7_20.10.12) [Pipeline] node [Pipeline] node Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-028a93d0e61c04663) in /home/ubuntu/workspace/docker-py_PR-2959 Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-08f7ffcb17cf6c747) in /home/ubuntu/workspace/docker-py_PR-2959 [Pipeline] node [Pipeline] { [Pipeline] { [Pipeline] withDockerRegistry [Pipeline] withDockerRegistry $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-0f0fcf866baa30d7e) in /home/ubuntu/workspace/docker-py_PR-2959 [Pipeline] { [Pipeline] withDockerRegistry WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/80d4a790-5afd-4584-bc5b-f76b2d8f7bad/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/87d52270-8be1-47ca-b422-2cac76834d51/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/docker-py_PR-2959:/workspace busybox chown -R 1000:1000 /workspace + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/docker-py_PR-2959:/workspace busybox chown -R 1000:1000 /workspace $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ [Pipeline] echo Removing all docker containers [Pipeline] sh [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py3.7 / docker=19.03.13) [Pipeline] checkout The recommended git tool is: git using credential docker-jenkins-github-credentials Cloning the remote Git repository Cloning with configured refspecs honoured and without tags + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py3.7 / docker=19.03.12) [Pipeline] checkout The recommended git tool is: git using credential docker-jenkins-github-credentials Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Fetching without tags Merging remotes/origin/master commit a48a5a9647761406d66e8271f19fab7fa0c5f582 into PR head commit 99bf2a304915a61639744a4ab0d3e8abc84e050d Merge succeeded, producing 99bf2a304915a61639744a4ab0d3e8abc84e050d Checking out Revision 99bf2a304915a61639744a4ab0d3e8abc84e050d (PR-2959) Cloning repository https://github.com/docker/docker-py.git > git init /home/ubuntu/workspace/docker-py_PR-2959 # timeout=10 Fetching upstream changes from https://github.com/docker/docker-py.git > git --version # timeout=10 > git --version # 'git version 2.25.1' using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2959/head:refs/remotes/origin/PR-2959 +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/2959/head:refs/remotes/origin/PR-2959 # timeout=10 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 Fetching upstream changes from https://github.com/docker/docker-py.git using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2959/head:refs/remotes/origin/PR-2959 +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 99bf2a304915a61639744a4ab0d3e8abc84e050d # timeout=10 > git remote # timeout=10 > git config --get remote.origin.url # timeout=10 using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git merge a48a5a9647761406d66e8271f19fab7fa0c5f582 # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 Commit message: "Updated unit tests" > git config core.sparsecheckout # timeout=10 > git checkout -f 99bf2a304915a61639744a4ab0d3e8abc84e050d # timeout=10 Cloning repository https://github.com/docker/docker-py.git > git init /home/ubuntu/workspace/docker-py_PR-2959 # timeout=10 Fetching upstream changes from https://github.com/docker/docker-py.git > git --version # timeout=10 > git --version # 'git version 2.25.1' using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2959/head:refs/remotes/origin/PR-2959 +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/2959/head:refs/remotes/origin/PR-2959 # timeout=10 Fetching without tags > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 Fetching upstream changes from https://github.com/docker/docker-py.git using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2959/head:refs/remotes/origin/PR-2959 +refs/heads/master:refs/remotes/origin/master # timeout=10 Merging remotes/origin/master commit a48a5a9647761406d66e8271f19fab7fa0c5f582 into PR head commit 99bf2a304915a61639744a4ab0d3e8abc84e050d [Pipeline] withDockerRegistry Merge succeeded, producing 99bf2a304915a61639744a4ab0d3e8abc84e050d Checking out Revision 99bf2a304915a61639744a4ab0d3e8abc84e050d (PR-2959) Commit message: "Updated unit tests" [Pipeline] { [Pipeline] sh + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d py.test -v -rxs --cov=docker tests/unit [Pipeline] withDockerRegistry [Pipeline] { [Pipeline] sh > git config core.sparsecheckout # timeout=10 > git checkout -f 99bf2a304915a61639744a4ab0d3e8abc84e050d # timeout=10 > git remote # timeout=10 > git config --get remote.origin.url # timeout=10 using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git merge a48a5a9647761406d66e8271f19fab7fa0c5f582 # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 99bf2a304915a61639744a4ab0d3e8abc84e050d # timeout=10 + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d py.test -v -rxs --cov=docker tests/unit Unable to find image 'dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d' locally py3-99bf2a304915a61639744a4ab0d3e8abc84e050d: Pulling from dockerpinata/docker-py e4d61adff207: Already exists 4ff1945c672b: Already exists ff5b10aec998: Already exists 12de8c754e45: Already exists ada1762e7602: Already exists 2f2b2e030155: Already exists 8752dc84acc9: Already exists ============================= test session starts ============================== platform linux -- Python 3.7.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /usr/local/bin/python cachedir: .pytest_cache rootdir: /src, configfile: pytest.ini plugins: timeout-2.0.1, cov-3.0.0 $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/d481899a-e81d-4972-9fb3-e14fd407d315/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded 9bc84992c7bf: Already exists 2be5ed9c8bd6: Already exists 387a4b69a06f: Already exists c5a88c2d8545: Already exists 05724caf6f02: Already exists d2ba7ba514c0: Already exists 032e9ab75793: Already exists 628ce69b7311: Already exists 6b63644ac575: Already exists 1a3932d6fb64: Already exists 803afe1640b2: Already exists 71e5d96aea01: Already exists 0d0f6968050f: Already exists 1e0bd138fbdb: Already exists c98499267f9c: Already exists 36cd3ecfa44e: Already exists cd575ee782ac: Already exists 5556806b258c: Pulling fs layer 7870fecb460f: Pulling fs layer 7870fecb460f: Download complete 5556806b258c: Verifying Checksum 5556806b258c: Download complete 5556806b258c: Pull complete 7870fecb460f: Pull complete Digest: sha256:a9801c94eb39f966999fd48a20405b9fa29a1cd2c27e56b378aaecdc64771c90 Status: Downloaded newer image for dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/90345e8e-cd51-4b3d-9537-1f0da359f2ea/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded collecting ... collected 571 items tests/unit/api_build_test.py::BuildTest::test_build_container PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context_gzip PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_invalid_container_limits PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_pull PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_with_container_limits PASSED [ 1%] ============================= test session starts ============================== platform linux -- Python 3.7.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /usr/local/bin/python cachedir: .pytest_cache rootdir: /src, configfile: pytest.ini plugins: timeout-2.0.1, cov-3.0.0 tests/unit/api_build_test.py::BuildTest::test_build_container_with_named_dockerfile PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_build_remote_with_registry_auth PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_process_dockerfile PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_process_dockerfile_win_longpath_prefix SKIPPED [ 1%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_auth_configs PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_no_auth_configs PASSED [ 2%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_empty_dict_and_auth_configs PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_none PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_privileged PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_regression_573 PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_ro PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_rw PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_dict_instead_of_id PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links_as_list_of_tuples PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf_compat PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_multiple_links PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_port_binds PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_privileged PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_added_capabilities PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_aliases PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_list PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode_and_ro_error PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_ro PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_rw PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_cgroup_parent PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_device_requests PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_devices PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_dropped_capabilities PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_entrypoint PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpu_shares PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpus PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset_mems PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_dict PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_list PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links_as_list_of_tuples PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf_compat PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mac_address PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_int PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_g_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_k_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_m_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_wrong_value PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_multiple_links PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_named_volume PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_port_binds PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_ports PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_restart_policy PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stdin_open PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stop_signal PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_sysctl PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_dict PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_list PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_unicode_envvars PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_volume_string PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_working_dir PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_named_container PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_stats PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top_with_psargs PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_container_update PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_diff PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_diff_with_dict_instead_of_id PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_export PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_export_with_dict_instead_of_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_inspect_container PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_inspect_container_undefined_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_dict_instead_of_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_signal PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_list_containers PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_following PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_following_backwards PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_datetime PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_streaming PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_streaming_and_following PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_tail PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_tty PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_logs PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_pause_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_port PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_remove_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_remove_container_with_dict_instead_of_id PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_rename_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_resize_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_restart_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_restart_container_with_dict_instead_of_id PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_stop_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_stop_container_with_dict_instead_of_id PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_unpause_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_wait PASSED [ 19%] tests/unit/api_container_test.py::ContainerTest::test_wait_with_dict_instead_of_id PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_create PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_inspect PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_resize PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_start PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_start_detached PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_commit PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_get_image PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_history PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_ids PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_viz PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_filters PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_name PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_quiet PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_import_image PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_import_image_from_bytes PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_import_image_from_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_inspect_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_inspect_image_undefined_id PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_load_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_load_image_quiet PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_pull PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_pull_stream PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_stream PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_with_auth PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_with_tag PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_remove_image PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image_force PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image_tag PASSED [ 24%] tests/unit/api_network_test.py::NetworkTest::test_connect_container_to_network PASSED [ 24%] tests/unit/api_network_test.py::NetworkTest::test_create_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_disconnect_container_from_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_inspect_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_list_networks PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_remove_network PASSED [ 25%] tests/unit/api_test.py::DockerApiTest::test_auto_retrieve_server_version PASSED [ 25%] tests/unit/api_test.py::DockerApiTest::test_create_host_config_secopt PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_ctor PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events_with_filters PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events_with_since_until PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_info PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_login PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_remove_link FAILED [ 27%] tests/unit/api_test.py::DockerApiTest::test_retrieve_server_version PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_search PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_stream_helper_decoding PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http_unix_triple_slash PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_tcp PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix_triple_slash PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_invalid_resource PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_no_resource PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_url_unversioned_api PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_url_valid_resource PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_version PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_version_no_api_version PASSED [ 29%] tests/unit/api_test.py::UnixSocketStreamTest::test_early_stream_response PASSED [ 29%] collecting ... collected 571 items tests/unit/api_build_test.py::BuildTest::test_build_container PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context_gzip PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_invalid_container_limits PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_pull PASSED [ 0%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty PASSED [ 30%] tests/unit/api_build_test.py::BuildTest::test_build_container_with_container_limits PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_build_container_with_named_dockerfile PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_build_remote_with_registry_auth PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_process_dockerfile PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_process_dockerfile_win_longpath_prefix SKIPPED [ 1%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_auth_configs PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_no_auth_configs PASSED [ 2%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_empty_dict_and_auth_configs PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_none PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_privileged PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_regression_573 PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_ro PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_rw PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_dict_instead_of_id PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links_as_list_of_tuples PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf_compat PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_multiple_links PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_port_binds PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_privileged PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_added_capabilities PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_aliases PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_list PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode_and_ro_error PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_ro PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_rw PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_cgroup_parent PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_device_requests PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_devices PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_dropped_capabilities PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_entrypoint PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpu_shares PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpus PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset_mems PASSED [ 7%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty_demux PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty PASSED [ 30%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_dict PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_list PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links_as_list_of_tuples PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf_compat PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mac_address PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_int PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_g_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_k_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_m_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_wrong_value PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_multiple_links PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_named_volume PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_port_binds PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_ports PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_restart_policy PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stdin_open PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stop_signal PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_sysctl PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_dict PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_list PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_unicode_envvars PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_volume_string PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_working_dir PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_named_container PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_stats PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top_with_psargs PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_container_update PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_diff PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_diff_with_dict_instead_of_id PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_export PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_export_with_dict_instead_of_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_inspect_container PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_inspect_container_undefined_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_dict_instead_of_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_signal PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_list_containers PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_following PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_following_backwards PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_datetime PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_streaming PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_streaming_and_following PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_tail PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_tty PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_logs PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_pause_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_port PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_remove_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_remove_container_with_dict_instead_of_id PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_rename_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_resize_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_restart_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_restart_container_with_dict_instead_of_id PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_stop_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_stop_container_with_dict_instead_of_id PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_unpause_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_wait PASSED [ 19%] tests/unit/api_container_test.py::ContainerTest::test_wait_with_dict_instead_of_id PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_create PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_inspect PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_resize PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_start PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_start_detached PASSED [ 20%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty_demux PASSED [ 30%] tests/unit/api_image_test.py::ImageTest::test_commit PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_get_image PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_history PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_ids PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_viz PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_filters PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_name PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_quiet PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_import_image PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_import_image_from_bytes PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_import_image_from_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_inspect_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_inspect_image_undefined_id PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_load_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_load_image_quiet PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_pull PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_pull_stream PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_stream PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_with_auth PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_with_tag PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_remove_image PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image_force PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image_tag PASSED [ 24%] tests/unit/api_network_test.py::NetworkTest::test_connect_container_to_network PASSED [ 24%] tests/unit/api_network_test.py::NetworkTest::test_create_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_disconnect_container_from_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_inspect_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_list_networks PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_remove_network PASSED [ 25%] tests/unit/api_test.py::DockerApiTest::test_auto_retrieve_server_version PASSED [ 25%] tests/unit/api_test.py::DockerApiTest::test_create_host_config_secopt PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_ctor PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events_with_filters PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events_with_since_until PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_info PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_login PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_remove_link FAILED [ 27%] tests/unit/api_test.py::DockerApiTest::test_retrieve_server_version PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_search PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_stream_helper_decoding PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http_unix_triple_slash PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_tcp PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix_triple_slash PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_invalid_resource PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_no_resource PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_url_unversioned_api PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_url_valid_resource PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_version PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_version_no_api_version PASSED [ 29%] tests/unit/api_test.py::UnixSocketStreamTest::test_early_stream_response PASSED [ 29%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty_demux PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty_demux PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty PASSED [ 31%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty_demux PASSED [ 31%] tests/unit/api_test.py::UserAgentTest::test_custom_user_agent PASSED [ 31%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty_demux PASSED [ 30%] tests/unit/api_test.py::UserAgentTest::test_default_user_agent PASSED [ 31%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout PASSED [ 31%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout2 PASSED [ 32%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timout_non_blocking PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_invalid_opts_type PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_driver PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_invalid_labels PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_labels PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_no_specified_name PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_inspect_volume PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_list_volumes PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_list_volumes_and_filters PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_remove_volume PASSED [ 33%] tests/unit/auth_test.py::RegressionTest::test_803_urlsafe_encode PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_hub_index_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_legacy_hub_index_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_invalid_index_name PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_dotted_hub_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_image PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost_with_username PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port_and_username PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry PASSED [ 36%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 36%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_username PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_auth_with_empty_credstore_and_auth_dict PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_explicit_none PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_registry PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_fully_explicit PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_legacy_config PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_match PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_trailing_slash PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_protocol PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_path_wrong_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_hub PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_legacy_hub PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_library_image PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_private_registry PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_unauthenticated_registry PASSED [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env PASSED [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_utf8 PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_identity_token PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_invalid_auth_dict PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_unknown_keys PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_with_random_name PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_legacy_config PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_modern_json_config PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_3_sources PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_only PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_auths_entries PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_credhelpers_only PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_auths_entry PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_credhelper PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_no_default PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_with_plain_dict PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_call_api_client_method PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_call_containers PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 44%] tests/unit/client_test.py::ClientTest::test_events PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_info PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_ping PASSED [ 45%] tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED [ 45%] tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 45%] tests/unit/client_test.py::ClientTest::test_version PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_unix PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_win SKIPPED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_unix PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_win SKIPPED [ 46%] tests/unit/context_test.py::BaseContextTest::test_context_inspect_without_params PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_get_current_context PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_https_host PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_linux PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_windows SKIPPED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_percent_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_mem_swappiness PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_nano_cpus_types PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_count PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_percent PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_period PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_runtime PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_dns_opt PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_isolation PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_kill_disable PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_score_adj PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_uts PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_volume_driver PASSED [ 53%] tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 53%] tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_obj_ulimit PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_ulimit_invalid_type PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 54%] tests/unit/dockertypes_test.py::EndpointConfigTest::test_create_endpoint_config_with_aliases PASSED [ 54%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty_demux PASSED [ 30%] tests/unit/dockertypes_test.py::IPAMConfigTest::test_create_ipam_config PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas_0 PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_simple PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows XFAIL [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_named_volume PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_invalid PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_no_source PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_ro PASSED [ 57%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 57%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_short_form PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_invalid PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_multiple PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_no_protocol_and_mode PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_simple PASSED [ 58%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 58%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol_and_mode PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_api_error_is_caught_by_dockerexception PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_create_error_from_exception PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_500 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_200 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_300 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_200 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_400 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_500 PASSED [ 60%] tests/unit/errors_test.py::ContainerErrorTest::test_container_with_stderr PASSED [ 61%] tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 61%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 61%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_single PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_container_args PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_with_image_object PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_get PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_list PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_list_ignore_removed PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_detach PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_pull PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_remove PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 63%] tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED [ 63%] tests/unit/models_containers_test.py::ContainerTest::test_commit PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_diff PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_export PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_image PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_kill PASSED [ 65%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty PASSED [ 31%] tests/unit/models_containers_test.py::ContainerTest::test_labels PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_name PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_pause PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_put_archive PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_remove PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_rename PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_start PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_stats PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_status PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_top PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_update PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_wait PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_build PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_list PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_load PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_push PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_remove PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_search PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_history PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_save PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_short_id PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tag PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tags PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 71%] tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED [ 72%] tests/unit/models_resources_test.py::ModelTest::test_hash PASSED [ 72%] tests/unit/models_resources_test.py::ModelTest::test_reload PASSED [ 72%] tests/unit/models_secrets_test.py::CreateServiceTest::test_secrets_repr PASSED [ 73%] tests/unit/models_services_test.py::CreateServiceKwargsTest::test_get_create_service_kwargs PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_hostname_prefix_trim PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_user_and_hostname PASSED [ 74%] tests/unit/ssladapter_test.py::SSLAdapterTest::test_only_uses_tls PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_join_swarm PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_join_swarm_no_listen_address_takes_default PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED [ 75%] tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED [ 75%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_single_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard_with_exception PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_custom_dockerfile PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_include_wildcard PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_last_line_precedence PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_dupes PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_and_double_wildcard PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_leading_dot_slash PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename_leading_slash PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_wildcard_filename PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_with_path_traversal PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_exclude PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_end PASSED [ 81%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty_demux PASSED [ 31%] tests/unit/api_test.py::UserAgentTest::test_custom_user_agent PASSED [ 31%] tests/unit/api_test.py::UserAgentTest::test_default_user_agent PASSED [ 31%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout PASSED [ 31%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout2 PASSED [ 32%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timout_non_blocking PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_invalid_opts_type PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_driver PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_invalid_labels PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_labels PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_no_specified_name PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_inspect_volume PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_list_volumes PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_list_volumes_and_filters PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_remove_volume PASSED [ 33%] tests/unit/auth_test.py::RegressionTest::test_803_urlsafe_encode PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_hub_index_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_legacy_hub_index_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_invalid_index_name PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_dotted_hub_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_image PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost_with_username PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port_and_username PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry PASSED [ 36%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 36%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_username PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_auth_with_empty_credstore_and_auth_dict PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_explicit_none PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_registry PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_fully_explicit PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_legacy_config PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_match PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_trailing_slash PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_protocol PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_path_wrong_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_hub PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_legacy_hub PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_library_image PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_private_registry PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_unauthenticated_registry PASSED [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env PASSED [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_utf8 PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_identity_token PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_invalid_auth_dict PASSED [ 40%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_start PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_single_filename PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_wildcard_exception PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_directory_link PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_socket_file PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_broken_symlinks PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_empty_directory PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_excludes PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_file_symlinks PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_inaccessible_file SKIPPED [ 83%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_fallback PASSED [ 83%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 83%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_explicit_path PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_legacy_name PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_posix PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_windows SKIPPED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_from_env PASSED [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_environment PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_inject_proxy_environment PASSED [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_new PASSED [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_truthiness PASSED [ 87%] tests/unit/utils_test.py::DecoratorsTest::test_update_headers PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_alternate_env PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_no_cert_path PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false_no_cert PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_compact PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_empty PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_list PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_no_mode PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_bytes_input PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_unicode_input PASSED [ 89%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_commented_line PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_invalid_line PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_newline PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_proper PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_with_equals_character PASSED [ 90%] tests/unit/utils_test.py::ParseHostTest::test_parse_host PASSED [ 90%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_empty_value PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls_tcp_proto PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_trailing_slash PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_no_tag PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_sha PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_no_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_no_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_sha PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseDeviceTest::test_dict PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_full_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_hybrid_list PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_partial_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_permissionless_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_float PASSED [ 94%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_invalid PASSED [ 94%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_valid PASSED [ 94%] tests/unit/utils_test.py::UtilsTest::test_convert_filters PASSED [ 94%] tests/unit/utils_test.py::UtilsTest::test_decode_json_header PASSED [ 94%] tests/unit/utils_test.py::SplitCommandTest::test_split_command_with_unicode PASSED [ 94%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_port_ranges PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_ports PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_port_ranges PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_ports PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_one_port PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_port_range PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_host_only_with_colon PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_non_matching_length_port_ranges PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_port_and_range_invalid PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_port_only_with_colon PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_split_port_empty_string PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_split_port_invalid PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_invalid_protocol PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_no_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_non_string PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_random_port_range_with_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_range_no_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_ip_no_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_protocol PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip_no_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_address PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_square_brackets_address PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_split_port_with_protocol PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_with_no_container_port PASSED [ 99%] tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_binary_unicode_value PASSED [ 99%] WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/db8fb195-a3e3-46cf-b279-3300e20bb43d/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { tests/unit/auth_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_unknown_keys PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_with_random_name PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_legacy_config PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_modern_json_config PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_3_sources PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_only PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_auths_entries PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_credhelpers_only PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_auths_entry PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_credhelper PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_no_default PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_with_plain_dict PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_call_api_client_method PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_call_containers PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 44%] tests/unit/client_test.py::ClientTest::test_events PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_info PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_ping PASSED [ 45%] tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED [ 45%] tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 45%] tests/unit/client_test.py::ClientTest::test_version PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_unix PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_win SKIPPED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_unix PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_win SKIPPED [ 46%] tests/unit/context_test.py::BaseContextTest::test_context_inspect_without_params PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_get_current_context PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_https_host PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_linux PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_windows SKIPPED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_percent_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_mem_swappiness PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_nano_cpus_types PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_count PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_percent PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_period PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_runtime PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_dns_opt PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_isolation PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_kill_disable PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_score_adj PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_uts PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_volume_driver PASSED [ 53%] tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 53%] tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_obj_ulimit PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_ulimit_invalid_type PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 54%] tests/unit/dockertypes_test.py::EndpointConfigTest::test_create_endpoint_config_with_aliases PASSED [ 54%] tests/unit/dockertypes_test.py::IPAMConfigTest::test_create_ipam_config PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas_0 PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_simple PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows XFAIL [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_named_volume PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_invalid PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_no_source PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_ro PASSED [ 57%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 57%] [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_short_form PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_invalid PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_multiple PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_no_protocol_and_mode PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_simple PASSED [ 58%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 58%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol_and_mode PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_api_error_is_caught_by_dockerexception PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_create_error_from_exception PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_500 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_200 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_300 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_200 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_400 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_500 PASSED [ 60%] tests/unit/errors_test.py::ContainerErrorTest::test_container_with_stderr PASSED [ 61%] tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 61%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 61%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_single PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_container_args PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_with_image_object PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_get PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_list PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_list_ignore_removed PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_detach PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_pull PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_remove PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 63%] tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED [ 63%] tests/unit/models_containers_test.py::ContainerTest::test_commit PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_diff PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_export PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_image PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_kill PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_labels PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_name PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_pause PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_put_archive PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_remove PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_rename PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_start PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_stats PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_status PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_top PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_update PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_wait PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_build PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_list PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_load PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_push PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_remove PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_search PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_history PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_save PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_short_id PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tag PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tags PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 71%] tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED [ 72%] tests/unit/models_resources_test.py::ModelTest::test_hash PASSED [ 72%] tests/unit/models_resources_test.py::ModelTest::test_reload PASSED [ 72%] tests/unit/models_secrets_test.py::CreateServiceTest::test_secrets_repr PASSED [ 73%] + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/docker-py_PR-2959:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally tests/unit/models_services_test.py::CreateServiceKwargsTest::test_get_create_service_kwargs PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_hostname_prefix_trim PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_user_and_hostname PASSED [ 74%] tests/unit/ssladapter_test.py::SSLAdapterTest::test_only_uses_tls PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_join_swarm PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_join_swarm_no_listen_address_takes_default PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED [ 75%] tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED [ 75%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_single_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard_with_exception PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_custom_dockerfile PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_include_wildcard PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_last_line_precedence PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_dupes PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_and_double_wildcard PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_leading_dot_slash PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename_leading_slash PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_wildcard_filename PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_with_path_traversal PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_exclude PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_end PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_start PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_single_filename PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_wildcard_exception PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_directory_link PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_socket_file PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_broken_symlinks PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_empty_directory PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_excludes PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_file_symlinks PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_inaccessible_file SKIPPED [ 83%] tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_no_value PASSED [100%] =================================== FAILURES =================================== ________________________ DockerApiTest.test_remove_link ________________________ tests/unit/api_test.py:323: in test_remove_link timeout=DEFAULT_TIMEOUT_SECONDS /usr/local/lib/python3.7/unittest/mock.py:878: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: Expected call: mock('DELETE', 'http+docker://localhost/v1.41/containers/3cc2351ab11b', params={'v': False, 'link': True, 'force': False}, timeout=60) E Actual call: mock('DELETE', 'http+docker://localhost/v1.41/containers/3cc2351ab11b', params={'v': False, 'link': True, 'force': False}, timeout=70) ---------- coverage: platform linux, python 3.7.12-final-0 ----------- Name Stmts Miss Branch BrPart Cover ----------------------------------------------------------------------- docker/__init__.py 8 0 0 0 100% docker/api/__init__.py 1 0 0 0 100% docker/api/build.py 126 41 92 21 62% docker/api/client.py 261 65 92 11 75% docker/api/config.py 29 18 4 0 33% docker/api/container.py 271 72 108 26 66% docker/api/daemon.py 39 4 14 4 85% docker/api/exec_api.py 45 11 22 9 67% docker/api/image.py 159 43 60 14 70% docker/api/network.py 90 35 48 11 51% docker/api/plugin.py 89 68 14 0 20% docker/api/secret.py 34 22 8 0 29% docker/api/service.py 200 176 149 0 7% docker/api/swarm.py 106 67 38 1 28% docker/api/volume.py 38 9 14 2 71% docker/auth.py 197 16 74 16 88% docker/client.py 69 9 2 0 87% docker/constants.py 21 0 0 0 100% docker/context/__init__.py 2 0 0 0 100% docker/context/api.py 78 41 38 8 39% docker/context/config.py 61 33 16 2 42% docker/context/context.py 154 96 64 6 29% docker/credentials/__init__.py 3 0 0 0 100% docker/credentials/constants.py 4 0 0 0 100% docker/credentials/errors.py 11 4 2 0 54% docker/credentials/store.py 44 30 12 0 25% docker/credentials/utils.py 23 18 12 0 14% docker/errors.py 110 26 20 4 71% docker/models/__init__.py 0 0 0 0 100% docker/models/configs.py 21 8 2 0 57% docker/models/containers.py 183 11 70 9 91% docker/models/images.py 136 55 56 4 52% docker/models/networks.py 37 7 12 3 71% docker/models/nodes.py 15 5 2 0 59% docker/models/plugins.py 48 29 8 0 34% docker/models/resource.py 41 10 6 3 72% docker/models/secrets.py 22 4 2 0 75% docker/models/services.py 87 35 36 4 59% docker/models/swarm.py 39 21 6 0 40% docker/models/volumes.py 23 10 4 0 48% docker/tls.py 37 6 14 6 76% docker/transport/__init__.py 11 3 0 0 73% docker/transport/basehttpadapter.py 6 0 2 1 88% docker/transport/npipeconn.py 57 52 8 0 8% docker/transport/npipesocket.py 134 130 20 0 3% docker/transport/sshconn.py 162 105 54 3 30% docker/transport/ssladapter.py 36 10 10 4 65% docker/transport/unixconn.py 54 3 6 1 93% docker/types/__init__.py 6 0 0 0 100% docker/types/base.py 4 0 2 0 100% docker/types/containers.py 419 79 326 43 81% docker/types/daemon.py 36 24 14 0 24% docker/types/healthcheck.py 33 20 4 0 35% docker/types/networks.py 41 11 28 9 65% docker/types/services.py 321 146 216 41 50% docker/types/swarm.py 51 45 40 0 7% docker/utils/__init__.py 3 0 0 0 100% docker/utils/build.py 150 24 72 10 83% docker/utils/config.py 36 1 10 1 96% docker/utils/decorators.py 32 1 12 1 95% docker/utils/fnmatch.py 55 18 28 2 61% docker/utils/json_stream.py 40 8 14 2 78% docker/utils/ports.py 50 3 32 2 91% docker/utils/proxy.py 32 1 12 0 98% docker/utils/socket.py 85 10 40 8 84% docker/utils/utils.py 278 18 171 13 92% docker/version.py 2 0 2 0 100% ----------------------------------------------------------------------- TOTAL 5096 1817 2244 305 61% =========================== short test summary info ============================ XFAIL tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows SKIPPED [1] tests/unit/api_build_test.py:169: Windows-specific syntax SKIPPED [1] tests/unit/client_test.py:99: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:138: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:212: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:249: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/context_test.py:18: Windows specific path check SKIPPED [1] tests/unit/utils_build_test.py:230: Backslash patterns only on Windows SKIPPED [1] tests/unit/utils_build_test.py:252: Backslash patterns only on Windows SKIPPED [1] tests/unit/utils_build_test.py:400: root user always has access ; no chmod on Windows SKIPPED [1] tests/unit/utils_config_test.py:54: condition: sys.platform != 'win32' ============= 1 failed, 559 passed, 10 skipped, 1 xfailed in 6.15s ============= latest: Pulling from library/busybox 009932687766: Pulling fs layer tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_fallback PASSED [ 83%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 83%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_explicit_path PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_legacy_name PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_posix PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_windows SKIPPED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_from_env PASSED [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_environment PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_inject_proxy_environment PASSED [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_new PASSED [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_truthiness PASSED [ 87%] tests/unit/utils_test.py::DecoratorsTest::test_update_headers PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_alternate_env PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_no_cert_path PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false_no_cert PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_compact PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_empty PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_list PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_no_mode PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_bytes_input PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_unicode_input PASSED [ 89%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_commented_line PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_invalid_line PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_newline PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_proper PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_with_equals_character PASSED [ 90%] tests/unit/utils_test.py::ParseHostTest::test_parse_host PASSED [ 90%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_empty_value PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls_tcp_proto PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_trailing_slash PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_no_tag PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_sha PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_no_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_no_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_sha PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseDeviceTest::test_dict PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_full_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_hybrid_list PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_partial_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_permissionless_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_float PASSED [ 94%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_invalid PASSED [ 94%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_valid PASSED [ 94%] tests/unit/utils_test.py::UtilsTest::test_convert_filters PASSED [ 94%] tests/unit/utils_test.py::UtilsTest::test_decode_json_header PASSED [ 94%] tests/unit/utils_test.py::SplitCommandTest::test_split_command_with_unicode PASSED [ 94%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_port_ranges PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_ports PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_port_ranges PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_ports PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_one_port PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_port_range PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_host_only_with_colon PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_non_matching_length_port_ranges PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_port_and_range_invalid PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_port_only_with_colon PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_split_port_empty_string PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_split_port_invalid PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_invalid_protocol PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_no_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_non_string PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_random_port_range_with_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_range_no_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_ip_no_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_protocol PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip_no_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_address PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_square_brackets_address PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_split_port_with_protocol PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_with_no_container_port PASSED [ 99%] tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_binary_unicode_value PASSED [ 99%] [Pipeline] sh 009932687766: Download complete + docker stop dpy-dind-6-0-py3.7-19.03.13 Error response from daemon: No such container: dpy-dind-6-0-py3.7-19.03.13 [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // stage 009932687766: Pull complete Digest: sha256:afcc7f1ac1b49db317a7196c902e61c6c3c4607d63599ee1a82d702d249a0ccb Status: Downloaded newer image for busybox:latest [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } Failed in branch py3.7_19.03.13 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_no_value PASSED [100%] =================================== FAILURES =================================== ________________________ DockerApiTest.test_remove_link ________________________ tests/unit/api_test.py:323: in test_remove_link timeout=DEFAULT_TIMEOUT_SECONDS /usr/local/lib/python3.7/unittest/mock.py:878: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: Expected call: mock('DELETE', 'http+docker://localhost/v1.41/containers/3cc2351ab11b', params={'v': False, 'link': True, 'force': False}, timeout=60) E Actual call: mock('DELETE', 'http+docker://localhost/v1.41/containers/3cc2351ab11b', params={'v': False, 'link': True, 'force': False}, timeout=70) ---------- coverage: platform linux, python 3.7.12-final-0 ----------- Name Stmts Miss Branch BrPart Cover ----------------------------------------------------------------------- docker/__init__.py 8 0 0 0 100% docker/api/__init__.py 1 0 0 0 100% docker/api/build.py 126 41 92 21 62% docker/api/client.py 261 65 92 11 75% docker/api/config.py 29 18 4 0 33% docker/api/container.py 271 72 108 26 66% docker/api/daemon.py 39 4 14 4 85% docker/api/exec_api.py 45 11 22 9 67% docker/api/image.py 159 43 60 14 70% docker/api/network.py 90 35 48 11 51% docker/api/plugin.py 89 68 14 0 20% docker/api/secret.py 34 22 8 0 29% docker/api/service.py 200 176 149 0 7% docker/api/swarm.py 106 67 38 1 28% docker/api/volume.py 38 9 14 2 71% docker/auth.py 197 16 74 16 88% docker/client.py 69 9 2 0 87% docker/constants.py 21 0 0 0 100% docker/context/__init__.py 2 0 0 0 100% docker/context/api.py 78 41 38 8 39% docker/context/config.py 61 33 16 2 42% docker/context/context.py 154 96 64 6 29% docker/credentials/__init__.py 3 0 0 0 100% docker/credentials/constants.py 4 0 0 0 100% docker/credentials/errors.py 11 4 2 0 54% docker/credentials/store.py 44 30 12 0 25% docker/credentials/utils.py 23 18 12 0 14% docker/errors.py 110 26 20 4 71% docker/models/__init__.py 0 0 0 0 100% docker/models/configs.py 21 8 2 0 57% docker/models/containers.py 183 11 70 9 91% docker/models/images.py 136 55 56 4 52% docker/models/networks.py 37 7 12 3 71% docker/models/nodes.py 15 5 2 0 59% docker/models/plugins.py 48 29 8 0 34% docker/models/resource.py 41 10 6 3 72% docker/models/secrets.py 22 4 2 0 75% docker/models/services.py 87 35 36 4 59% docker/models/swarm.py 39 21 6 0 40% docker/models/volumes.py 23 10 4 0 48% docker/tls.py 37 6 14 6 76% docker/transport/__init__.py 11 3 0 0 73% docker/transport/basehttpadapter.py 6 0 2 1 88% docker/transport/npipeconn.py 57 52 8 0 8% docker/transport/npipesocket.py 134 130 20 0 3% docker/transport/sshconn.py 162 105 54 3 30% docker/transport/ssladapter.py 36 10 10 4 65% docker/transport/unixconn.py 54 3 6 1 93% docker/types/__init__.py 6 0 0 0 100% docker/types/base.py 4 0 2 0 100% docker/types/containers.py 419 79 326 43 81% docker/types/daemon.py 36 24 14 0 24% docker/types/healthcheck.py 33 20 4 0 35% docker/types/networks.py 41 11 28 9 65% docker/types/services.py 321 146 216 41 50% docker/types/swarm.py 51 45 40 0 7% docker/utils/__init__.py 3 0 0 0 100% docker/utils/build.py 150 24 72 10 83% docker/utils/config.py 36 1 10 1 96% docker/utils/decorators.py 32 1 12 1 95% docker/utils/fnmatch.py 55 18 28 2 61% docker/utils/json_stream.py 40 8 14 2 78% docker/utils/ports.py 50 3 32 2 91% docker/utils/proxy.py 32 1 12 0 98% docker/utils/socket.py 85 10 40 8 84% docker/utils/utils.py 278 18 171 13 92% docker/version.py 2 0 2 0 100% ----------------------------------------------------------------------- TOTAL 5096 1817 2244 305 61% =========================== short test summary info ============================ XFAIL tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows SKIPPED [1] tests/unit/api_build_test.py:169: Windows-specific syntax SKIPPED [1] tests/unit/client_test.py:99: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:138: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:212: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:249: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/context_test.py:18: Windows specific path check SKIPPED [1] tests/unit/utils_build_test.py:230: Backslash patterns only on Windows SKIPPED [1] tests/unit/utils_build_test.py:252: Backslash patterns only on Windows SKIPPED [1] tests/unit/utils_build_test.py:400: root user always has access ; no chmod on Windows SKIPPED [1] tests/unit/utils_config_test.py:54: condition: sys.platform != 'win32' ============= 1 failed, 559 passed, 10 skipped, 1 xfailed in 6.07s ============= [Pipeline] sh + docker stop dpy-dind-6-0-py3.7-19.03.12 Error response from daemon: No such container: dpy-dind-6-0-py3.7-19.03.12 [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } Failed in branch py3.7_19.03.12 [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py3.7 / docker=20.10.12) [Pipeline] checkout The recommended git tool is: git using credential docker-jenkins-github-credentials Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository https://github.com/docker/docker-py.git > git init /home/ubuntu/workspace/docker-py_PR-2959 # timeout=10 Fetching upstream changes from https://github.com/docker/docker-py.git > git --version # timeout=10 > git --version # 'git version 2.25.1' using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2959/head:refs/remotes/origin/PR-2959 +refs/heads/master:refs/remotes/origin/master # timeout=10 Fetching without tags Merging remotes/origin/master commit a48a5a9647761406d66e8271f19fab7fa0c5f582 into PR head commit 99bf2a304915a61639744a4ab0d3e8abc84e050d Merge succeeded, producing 99bf2a304915a61639744a4ab0d3e8abc84e050d Checking out Revision 99bf2a304915a61639744a4ab0d3e8abc84e050d (PR-2959) > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/2959/head:refs/remotes/origin/PR-2959 # timeout=10 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 Fetching upstream changes from https://github.com/docker/docker-py.git using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2959/head:refs/remotes/origin/PR-2959 +refs/heads/master:refs/remotes/origin/master # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 99bf2a304915a61639744a4ab0d3e8abc84e050d # timeout=10 > git remote # timeout=10 > git config --get remote.origin.url # timeout=10 using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials > git merge a48a5a9647761406d66e8271f19fab7fa0c5f582 # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 99bf2a304915a61639744a4ab0d3e8abc84e050d # timeout=10 Commit message: "Updated unit tests" [Pipeline] withDockerRegistry [Pipeline] { [Pipeline] sh + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d py.test -v -rxs --cov=docker tests/unit Unable to find image 'dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d' locally py3-99bf2a304915a61639744a4ab0d3e8abc84e050d: Pulling from dockerpinata/docker-py e4d61adff207: Pulling fs layer 4ff1945c672b: Pulling fs layer ff5b10aec998: Pulling fs layer 12de8c754e45: Pulling fs layer ada1762e7602: Pulling fs layer 2f2b2e030155: Pulling fs layer 8752dc84acc9: Pulling fs layer 9bc84992c7bf: Pulling fs layer 2be5ed9c8bd6: Pulling fs layer 387a4b69a06f: Pulling fs layer c5a88c2d8545: Pulling fs layer 05724caf6f02: Pulling fs layer d2ba7ba514c0: Pulling fs layer 032e9ab75793: Pulling fs layer 628ce69b7311: Pulling fs layer 6b63644ac575: Pulling fs layer 1a3932d6fb64: Pulling fs layer 803afe1640b2: Pulling fs layer 71e5d96aea01: Pulling fs layer 0d0f6968050f: Pulling fs layer 1e0bd138fbdb: Pulling fs layer c98499267f9c: Pulling fs layer 36cd3ecfa44e: Pulling fs layer cd575ee782ac: Pulling fs layer 5556806b258c: Pulling fs layer 7870fecb460f: Pulling fs layer 8752dc84acc9: Waiting 9bc84992c7bf: Waiting 2be5ed9c8bd6: Waiting 387a4b69a06f: Waiting c5a88c2d8545: Waiting 05724caf6f02: Waiting d2ba7ba514c0: Waiting 032e9ab75793: Waiting 628ce69b7311: Waiting 6b63644ac575: Waiting 1a3932d6fb64: Waiting 12de8c754e45: Waiting 803afe1640b2: Waiting ada1762e7602: Waiting 71e5d96aea01: Waiting 2f2b2e030155: Waiting 0d0f6968050f: Waiting 7870fecb460f: Waiting 1e0bd138fbdb: Waiting c98499267f9c: Waiting cd575ee782ac: Waiting 36cd3ecfa44e: Waiting 5556806b258c: Waiting 4ff1945c672b: Verifying Checksum 4ff1945c672b: Download complete ff5b10aec998: Verifying Checksum ff5b10aec998: Download complete $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2959@tmp/144bab6c-cdeb-4b9a-91cf-581d816cbea5/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded e4d61adff207: Verifying Checksum e4d61adff207: Download complete 2f2b2e030155: Verifying Checksum 2f2b2e030155: Download complete 12de8c754e45: Verifying Checksum 12de8c754e45: Download complete 9bc84992c7bf: Verifying Checksum 9bc84992c7bf: Download complete 8752dc84acc9: Verifying Checksum 8752dc84acc9: Download complete 2be5ed9c8bd6: Verifying Checksum 2be5ed9c8bd6: Download complete 387a4b69a06f: Verifying Checksum 387a4b69a06f: Download complete 05724caf6f02: Verifying Checksum 05724caf6f02: Download complete d2ba7ba514c0: Verifying Checksum d2ba7ba514c0: Download complete 032e9ab75793: Verifying Checksum 032e9ab75793: Download complete c5a88c2d8545: Verifying Checksum c5a88c2d8545: Download complete 6b63644ac575: Verifying Checksum 6b63644ac575: Download complete 628ce69b7311: Verifying Checksum 628ce69b7311: Download complete 1a3932d6fb64: Verifying Checksum 1a3932d6fb64: Download complete 803afe1640b2: Verifying Checksum 803afe1640b2: Download complete 0d0f6968050f: Verifying Checksum 0d0f6968050f: Download complete 71e5d96aea01: Verifying Checksum 71e5d96aea01: Download complete 1e0bd138fbdb: Verifying Checksum 1e0bd138fbdb: Download complete 36cd3ecfa44e: Verifying Checksum 36cd3ecfa44e: Download complete c98499267f9c: Verifying Checksum c98499267f9c: Download complete cd575ee782ac: Verifying Checksum cd575ee782ac: Download complete 5556806b258c: Verifying Checksum 5556806b258c: Download complete 7870fecb460f: Verifying Checksum 7870fecb460f: Download complete ada1762e7602: Verifying Checksum ada1762e7602: Download complete e4d61adff207: Pull complete 4ff1945c672b: Pull complete ff5b10aec998: Pull complete 12de8c754e45: Pull complete ada1762e7602: Pull complete 2f2b2e030155: Pull complete 8752dc84acc9: Pull complete 9bc84992c7bf: Pull complete 2be5ed9c8bd6: Pull complete 387a4b69a06f: Pull complete c5a88c2d8545: Pull complete 05724caf6f02: Pull complete d2ba7ba514c0: Pull complete 032e9ab75793: Pull complete 628ce69b7311: Pull complete 6b63644ac575: Pull complete 1a3932d6fb64: Pull complete 803afe1640b2: Pull complete 71e5d96aea01: Pull complete 0d0f6968050f: Pull complete 1e0bd138fbdb: Pull complete c98499267f9c: Pull complete 36cd3ecfa44e: Pull complete cd575ee782ac: Pull complete 5556806b258c: Pull complete 7870fecb460f: Pull complete Digest: sha256:a9801c94eb39f966999fd48a20405b9fa29a1cd2c27e56b378aaecdc64771c90 Status: Downloaded newer image for dockerpinata/docker-py:py3-99bf2a304915a61639744a4ab0d3e8abc84e050d ============================= test session starts ============================== platform linux -- Python 3.7.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /usr/local/bin/python cachedir: .pytest_cache rootdir: /src, configfile: pytest.ini plugins: timeout-2.0.1, cov-3.0.0 collecting ... collected 571 items tests/unit/api_build_test.py::BuildTest::test_build_container PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context_gzip PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_invalid_container_limits PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_pull PASSED [ 0%] tests/unit/api_build_test.py::BuildTest::test_build_container_with_container_limits PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_build_container_with_named_dockerfile PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_build_remote_with_registry_auth PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_process_dockerfile PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_process_dockerfile_win_longpath_prefix SKIPPED [ 1%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_auth_configs PASSED [ 1%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_no_auth_configs PASSED [ 2%] tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_empty_dict_and_auth_configs PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_none PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_privileged PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_regression_573 PASSED [ 2%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_ro PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_rw PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_dict_instead_of_id PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links_as_list_of_tuples PASSED [ 3%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf_compat PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_multiple_links PASSED [ 4%] tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_port_binds PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_privileged PASSED [ 4%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_added_capabilities PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_aliases PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_list PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode_and_ro_error PASSED [ 5%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_ro PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_rw PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_cgroup_parent PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_device_requests PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_devices PASSED [ 6%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_dropped_capabilities PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_entrypoint PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpu_shares PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpus PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset_mems PASSED [ 7%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_dict PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_list PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links_as_list_of_tuples PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf_compat PASSED [ 8%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mac_address PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_int PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_g_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_k_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_m_unit PASSED [ 9%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_wrong_value PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_multiple_links PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_named_volume PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_port_binds PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_ports PASSED [ 10%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_restart_policy PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stdin_open PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stop_signal PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_sysctl PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_dict PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_list PASSED [ 11%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_unicode_envvars PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_volume_string PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_working_dir PASSED [ 12%] tests/unit/api_container_test.py::CreateContainerTest::test_create_named_container PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_stats PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top_with_psargs PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_container_update PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_diff PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_diff_with_dict_instead_of_id PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_export PASSED [ 13%] tests/unit/api_container_test.py::ContainerTest::test_export_with_dict_instead_of_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_inspect_container PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_inspect_container_undefined_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_dict_instead_of_id PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_signal PASSED [ 14%] tests/unit/api_container_test.py::ContainerTest::test_list_containers PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_following PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_following_backwards PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_datetime PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 15%] tests/unit/api_container_test.py::ContainerTest::test_log_streaming PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_streaming_and_following PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_tail PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_tty PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_logs PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_pause_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_port PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_remove_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_remove_container_with_dict_instead_of_id PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_rename_container PASSED [ 17%] tests/unit/api_container_test.py::ContainerTest::test_resize_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_restart_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_restart_container_with_dict_instead_of_id PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_stop_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_stop_container_with_dict_instead_of_id PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_unpause_container PASSED [ 18%] tests/unit/api_container_test.py::ContainerTest::test_wait PASSED [ 19%] tests/unit/api_container_test.py::ContainerTest::test_wait_with_dict_instead_of_id PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_create PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_inspect PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_resize PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_start PASSED [ 19%] tests/unit/api_exec_test.py::ExecTest::test_exec_start_detached PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_commit PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_get_image PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_history PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_ids PASSED [ 20%] tests/unit/api_image_test.py::ImageTest::test_image_viz PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_filters PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_name PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_images_quiet PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_import_image PASSED [ 21%] tests/unit/api_image_test.py::ImageTest::test_import_image_from_bytes PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_import_image_from_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_inspect_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_inspect_image_undefined_id PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_load_image PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_load_image_quiet PASSED [ 22%] tests/unit/api_image_test.py::ImageTest::test_pull PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_pull_stream PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_stream PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_with_auth PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_push_image_with_tag PASSED [ 23%] tests/unit/api_image_test.py::ImageTest::test_remove_image PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image_force PASSED [ 24%] tests/unit/api_image_test.py::ImageTest::test_tag_image_tag PASSED [ 24%] tests/unit/api_network_test.py::NetworkTest::test_connect_container_to_network PASSED [ 24%] tests/unit/api_network_test.py::NetworkTest::test_create_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_disconnect_container_from_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_inspect_network PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_list_networks PASSED [ 25%] tests/unit/api_network_test.py::NetworkTest::test_remove_network PASSED [ 25%] tests/unit/api_test.py::DockerApiTest::test_auto_retrieve_server_version PASSED [ 25%] tests/unit/api_test.py::DockerApiTest::test_create_host_config_secopt PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_ctor PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events_with_filters PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_events_with_since_until PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_info PASSED [ 26%] tests/unit/api_test.py::DockerApiTest::test_login PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_remove_link FAILED [ 27%] tests/unit/api_test.py::DockerApiTest::test_retrieve_server_version PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_search PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_stream_helper_decoding PASSED [ 27%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http_unix_triple_slash PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_tcp PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix_triple_slash PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_invalid_resource PASSED [ 28%] tests/unit/api_test.py::DockerApiTest::test_url_no_resource PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_url_unversioned_api PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_url_valid_resource PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_version PASSED [ 29%] tests/unit/api_test.py::DockerApiTest::test_version_no_api_version PASSED [ 29%] tests/unit/api_test.py::UnixSocketStreamTest::test_early_stream_response PASSED [ 29%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty_demux PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty_demux PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty_demux PASSED [ 30%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty PASSED [ 31%] tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty_demux PASSED [ 31%] tests/unit/api_test.py::UserAgentTest::test_custom_user_agent PASSED [ 31%] tests/unit/api_test.py::UserAgentTest::test_default_user_agent PASSED [ 31%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout PASSED [ 31%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout2 PASSED [ 32%] tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timout_non_blocking PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_invalid_opts_type PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_driver PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_invalid_labels PASSED [ 32%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_labels PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_no_specified_name PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_inspect_volume PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_list_volumes PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_list_volumes_and_filters PASSED [ 33%] tests/unit/api_volume_test.py::VolumeTest::test_remove_volume PASSED [ 33%] tests/unit/auth_test.py::RegressionTest::test_803_urlsafe_encode PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_hub_index_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_legacy_hub_index_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_invalid_index_name PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_dotted_hub_library_image PASSED [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_image PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost_with_username PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port_and_username PASSED [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry PASSED [ 36%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 36%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_username PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_auth_with_empty_credstore_and_auth_dict PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_explicit_none PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_registry PASSED [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_fully_explicit PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_legacy_config PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_match PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_trailing_slash PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_protocol PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_path_wrong_proto PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_hub PASSED [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_legacy_hub PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_library_image PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_private_registry PASSED [ 39%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_unauthenticated_registry PASSED [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env PASSED [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_utf8 PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_identity_token PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_invalid_auth_dict PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_unknown_keys PASSED [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_with_random_name PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_legacy_config PASSED [ 41%] tests/unit/auth_test.py::LoadConfigTest::test_load_modern_json_config PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_3_sources PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_only PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_auths_entries PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_credhelpers_only PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_auths_entry PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_credhelper PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_no_default PASSED [ 43%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_with_plain_dict PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_call_api_client_method PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_call_containers PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 44%] tests/unit/client_test.py::ClientTest::test_events PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_info PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_ping PASSED [ 45%] tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED [ 45%] tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 45%] tests/unit/client_test.py::ClientTest::test_version PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_unix PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_win SKIPPED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_unix PASSED [ 46%] tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_win SKIPPED [ 46%] tests/unit/context_test.py::BaseContextTest::test_context_inspect_without_params PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_get_current_context PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_https_host PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_linux PASSED [ 47%] tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_windows SKIPPED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_percent_types PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_mem_swappiness PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_nano_cpus_types PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_count PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_percent PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_period PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_runtime PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_dns_opt PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_isolation PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_kill_disable PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_score_adj PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_uts PASSED [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_volume_driver PASSED [ 53%] tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 53%] tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_obj_ulimit PASSED [ 53%] tests/unit/dockertypes_test.py::UlimitTest::test_ulimit_invalid_type PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 54%] tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 54%] tests/unit/dockertypes_test.py::EndpointConfigTest::test_create_endpoint_config_with_aliases PASSED [ 54%] tests/unit/dockertypes_test.py::IPAMConfigTest::test_create_ipam_config PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas_0 PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_simple PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows XFAIL [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_named_volume PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_invalid PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_no_source PASSED [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_ro PASSED [ 57%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 57%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_short_form PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_invalid PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_multiple PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_no_protocol_and_mode PASSED [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_simple PASSED [ 58%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 58%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol_and_mode PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_api_error_is_caught_by_dockerexception PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_create_error_from_exception PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_error_500 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_200 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_300 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_200 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_400 PASSED [ 60%] tests/unit/errors_test.py::APIErrorTest::test_status_code_500 PASSED [ 60%] tests/unit/errors_test.py::ContainerErrorTest::test_container_with_stderr PASSED [ 61%] tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 61%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 61%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_single PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_container_args PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_with_image_object PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_get PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_list PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_list_ignore_removed PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run PASSED [ 62%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_detach PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_pull PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_remove PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 63%] tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED [ 63%] tests/unit/models_containers_test.py::ContainerTest::test_commit PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_diff PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_export PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_image PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_kill PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_labels PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_name PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_pause PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_put_archive PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_remove PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_rename PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_start PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_stats PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_status PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_top PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_update PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_wait PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_build PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 68%] tests/unit/models_images_test.py::ImageCollectionTest::test_list PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_load PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_push PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_remove PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_search PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_history PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_save PASSED [ 70%] tests/unit/models_images_test.py::ImageTest::test_short_id PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tag PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tags PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 71%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 71%] tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED [ 72%] tests/unit/models_resources_test.py::ModelTest::test_hash PASSED [ 72%] tests/unit/models_resources_test.py::ModelTest::test_reload PASSED [ 72%] tests/unit/models_secrets_test.py::CreateServiceTest::test_secrets_repr PASSED [ 73%] tests/unit/models_services_test.py::CreateServiceKwargsTest::test_get_create_service_kwargs PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_hostname_prefix_trim PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 73%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_user_and_hostname PASSED [ 74%] tests/unit/ssladapter_test.py::SSLAdapterTest::test_only_uses_tls PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 74%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_join_swarm PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_join_swarm_no_listen_address_takes_default PASSED [ 75%] tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED [ 75%] tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED [ 75%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_single_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 76%] tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard_with_exception PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_custom_dockerfile PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_include_wildcard PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_last_line_precedence PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_dupes PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_and_double_wildcard PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_leading_dot_slash PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename_leading_slash PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_wildcard_filename PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_with_path_traversal PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_exclude PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_end PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_start PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_single_filename PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_wildcard_exception PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_directory_link PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_socket_file PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_broken_symlinks PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 82%] tests/unit/utils_build_test.py::TarTest::test_tar_with_empty_directory PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_excludes PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_file_symlinks PASSED [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_inaccessible_file SKIPPED [ 83%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_fallback PASSED [ 83%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 83%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_explicit_path PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_legacy_name PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_posix PASSED [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_windows SKIPPED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 84%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_from_env PASSED [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 85%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_environment PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED [ 86%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_inject_proxy_environment PASSED [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_new PASSED [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_truthiness PASSED [ 87%] tests/unit/utils_test.py::DecoratorsTest::test_update_headers PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_alternate_env PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 87%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_no_cert_path PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false PASSED [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false_no_cert PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_compact PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 88%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_empty PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_list PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_no_mode PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_bytes_input PASSED [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_unicode_input PASSED [ 89%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_commented_line PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_invalid_line PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_newline PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_proper PASSED [ 90%] tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_with_equals_character PASSED [ 90%] tests/unit/utils_test.py::ParseHostTest::test_parse_host PASSED [ 90%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_empty_value PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls_tcp_proto PASSED [ 91%] tests/unit/utils_test.py::ParseHostTest::test_parse_host_trailing_slash PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_no_tag PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_sha PASSED [ 91%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_no_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_no_tag PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_sha PASSED [ 92%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 92%] tests/unit/utils_test.py::ParseDeviceTest::test_dict PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_full_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_hybrid_list PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_partial_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseDeviceTest::test_permissionless_string_definition PASSED [ 93%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_float PASSED [ 94%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_invalid PASSED [ 94%] tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_valid PASSED [ 94%] tests/unit/utils_test.py::UtilsTest::test_convert_filters PASSED [ 94%] tests/unit/utils_test.py::UtilsTest::test_decode_json_header PASSED [ 94%] tests/unit/utils_test.py::SplitCommandTest::test_split_command_with_unicode PASSED [ 94%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_port_ranges PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_ports PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_port_ranges PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_ports PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_one_port PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_port_range PASSED [ 95%] tests/unit/utils_test.py::PortsTest::test_host_only_with_colon PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_non_matching_length_port_ranges PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_port_and_range_invalid PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_port_only_with_colon PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_split_port_empty_string PASSED [ 96%] tests/unit/utils_test.py::PortsTest::test_split_port_invalid PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_invalid_protocol PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_no_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_non_string PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_random_port_range_with_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_range_no_host_port PASSED [ 97%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_ip_no_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_range_with_protocol PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip_no_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_host_port PASSED [ 98%] tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_address PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_square_brackets_address PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_split_port_with_protocol PASSED [ 99%] tests/unit/utils_test.py::PortsTest::test_with_no_container_port PASSED [ 99%] tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_binary_unicode_value PASSED [ 99%] tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_no_value PASSED [100%] =================================== FAILURES =================================== ________________________ DockerApiTest.test_remove_link ________________________ tests/unit/api_test.py:323: in test_remove_link timeout=DEFAULT_TIMEOUT_SECONDS /usr/local/lib/python3.7/unittest/mock.py:878: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: Expected call: mock('DELETE', 'http+docker://localhost/v1.41/containers/3cc2351ab11b', params={'v': False, 'link': True, 'force': False}, timeout=60) E Actual call: mock('DELETE', 'http+docker://localhost/v1.41/containers/3cc2351ab11b', params={'v': False, 'link': True, 'force': False}, timeout=70) ---------- coverage: platform linux, python 3.7.12-final-0 ----------- Name Stmts Miss Branch BrPart Cover ----------------------------------------------------------------------- docker/__init__.py 8 0 0 0 100% docker/api/__init__.py 1 0 0 0 100% docker/api/build.py 126 41 92 21 62% docker/api/client.py 261 65 92 11 75% docker/api/config.py 29 18 4 0 33% docker/api/container.py 271 72 108 26 66% docker/api/daemon.py 39 4 14 4 85% docker/api/exec_api.py 45 11 22 9 67% docker/api/image.py 159 43 60 14 70% docker/api/network.py 90 35 48 11 51% docker/api/plugin.py 89 68 14 0 20% docker/api/secret.py 34 22 8 0 29% docker/api/service.py 200 176 149 0 7% docker/api/swarm.py 106 67 38 1 28% docker/api/volume.py 38 9 14 2 71% docker/auth.py 197 16 74 16 88% docker/client.py 69 9 2 0 87% docker/constants.py 21 0 0 0 100% docker/context/__init__.py 2 0 0 0 100% docker/context/api.py 78 41 38 8 39% docker/context/config.py 61 33 16 2 42% docker/context/context.py 154 96 64 6 29% docker/credentials/__init__.py 3 0 0 0 100% docker/credentials/constants.py 4 0 0 0 100% docker/credentials/errors.py 11 4 2 0 54% docker/credentials/store.py 44 30 12 0 25% docker/credentials/utils.py 23 18 12 0 14% docker/errors.py 110 26 20 4 71% docker/models/__init__.py 0 0 0 0 100% docker/models/configs.py 21 8 2 0 57% docker/models/containers.py 183 11 70 9 91% docker/models/images.py 136 55 56 4 52% docker/models/networks.py 37 7 12 3 71% docker/models/nodes.py 15 5 2 0 59% docker/models/plugins.py 48 29 8 0 34% docker/models/resource.py 41 10 6 3 72% docker/models/secrets.py 22 4 2 0 75% docker/models/services.py 87 35 36 4 59% docker/models/swarm.py 39 21 6 0 40% docker/models/volumes.py 23 10 4 0 48% docker/tls.py 37 6 14 6 76% docker/transport/__init__.py 11 3 0 0 73% docker/transport/basehttpadapter.py 6 0 2 1 88% docker/transport/npipeconn.py 57 52 8 0 8% docker/transport/npipesocket.py 134 130 20 0 3% docker/transport/sshconn.py 162 105 54 3 30% docker/transport/ssladapter.py 36 10 10 4 65% docker/transport/unixconn.py 54 3 6 1 93% docker/types/__init__.py 6 0 0 0 100% docker/types/base.py 4 0 2 0 100% docker/types/containers.py 419 79 326 43 81% docker/types/daemon.py 36 24 14 0 24% docker/types/healthcheck.py 33 20 4 0 35% docker/types/networks.py 41 11 28 9 65% docker/types/services.py 321 146 216 41 50% docker/types/swarm.py 51 45 40 0 7% docker/utils/__init__.py 3 0 0 0 100% docker/utils/build.py 150 24 72 10 83% docker/utils/config.py 36 1 10 1 96% docker/utils/decorators.py 32 1 12 1 95% docker/utils/fnmatch.py 55 18 28 2 61% docker/utils/json_stream.py 40 8 14 2 78% docker/utils/ports.py 50 3 32 2 91% docker/utils/proxy.py 32 1 12 0 98% docker/utils/socket.py 85 10 40 8 84% docker/utils/utils.py 278 18 171 13 92% docker/version.py 2 0 2 0 100% ----------------------------------------------------------------------- TOTAL 5096 1817 2244 305 61% =========================== short test summary info ============================ XFAIL tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows SKIPPED [1] tests/unit/api_build_test.py:169: Windows-specific syntax SKIPPED [1] tests/unit/client_test.py:99: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:138: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:212: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/client_test.py:249: Npipe Connection Pool only on Windows SKIPPED [1] tests/unit/context_test.py:18: Windows specific path check SKIPPED [1] tests/unit/utils_build_test.py:230: Backslash patterns only on Windows SKIPPED [1] tests/unit/utils_build_test.py:252: Backslash patterns only on Windows SKIPPED [1] tests/unit/utils_build_test.py:400: root user always has access ; no chmod on Windows SKIPPED [1] tests/unit/utils_config_test.py:54: condition: sys.platform != 'win32' ============= 1 failed, 559 passed, 10 skipped, 1 xfailed in 6.20s ============= [Pipeline] sh + docker stop dpy-dind-6-0-py3.7-20.10.12 Error response from daemon: No such container: dpy-dind-6-0-py3.7-20.10.12 [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } Failed in branch py3.7_20.10.12 [Pipeline] // parallel [Pipeline] End of Pipeline GitHub has been notified of this commit’s build result ERROR: script returned exit code 1 Finished: FAILURE