Pull request #3107 opened Connecting to https://api.github.com using docker-jenkins/****** (docker-jenkins GitHub credentials) Loading trusted files from base branch main at aaf68b7f98df7f886778395112267b9b0f6140bc rather than 758aedbd56a11e50264fe2f8f6a2a07fb899065a Obtained Jenkinsfile from aaf68b7f98df7f886778395112267b9b0f6140bc 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 4f8fd6a86e521290dafaf7c28eced2a9b21b220a The recommended git tool is: NONE using credential jps-reader Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository https://github.com/docker/jps.git > git init /var/cloudbees-jenkins-distribution/workspace/docker-py_PR-3107@libs/jps # timeout=10 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 > git config remote.origin.url https://github.com/docker/jps.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10 Avoid second fetch Checking out Revision 4f8fd6a86e521290dafaf7c28eced2a9b21b220a (master) > git config core.sparsecheckout # timeout=10 > git checkout -f 4f8fd6a86e521290dafaf7c28eced2a9b21b220a # timeout=10 Commit message: "Merge pull request #26 from docker/add-retry-to-vpn-image-pull" First time build. Skipping changelog. > git --version # timeout=10 > git --version # 'git version 2.20.1' 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 Still waiting to schedule task ‘EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-00a08cef8b319cab1)’ is offline Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-00a08cef8b319cab1) in /home/ubuntu/workspace/docker-py_PR-3107 [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-3107@tmp/fe3eac11-5c8d-4310-a682-5c7c95dddffc/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-3107:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally latest: Pulling from library/busybox 4b35f584bb4f: Pulling fs layer 4b35f584bb4f: Verifying Checksum 4b35f584bb4f: Download complete 4b35f584bb4f: Pull complete Digest: sha256:b5d6fe0712636ceb7430189de28819e195e8966372edfc2d9409d79402a0dc16 Status: Downloaded newer image for busybox:latest [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 Cloning repository https://github.com/docker/docker-py.git > git init /home/ubuntu/workspace/docker-py_PR-3107 # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 Fetching without tags Merging remotes/origin/main commit aaf68b7f98df7f886778395112267b9b0f6140bc into PR head commit 758aedbd56a11e50264fe2f8f6a2a07fb899065a Merge succeeded, producing 758aedbd56a11e50264fe2f8f6a2a07fb899065a Checking out Revision 758aedbd56a11e50264fe2f8f6a2a07fb899065a (PR-3107) > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/3107/head:refs/remotes/origin/PR-3107 # timeout=10 > git config --add remote.origin.fetch +refs/heads/main:refs/remotes/origin/main # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # 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 aaf68b7f98df7f886778395112267b9b0f6140bc # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # timeout=10 Commit message: "fix: exec_run -- default user-root" First time build. Skipping changelog. [Pipeline] sh + git rev-parse HEAD [Pipeline] withDockerRegistry $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ > git --version # timeout=10 > git --version # 'git version 2.25.1' fatal: bad object 4f8fd6a86e521290dafaf7c28eced2a9b21b220a [Pipeline] { [Pipeline] isUnix [Pipeline] sh + docker pull dockerpinata/docker-py:sshdind-758aedbd56a11e50264fe2f8f6a2a07fb899065a Error response from daemon: manifest for dockerpinata/docker-py:sshdind-758aedbd56a11e50264fe2f8f6a2a07fb899065a not found: manifest unknown: manifest unknown [Pipeline] isUnix [Pipeline] sh 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-3107@tmp/d9ef5087-3b7c-4769-8c7e-96a02c363cb1/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded + docker build -t dockerpinata/docker-py:sshdind-758aedbd56a11e50264fe2f8f6a2a07fb899065a -f tests/Dockerfile-ssh-dind . #1 [internal] load build definition from Dockerfile-ssh-dind #1 transferring dockerfile: #1 transferring dockerfile: 523B done #1 DONE 0.1s #2 [internal] load .dockerignore #2 transferring context: 161B done #2 DONE 0.1s #3 [auth] docker/dockerfile:pull token for registry-1.docker.io #3 DONE 0.0s #4 resolve image config for docker.io/docker/dockerfile:1 #4 DONE 0.5s #5 docker-image://docker.io/docker/dockerfile:1@sha256:39b85bbfa7536a5feceb7372a0817649ecb2724562a38360f4d6a7782a409b14 #5 resolve docker.io/docker/dockerfile:1@sha256:39b85bbfa7536a5feceb7372a0817649ecb2724562a38360f4d6a7782a409b14 done #5 sha256:39b85bbfa7536a5feceb7372a0817649ecb2724562a38360f4d6a7782a409b14 8.40kB / 8.40kB done #5 sha256:966d40f9ba8366e74c2fa353fc0bc7bbc167d2a0f3ad2420db8b9e633049462d 482B / 482B done #5 sha256:dbdd11720762ad504260c66161c964e59eba06b95a7aa64a68634b598a830a91 2.90kB / 2.90kB done #5 sha256:a47ff7046597eea0123ea02817165350e3680f75000dc5d69c9a310258e1bedd 7.34MB / 11.55MB 0.1s #5 sha256:a47ff7046597eea0123ea02817165350e3680f75000dc5d69c9a310258e1bedd 11.55MB / 11.55MB 0.2s done #5 extracting sha256:a47ff7046597eea0123ea02817165350e3680f75000dc5d69c9a310258e1bedd #5 extracting sha256:a47ff7046597eea0123ea02817165350e3680f75000dc5d69c9a310258e1bedd 0.2s done #5 DONE 0.5s #6 [auth] library/docker:pull token for registry-1.docker.io #6 DONE 0.0s #7 [internal] load metadata for docker.io/library/docker:20.10-dind #7 DONE 0.4s #8 [1/5] FROM docker.io/library/docker:20.10-dind@sha256:eb2b932b67488ad8db885efb38e2417810c06a2a64d585ae861d3893e50f2bc8 #8 resolve docker.io/library/docker:20.10-dind@sha256:eb2b932b67488ad8db885efb38e2417810c06a2a64d585ae861d3893e50f2bc8 done #8 sha256:88c01ecbf7def2c25f729b7a6052861b20c85913dfd9938f40bd2ab49c017951 3.25kB / 3.25kB done #8 sha256:f56be85fc22e46face30e2c3de3f7fe7c15f8fd7c4e5add29d7f64b87abdaa09 0B / 3.37MB 0.1s #8 sha256:eb2b932b67488ad8db885efb38e2417810c06a2a64d585ae861d3893e50f2bc8 549B / 549B done #8 sha256:efca87bb8a34c0943adb2a99ee00daac9540aaf806a49c60ab90f98bd803e8dd 11.31kB / 11.31kB done #8 ... #9 [internal] load build context #9 transferring context: 2.27kB done #9 DONE 0.1s #8 [1/5] FROM docker.io/library/docker:20.10-dind@sha256:eb2b932b67488ad8db885efb38e2417810c06a2a64d585ae861d3893e50f2bc8 #8 extracting sha256:f56be85fc22e46face30e2c3de3f7fe7c15f8fd7c4e5add29d7f64b87abdaa09 #8 sha256:f56be85fc22e46face30e2c3de3f7fe7c15f8fd7c4e5add29d7f64b87abdaa09 3.37MB / 3.37MB 0.2s done #8 sha256:b96d85d4996fe89c86109a5e6848318bef12adfeaadb609367c14ea420bbfae6 92B / 92B 0.2s done #8 sha256:d58d4c93159790b1fa011caf2ec698afe11bc8d70e2d863396f9a2a48b142da1 2.06MB / 2.06MB 0.3s done #8 sha256:fd1e146dcaabf309f3c20b2de13ece0dac7fde075bcdad5ff9ed9dcfef04b414 5.24MB / 16.00MB 0.4s #8 sha256:87a652e3fd0ae5e5a1e311c686444666d6320785624a75a6886468f02a596653 1.01MB / 16.38MB 0.4s #8 sha256:fd1e146dcaabf309f3c20b2de13ece0dac7fde075bcdad5ff9ed9dcfef04b414 15.73MB / 16.00MB 0.5s #8 sha256:87a652e3fd0ae5e5a1e311c686444666d6320785624a75a6886468f02a596653 7.34MB / 16.38MB 0.5s #8 sha256:c7df1ca0b171cee15bc401c1ca084fe76d7dce8e9d7fea90b2a55ce86c94995c 0B / 13.98MB 0.5s #8 sha256:fd1e146dcaabf309f3c20b2de13ece0dac7fde075bcdad5ff9ed9dcfef04b414 16.00MB / 16.00MB 0.5s done #8 sha256:87a652e3fd0ae5e5a1e311c686444666d6320785624a75a6886468f02a596653 14.52MB / 16.38MB 0.6s #8 sha256:c7df1ca0b171cee15bc401c1ca084fe76d7dce8e9d7fea90b2a55ce86c94995c 7.34MB / 13.98MB 0.6s #8 sha256:a5f808d693891f379296b6217519b7d0db91500c15f1db3b75c9c0aab75d1192 0B / 546B 0.6s #8 sha256:87a652e3fd0ae5e5a1e311c686444666d6320785624a75a6886468f02a596653 16.38MB / 16.38MB 0.7s #8 sha256:c7df1ca0b171cee15bc401c1ca084fe76d7dce8e9d7fea90b2a55ce86c94995c 10.49MB / 13.98MB 0.7s #8 sha256:a5f808d693891f379296b6217519b7d0db91500c15f1db3b75c9c0aab75d1192 546B / 546B 0.6s done #8 extracting sha256:f56be85fc22e46face30e2c3de3f7fe7c15f8fd7c4e5add29d7f64b87abdaa09 0.6s done #8 sha256:87a652e3fd0ae5e5a1e311c686444666d6320785624a75a6886468f02a596653 16.38MB / 16.38MB 0.8s done #8 sha256:c7df1ca0b171cee15bc401c1ca084fe76d7dce8e9d7fea90b2a55ce86c94995c 13.98MB / 13.98MB 0.9s #8 sha256:bff95e1b3c11beed0c1c91ce07de8e6de8d7bb0e69d4e75d7924eeaee6f06c52 1.02kB / 1.02kB 0.9s #8 sha256:c7df1ca0b171cee15bc401c1ca084fe76d7dce8e9d7fea90b2a55ce86c94995c 13.98MB / 13.98MB 0.9s done #8 sha256:a465fd7ee293c03bdf1522fba9c17669903954342e0b35a4d2c19a15d76bf289 167B / 167B 1.0s #8 sha256:bff95e1b3c11beed0c1c91ce07de8e6de8d7bb0e69d4e75d7924eeaee6f06c52 1.02kB / 1.02kB 1.0s done #8 sha256:a465fd7ee293c03bdf1522fba9c17669903954342e0b35a4d2c19a15d76bf289 167B / 167B 1.0s done #8 extracting sha256:d58d4c93159790b1fa011caf2ec698afe11bc8d70e2d863396f9a2a48b142da1 #8 sha256:5b9d9deda12eb77ae0ba70d53b10e73d0b8887c4ab401f7f1886e2a115a590e0 1.32kB / 1.32kB 1.1s #8 sha256:5b9d9deda12eb77ae0ba70d53b10e73d0b8887c4ab401f7f1886e2a115a590e0 1.32kB / 1.32kB 1.1s done #8 sha256:526f8b8f156a67dc2486312da9e298ba6b18c7437c6d0226996e6dbd6a5ba573 15.80MB / 53.02MB 1.4s #8 sha256:d54037e1c8410f611d7ac20a1038da862ec63ed41194088522017af291d6c4aa 6.84MB / 6.84MB 1.4s #8 sha256:415337883b879b5750946a4c358fe58372fc1e5ac41b13ac5dddf401bf5c3f2d 0B / 1.05kB 1.3s #8 sha256:526f8b8f156a67dc2486312da9e298ba6b18c7437c6d0226996e6dbd6a5ba573 28.31MB / 53.02MB 1.5s #8 sha256:d54037e1c8410f611d7ac20a1038da862ec63ed41194088522017af291d6c4aa 6.84MB / 6.84MB 1.5s done #8 sha256:415337883b879b5750946a4c358fe58372fc1e5ac41b13ac5dddf401bf5c3f2d 1.05kB / 1.05kB 1.4s done #8 sha256:cd3b9879c0dd9755fa83b38b6fe92858bc1bdf40b66c57564b6cdc72602ddb6c 0B / 2.82kB 1.5s #8 extracting sha256:d58d4c93159790b1fa011caf2ec698afe11bc8d70e2d863396f9a2a48b142da1 0.5s done #8 sha256:526f8b8f156a67dc2486312da9e298ba6b18c7437c6d0226996e6dbd6a5ba573 37.75MB / 53.02MB 1.6s #8 sha256:cd3b9879c0dd9755fa83b38b6fe92858bc1bdf40b66c57564b6cdc72602ddb6c 2.82kB / 2.82kB 1.5s done #8 extracting sha256:b96d85d4996fe89c86109a5e6848318bef12adfeaadb609367c14ea420bbfae6 #8 sha256:526f8b8f156a67dc2486312da9e298ba6b18c7437c6d0226996e6dbd6a5ba573 53.02MB / 53.02MB 1.8s #8 extracting sha256:b96d85d4996fe89c86109a5e6848318bef12adfeaadb609367c14ea420bbfae6 done #8 sha256:526f8b8f156a67dc2486312da9e298ba6b18c7437c6d0226996e6dbd6a5ba573 53.02MB / 53.02MB 1.9s done #8 extracting sha256:c7df1ca0b171cee15bc401c1ca084fe76d7dce8e9d7fea90b2a55ce86c94995c 0.1s #8 extracting sha256:c7df1ca0b171cee15bc401c1ca084fe76d7dce8e9d7fea90b2a55ce86c94995c 0.5s done #8 extracting sha256:fd1e146dcaabf309f3c20b2de13ece0dac7fde075bcdad5ff9ed9dcfef04b414 0.1s #8 extracting sha256:fd1e146dcaabf309f3c20b2de13ece0dac7fde075bcdad5ff9ed9dcfef04b414 0.5s done #8 extracting sha256:87a652e3fd0ae5e5a1e311c686444666d6320785624a75a6886468f02a596653 0.1s #8 extracting sha256:87a652e3fd0ae5e5a1e311c686444666d6320785624a75a6886468f02a596653 0.5s done #8 extracting sha256:a5f808d693891f379296b6217519b7d0db91500c15f1db3b75c9c0aab75d1192 #8 extracting sha256:a5f808d693891f379296b6217519b7d0db91500c15f1db3b75c9c0aab75d1192 done #8 extracting sha256:bff95e1b3c11beed0c1c91ce07de8e6de8d7bb0e69d4e75d7924eeaee6f06c52 #8 extracting sha256:bff95e1b3c11beed0c1c91ce07de8e6de8d7bb0e69d4e75d7924eeaee6f06c52 done #8 extracting sha256:a465fd7ee293c03bdf1522fba9c17669903954342e0b35a4d2c19a15d76bf289 #8 extracting sha256:a465fd7ee293c03bdf1522fba9c17669903954342e0b35a4d2c19a15d76bf289 done #8 extracting sha256:d54037e1c8410f611d7ac20a1038da862ec63ed41194088522017af291d6c4aa #8 extracting sha256:d54037e1c8410f611d7ac20a1038da862ec63ed41194088522017af291d6c4aa 0.3s done #8 extracting sha256:5b9d9deda12eb77ae0ba70d53b10e73d0b8887c4ab401f7f1886e2a115a590e0 done #8 extracting sha256:526f8b8f156a67dc2486312da9e298ba6b18c7437c6d0226996e6dbd6a5ba573 0.1s #8 extracting sha256:526f8b8f156a67dc2486312da9e298ba6b18c7437c6d0226996e6dbd6a5ba573 1.4s done #8 extracting sha256:415337883b879b5750946a4c358fe58372fc1e5ac41b13ac5dddf401bf5c3f2d done #8 extracting sha256:cd3b9879c0dd9755fa83b38b6fe92858bc1bdf40b66c57564b6cdc72602ddb6c done #8 DONE 7.0s #10 [2/5] RUN apk add --no-cache --upgrade openssh #10 0.364 fetch https://dl-cdn.alpinelinux.org/alpine/v3.17/main/x86_64/APKINDEX.tar.gz #10 1.490 fetch https://dl-cdn.alpinelinux.org/alpine/v3.17/community/x86_64/APKINDEX.tar.gz #10 1.704 (1/4) Installing openssh-sftp-server (9.1_p1-r2) #10 1.709 (2/4) Installing openssh-server-common (9.1_p1-r2) #10 1.712 (3/4) Installing openssh-server (9.1_p1-r2) #10 1.726 (4/4) Installing openssh (9.1_p1-r2) #10 1.733 Executing busybox-1.35.0-r29.trigger #10 1.737 OK: 33 MiB in 60 packages #10 DONE 3.7s #11 [3/5] COPY tests/ssh/config/server /etc/ssh/ #11 DONE 0.2s #12 [4/5] COPY tests/ssh/config/client/id_rsa.pub /root/.ssh/authorized_keys #12 DONE 0.1s #13 [5/5] RUN chmod -R 600 /etc/ssh && chmod -R 600 /root/.ssh && ln -s /usr/local/bin/docker /usr/bin/docker #13 DONE 0.5s #14 exporting to image #14 exporting layers #14 exporting layers 0.3s done #14 writing image sha256:63100bc973510746c6a8bda87ee89930d1d7db5d1bd9c3ba824305b8bc770355 done #14 naming to docker.io/dockerpinata/docker-py:sshdind-758aedbd56a11e50264fe2f8f6a2a07fb899065a done #14 DONE 0.3s [Pipeline] isUnix [Pipeline] sh + docker tag dockerpinata/docker-py:sshdind-758aedbd56a11e50264fe2f8f6a2a07fb899065a dockerpinata/docker-py:sshdind-758aedbd56a11e50264fe2f8f6a2a07fb899065a [Pipeline] isUnix [Pipeline] sh + docker push dockerpinata/docker-py:sshdind-758aedbd56a11e50264fe2f8f6a2a07fb899065a The push refers to repository [docker.io/dockerpinata/docker-py] 5722161c06ff: Preparing d95b36d8b634: Preparing 23df23f4b781: Preparing a3a6bdb7ea02: Preparing 65195d77d13b: Preparing 35fb1036164a: Preparing d510a016900e: Preparing 28ccec0746e9: Preparing 3d64c1cd0dea: Preparing 07f18b331bed: Preparing d8da1bafd744: Preparing 0c081e03197b: Preparing 90359ee34c5c: Preparing 1cf578bd5f73: Preparing 9b3571694640: Preparing 7c6b4763f1d2: Preparing c985518cb420: Preparing f1417ff83b31: Preparing 35fb1036164a: Waiting d510a016900e: Waiting 28ccec0746e9: Waiting 3d64c1cd0dea: Waiting 07f18b331bed: Waiting d8da1bafd744: Waiting 0c081e03197b: Waiting 90359ee34c5c: Waiting 1cf578bd5f73: Waiting 9b3571694640: Waiting 7c6b4763f1d2: Waiting c985518cb420: Waiting f1417ff83b31: Waiting 65195d77d13b: Mounted from library/docker 35fb1036164a: Mounted from library/docker d510a016900e: Mounted from library/docker 28ccec0746e9: Mounted from library/docker 23df23f4b781: Pushed a3a6bdb7ea02: Pushed 5722161c06ff: Pushed d95b36d8b634: Pushed 3d64c1cd0dea: Mounted from library/docker d8da1bafd744: Mounted from library/docker 07f18b331bed: Mounted from library/docker 0c081e03197b: Mounted from library/docker 90359ee34c5c: Mounted from library/docker 1cf578bd5f73: Mounted from library/docker 9b3571694640: Mounted from library/docker 7c6b4763f1d2: Mounted from library/docker c985518cb420: Mounted from library/docker f1417ff83b31: Mounted from library/docker sshdind-758aedbd56a11e50264fe2f8f6a2a07fb899065a: digest: sha256:b0827af439716258dcabf72d92a3353cc160e47e097ae4a739d93f9b64e496fb size: 4084 [Pipeline] isUnix [Pipeline] sh + docker pull dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a Error response from daemon: manifest for dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a not found: manifest unknown: manifest unknown [Pipeline] isUnix [Pipeline] sh + docker build -t dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a -f tests/Dockerfile --build-arg PYTHON_VERSION=3.10 . #1 [internal] load build definition from Dockerfile #1 transferring dockerfile: 1.76kB done #1 DONE 0.0s #2 [internal] load .dockerignore #2 transferring context: 161B done #2 DONE 0.0s #3 resolve image config for docker.io/docker/dockerfile:1 #3 DONE 0.1s #4 docker-image://docker.io/docker/dockerfile:1@sha256:39b85bbfa7536a5feceb7372a0817649ecb2724562a38360f4d6a7782a409b14 #4 CACHED #5 [auth] library/python:pull token for registry-1.docker.io #5 DONE 0.0s #6 [internal] load metadata for docker.io/library/python:3.10 #6 DONE 0.2s #7 [stage-0 1/20] FROM docker.io/library/python:3.10@sha256:14b683d63e171ad811b5ff3d55d3a1138f34bb324e2e222fe37b6eab121a8517 #7 resolve docker.io/library/python:3.10@sha256:14b683d63e171ad811b5ff3d55d3a1138f34bb324e2e222fe37b6eab121a8517 done #7 ... #8 [internal] load build context #8 transferring context: 1.24MB 0.1s done #8 DONE 0.1s #7 [stage-0 1/20] FROM docker.io/library/python:3.10@sha256:14b683d63e171ad811b5ff3d55d3a1138f34bb324e2e222fe37b6eab121a8517 #7 sha256:84a161676fcf8e1ea4f706075e54bb7a9cf0e1136cdbc9d07bf2867e3e924770 2.22kB / 2.22kB done #7 sha256:670730c27c2eacf07897a6e94fe55423ea50b884d9c28161a283bbbf064d1124 4.19MB / 10.88MB 0.1s #7 sha256:14b683d63e171ad811b5ff3d55d3a1138f34bb324e2e222fe37b6eab121a8517 2.14kB / 2.14kB done #7 sha256:2b8b079d754854514f53f2a5dcc1eee4f87feb00221c2cca1320c71e7064f365 7.90kB / 7.90kB done #7 sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 1.05MB / 55.05MB 0.1s #7 sha256:68a71c865a2c34678c6dea55e4b0928f751ee3c0ca91cace6e4e0578c534d6cf 5.17MB / 5.17MB 0.1s #7 sha256:670730c27c2eacf07897a6e94fe55423ea50b884d9c28161a283bbbf064d1124 10.88MB / 10.88MB 0.2s done #7 sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 16.78MB / 55.05MB 0.3s #7 sha256:68a71c865a2c34678c6dea55e4b0928f751ee3c0ca91cace6e4e0578c534d6cf 5.17MB / 5.17MB 0.1s done #7 sha256:5a7a2c95f0f8b221d776ccf35911b68eec2cf9414a44d216205a6f03e381d3d7 13.63MB / 54.58MB 0.3s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 5.24MB / 196.81MB 0.3s #7 sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 23.07MB / 55.05MB 0.4s #7 sha256:5a7a2c95f0f8b221d776ccf35911b68eec2cf9414a44d216205a6f03e381d3d7 19.92MB / 54.58MB 0.4s #7 sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 29.36MB / 55.05MB 0.5s #7 sha256:5a7a2c95f0f8b221d776ccf35911b68eec2cf9414a44d216205a6f03e381d3d7 25.17MB / 54.58MB 0.5s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 20.97MB / 196.81MB 0.5s #7 sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 40.89MB / 55.05MB 0.7s #7 sha256:5a7a2c95f0f8b221d776ccf35911b68eec2cf9414a44d216205a6f03e381d3d7 44.04MB / 54.58MB 0.7s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 32.51MB / 196.81MB 0.7s #7 sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 55.05MB / 55.05MB 0.9s #7 sha256:5a7a2c95f0f8b221d776ccf35911b68eec2cf9414a44d216205a6f03e381d3d7 54.58MB / 54.58MB 0.9s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 51.38MB / 196.81MB 0.9s #7 sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 55.05MB / 55.05MB 0.9s done #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 67.11MB / 196.81MB 1.0s #7 sha256:5a7a2c95f0f8b221d776ccf35911b68eec2cf9414a44d216205a6f03e381d3d7 54.58MB / 54.58MB 1.0s done #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 77.59MB / 196.81MB 1.1s #7 extracting sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 0.1s #7 sha256:f8c6dc6780819f5eb5a6ee84ce72dd613d5e6c406585211a064b6ef641c8a09a 3.15MB / 6.29MB 1.1s #7 sha256:a6daac42f0daee2fe11dd237f570a94067fd69ec126838af3bc82a4d57f11f8c 2.10MB / 17.39MB 1.1s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 96.95MB / 196.81MB 1.3s #7 sha256:f8c6dc6780819f5eb5a6ee84ce72dd613d5e6c406585211a064b6ef641c8a09a 6.29MB / 6.29MB 1.2s done #7 sha256:a6daac42f0daee2fe11dd237f570a94067fd69ec126838af3bc82a4d57f11f8c 13.63MB / 17.39MB 1.3s #7 sha256:6aee427ebf20be7b852728cc0cab3bafd4ba8710792d5239cf62316fc4665e16 243B / 243B 1.2s done #7 sha256:a6daac42f0daee2fe11dd237f570a94067fd69ec126838af3bc82a4d57f11f8c 17.39MB / 17.39MB 1.4s done #7 sha256:f3a8bc02d1593e5bf4b6dcf93773a6a4787cb1889270c22c050ba265dd582d0c 3.08MB / 3.08MB 1.4s done #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 116.39MB / 196.81MB 1.5s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 128.97MB / 196.81MB 1.6s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 139.46MB / 196.81MB 1.7s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 149.95MB / 196.81MB 1.8s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 172.15MB / 196.81MB 2.0s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 188.74MB / 196.81MB 2.2s #7 sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 196.81MB / 196.81MB 2.5s done #7 extracting sha256:3e440a7045683e27f8e2fa04000e0e078d8dfac0c971358ae0f8c65c13321c8e 2.6s done #7 extracting sha256:68a71c865a2c34678c6dea55e4b0928f751ee3c0ca91cace6e4e0578c534d6cf #7 extracting sha256:68a71c865a2c34678c6dea55e4b0928f751ee3c0ca91cace6e4e0578c534d6cf 0.2s done #7 extracting sha256:670730c27c2eacf07897a6e94fe55423ea50b884d9c28161a283bbbf064d1124 #7 extracting sha256:670730c27c2eacf07897a6e94fe55423ea50b884d9c28161a283bbbf064d1124 0.3s done #7 extracting sha256:5a7a2c95f0f8b221d776ccf35911b68eec2cf9414a44d216205a6f03e381d3d7 0.1s #7 extracting sha256:5a7a2c95f0f8b221d776ccf35911b68eec2cf9414a44d216205a6f03e381d3d7 2.0s done #7 extracting sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 0.1s #7 extracting sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 5.1s #7 extracting sha256:6d627e120214bb28a729d4b54a0ecba4c4aeaf0295ca2d1f129480145fad2af6 6.1s done #7 extracting sha256:f8c6dc6780819f5eb5a6ee84ce72dd613d5e6c406585211a064b6ef641c8a09a 0.1s #7 extracting sha256:f8c6dc6780819f5eb5a6ee84ce72dd613d5e6c406585211a064b6ef641c8a09a 0.3s done #7 extracting sha256:a6daac42f0daee2fe11dd237f570a94067fd69ec126838af3bc82a4d57f11f8c #7 extracting sha256:a6daac42f0daee2fe11dd237f570a94067fd69ec126838af3bc82a4d57f11f8c 0.7s done #7 extracting sha256:6aee427ebf20be7b852728cc0cab3bafd4ba8710792d5239cf62316fc4665e16 #7 extracting sha256:6aee427ebf20be7b852728cc0cab3bafd4ba8710792d5239cf62316fc4665e16 done #7 extracting sha256:f3a8bc02d1593e5bf4b6dcf93773a6a4787cb1889270c22c050ba265dd582d0c #7 extracting sha256:f3a8bc02d1593e5bf4b6dcf93773a6a4787cb1889270c22c050ba265dd582d0c 0.2s done #7 DONE 14.6s #9 [stage-0 2/20] 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 #9 DONE 2.4s #10 [stage-0 3/20] RUN apt-get update && apt-get -y install --no-install-recommends gnupg2 pass #10 0.721 Get:1 http://deb.debian.org/debian bullseye InRelease [116 kB] #10 0.730 Get:2 http://deb.debian.org/debian-security bullseye-security InRelease [48.4 kB] #10 0.731 Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB] #10 0.828 Get:4 http://deb.debian.org/debian bullseye/main amd64 Packages [8183 kB] #10 0.931 Get:5 http://deb.debian.org/debian-security bullseye-security/main amd64 Packages [236 kB] #10 1.043 Get:6 http://deb.debian.org/debian bullseye-updates/main amd64 Packages [14.6 kB] #10 2.003 Fetched 8642 kB in 2s (5619 kB/s) #10 2.003 Reading package lists... #10 2.524 Reading package lists... #10 3.017 Building dependency tree... #10 3.134 Reading state information... #10 3.260 The following additional packages will be installed: #10 3.260 tree #10 3.261 Suggested packages: #10 3.261 python libxml-simple-perl ruby #10 3.261 Recommended packages: #10 3.261 qrencode xclip #10 3.313 The following NEW packages will be installed: #10 3.314 gnupg2 pass tree #10 3.582 0 upgraded, 3 newly installed, 0 to remove and 1 not upgraded. #10 3.582 Need to get 523 kB of archives. #10 3.582 After this operation, 727 kB of additional disk space will be used. #10 3.582 Get:1 http://deb.debian.org/debian bullseye/main amd64 gnupg2 all 2.2.27-2+deb11u2 [434 kB] #10 3.590 Get:2 http://deb.debian.org/debian bullseye/main amd64 tree amd64 1.8.0-1+b1 [49.6 kB] #10 3.591 Get:3 http://deb.debian.org/debian bullseye/main amd64 pass all 1.7.3-2 [39.2 kB] #10 3.749 debconf: delaying package configuration, since apt-utils is not installed #10 3.785 Fetched 523 kB in 0s (1903 kB/s) #10 3.808 Selecting previously unselected package gnupg2. #10 3.808 (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 23423 files and directories currently installed.) #10 3.825 Preparing to unpack .../gnupg2_2.2.27-2+deb11u2_all.deb ... #10 3.829 Unpacking gnupg2 (2.2.27-2+deb11u2) ... #10 3.867 Selecting previously unselected package tree. #10 3.870 Preparing to unpack .../tree_1.8.0-1+b1_amd64.deb ... #10 3.874 Unpacking tree (1.8.0-1+b1) ... #10 3.916 Selecting previously unselected package pass. #10 3.919 Preparing to unpack .../archives/pass_1.7.3-2_all.deb ... #10 3.927 Unpacking pass (1.7.3-2) ... #10 3.977 Setting up gnupg2 (2.2.27-2+deb11u2) ... #10 3.988 Setting up tree (1.8.0-1+b1) ... #10 3.998 Setting up pass (1.7.3-2) ... #10 DONE 4.1s #11 [stage-0 4/20] COPY tests/ssh/config/client /root/.ssh #11 DONE 0.1s #12 [stage-0 5/20] COPY tests/ssh/config/server/known_ed25519.pub /root/.ssh/known_hosts #12 DONE 0.0s #13 [stage-0 6/20] RUN sed -i '1s;^;dpy-dind-ssh ;' /root/.ssh/known_hosts #13 DONE 0.4s #14 [stage-0 7/20] RUN chmod -R 600 /root/.ssh #14 DONE 0.5s #15 [stage-0 8/20] COPY ./tests/gpg-keys /gpg-keys #15 DONE 0.1s #16 [stage-0 9/20] RUN gpg2 --import gpg-keys/secret #16 0.441 gpg: directory '/root/.gnupg' created #16 0.441 gpg: keybox '/root/.gnupg/pubring.kbx' created #16 0.442 gpg: /root/.gnupg/trustdb.gpg: trustdb created #16 0.443 gpg: key 464ED987A7B21401: public key "Sakuya Izayoi " imported #16 0.448 gpg: key 464ED987A7B21401: secret key imported #16 0.448 gpg: Total number processed: 1 #16 0.448 gpg: imported: 1 #16 0.448 gpg: secret keys read: 1 #16 0.448 gpg: secret keys imported: 1 #16 DONE 0.5s #17 [stage-0 10/20] RUN gpg2 --import-ownertrust gpg-keys/ownertrust #17 0.469 gpg: inserting ownertrust of 6 #17 DONE 0.5s #18 [stage-0 11/20] RUN yes | pass init $(gpg2 --no-auto-check-trustdb --list-secret-key | awk '/^sec/{getline; $1=$1; print}') #18 0.445 gpg: please do a --check-trustdb #18 0.460 mkdir: created directory '/root/.password-store/' #18 0.461 Password store initialized for 9781B87DAB042E6FD51388A5464ED987A7B21401 #18 DONE 0.5s #19 [stage-0 12/20] RUN gpg2 --check-trustdb #19 0.538 gpg: marginals needed: 3 completes needed: 1 trust model: pgp #19 0.538 gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u #19 DONE 0.6s #20 [stage-0 13/20] RUN curl -sSL -o /opt/docker-credential-pass.tar.gz https://github.com/docker/docker-credential-helpers/releases/download/v0.6.3/docker-credential-pass-v0.6.3-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 #20 DONE 0.7s #21 [stage-0 14/20] WORKDIR /src #21 DONE 0.0s #22 [stage-0 15/20] COPY requirements.txt /src/requirements.txt #22 DONE 0.1s #23 [stage-0 16/20] RUN --mount=type=cache,target=/root/.cache/pip pip install -r requirements.txt #23 1.876 Ignoring pywin32: markers 'sys_platform == "win32"' don't match your environment #23 6.015 Collecting packaging==21.3 #23 7.036 Downloading packaging-21.3-py3-none-any.whl (40 kB) #23 7.043 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 40.8/40.8 kB 8.4 MB/s eta 0:00:00 #23 7.088 Collecting paramiko==2.11.0 #23 7.093 Downloading paramiko-2.11.0-py2.py3-none-any.whl (212 kB) #23 7.102 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 212.9/212.9 kB 29.2 MB/s eta 0:00:00 #23 7.148 Collecting requests==2.28.1 #23 7.151 Downloading requests-2.28.1-py3-none-any.whl (62 kB) #23 7.157 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.8/62.8 kB 14.2 MB/s eta 0:00:00 #23 7.206 Collecting urllib3==1.26.11 #23 7.210 Downloading urllib3-1.26.11-py2.py3-none-any.whl (139 kB) #23 7.218 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 139.9/139.9 kB 26.3 MB/s eta 0:00:00 #23 7.251 Collecting websocket-client==1.3.3 #23 7.254 Downloading websocket_client-1.3.3-py3-none-any.whl (54 kB) #23 7.261 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.3/54.3 kB 9.4 MB/s eta 0:00:00 #23 7.310 Collecting pyparsing!=3.0.5,>=2.0.2 #23 7.314 Downloading pyparsing-3.0.9-py3-none-any.whl (98 kB) #23 7.320 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.3/98.3 kB 22.7 MB/s eta 0:00:00 #23 7.628 Collecting cryptography>=2.5 #23 7.637 Downloading cryptography-40.0.1-cp36-abi3-manylinux_2_28_x86_64.whl (3.7 MB) #23 7.674 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.7/3.7 MB 107.6 MB/s eta 0:00:00 #23 7.705 Collecting six #23 7.710 Downloading six-1.16.0-py2.py3-none-any.whl (11 kB) #23 7.750 Collecting pynacl>=1.0.1 #23 7.754 Downloading PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (856 kB) #23 7.766 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 856.7/856.7 kB 82.8 MB/s eta 0:00:00 #23 7.833 Collecting bcrypt>=3.1.3 #23 7.840 Downloading bcrypt-4.0.1-cp36-abi3-manylinux_2_28_x86_64.whl (593 kB) #23 7.851 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 593.7/593.7 kB 65.3 MB/s eta 0:00:00 #23 7.881 Collecting idna<4,>=2.5 #23 7.885 Downloading idna-3.4-py3-none-any.whl (61 kB) #23 7.891 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.5/61.5 kB 13.6 MB/s eta 0:00:00 #23 7.980 Collecting charset-normalizer<3,>=2 #23 7.984 Downloading charset_normalizer-2.1.1-py3-none-any.whl (39 kB) #23 8.019 Collecting certifi>=2017.4.17 #23 8.023 Downloading certifi-2022.12.7-py3-none-any.whl (155 kB) #23 8.030 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 155.3/155.3 kB 32.0 MB/s eta 0:00:00 #23 8.268 Collecting cffi>=1.12 #23 8.275 Downloading cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (441 kB) #23 8.287 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 441.8/441.8 kB 48.4 MB/s eta 0:00:00 #23 8.326 Collecting pycparser #23 8.330 Downloading pycparser-2.21-py2.py3-none-any.whl (118 kB) #23 8.336 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 118.7/118.7 kB 25.4 MB/s eta 0:00:00 #23 8.481 Installing collected packages: websocket-client, urllib3, six, pyparsing, pycparser, idna, charset-normalizer, certifi, bcrypt, requests, packaging, cffi, pynacl, cryptography, paramiko #23 9.420 Successfully installed bcrypt-4.0.1 certifi-2022.12.7 cffi-1.15.1 charset-normalizer-2.1.1 cryptography-40.0.1 idna-3.4 packaging-21.3 paramiko-2.11.0 pycparser-2.21 pynacl-1.5.0 pyparsing-3.0.9 requests-2.28.1 six-1.16.0 urllib3-1.26.11 websocket-client-1.3.3 #23 9.420 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 #23 13.59 #23 13.59 [notice] A new release of pip available: 22.3.1 -> 23.0.1 #23 13.59 [notice] To update, run: pip install --upgrade pip #23 DONE 14.0s #24 [stage-0 17/20] COPY test-requirements.txt /src/test-requirements.txt #24 DONE 0.1s #25 [stage-0 18/20] RUN --mount=type=cache,target=/root/.cache/pip pip install -r test-requirements.txt #25 0.759 Requirement already satisfied: setuptools==65.5.1 in /usr/local/lib/python3.10/site-packages (from -r test-requirements.txt (line 1)) (65.5.1) #25 5.271 Collecting coverage==6.4.2 #25 6.293 Downloading coverage-6.4.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (212 kB) #25 6.307 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 212.3/212.3 kB 21.7 MB/s eta 0:00:00 #25 6.347 Collecting flake8==4.0.1 #25 6.351 Downloading flake8-4.0.1-py2.py3-none-any.whl (64 kB) #25 6.358 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 64.1/64.1 kB 13.7 MB/s eta 0:00:00 #25 6.434 Collecting pytest==7.1.2 #25 6.440 Downloading pytest-7.1.2-py3-none-any.whl (297 kB) #25 6.450 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 297.0/297.0 kB 38.9 MB/s eta 0:00:00 #25 6.478 Collecting pytest-cov==3.0.0 #25 6.482 Downloading pytest_cov-3.0.0-py3-none-any.whl (20 kB) #25 6.505 Collecting pytest-timeout==2.1.0 #25 6.508 Downloading pytest_timeout-2.1.0-py3-none-any.whl (12 kB) #25 6.545 Collecting pyflakes<2.5.0,>=2.4.0 #25 6.548 Downloading pyflakes-2.4.0-py2.py3-none-any.whl (69 kB) #25 6.554 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 69.7/69.7 kB 16.2 MB/s eta 0:00:00 #25 6.575 Collecting pycodestyle<2.9.0,>=2.8.0 #25 6.582 Downloading pycodestyle-2.8.0-py2.py3-none-any.whl (42 kB) #25 6.588 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 42.1/42.1 kB 9.4 MB/s eta 0:00:00 #25 6.606 Collecting mccabe<0.7.0,>=0.6.0 #25 6.609 Downloading mccabe-0.6.1-py2.py3-none-any.whl (8.6 kB) #25 6.647 Collecting attrs>=19.2.0 #25 6.650 Downloading attrs-22.2.0-py3-none-any.whl (60 kB) #25 6.656 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 60.0/60.0 kB 12.5 MB/s eta 0:00:00 #25 6.659 Requirement already satisfied: packaging in /usr/local/lib/python3.10/site-packages (from pytest==7.1.2->-r test-requirements.txt (line 4)) (21.3) #25 6.681 Collecting pluggy<2.0,>=0.12 #25 6.685 Downloading pluggy-1.0.0-py2.py3-none-any.whl (13 kB) #25 6.710 Collecting tomli>=1.0.0 #25 6.716 Downloading tomli-2.0.1-py3-none-any.whl (12 kB) #25 6.745 Collecting py>=1.8.2 #25 6.748 Downloading py-1.11.0-py2.py3-none-any.whl (98 kB) #25 6.755 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.7/98.7 kB 21.6 MB/s eta 0:00:00 #25 6.769 Collecting iniconfig #25 6.772 Downloading iniconfig-2.0.0-py3-none-any.whl (5.9 kB) #25 6.795 Collecting coverage[toml]>=5.2.1 #25 6.800 Downloading coverage-7.2.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (227 kB) #25 6.808 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 227.5/227.5 kB 38.9 MB/s eta 0:00:00 #25 6.871 Downloading coverage-7.2.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (227 kB) #25 6.879 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 227.3/227.3 kB 37.5 MB/s eta 0:00:00 #25 6.894 Downloading coverage-7.2.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (227 kB) #25 6.905 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 227.4/227.4 kB 26.2 MB/s eta 0:00:00 #25 6.919 Downloading coverage-7.1.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (226 kB) #25 6.927 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 226.7/226.7 kB 37.8 MB/s eta 0:00:00 #25 6.944 Downloading coverage-7.0.5-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (225 kB) #25 6.953 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 225.9/225.9 kB 32.9 MB/s eta 0:00:00 #25 6.969 Downloading coverage-7.0.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (225 kB) #25 6.978 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 225.3/225.3 kB 31.8 MB/s eta 0:00:00 #25 6.993 Downloading coverage-7.0.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (224 kB) #25 7.002 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 224.8/224.8 kB 31.9 MB/s eta 0:00:00 #25 7.016 Downloading coverage-7.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (224 kB) #25 7.028 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 224.4/224.4 kB 23.9 MB/s eta 0:00:00 #25 7.043 Downloading coverage-7.0.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (216 kB) #25 7.055 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 216.0/216.0 kB 23.5 MB/s eta 0:00:00 #25 7.069 Downloading coverage-7.0.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (215 kB) #25 7.077 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 215.9/215.9 kB 33.3 MB/s eta 0:00:00 #25 7.093 Downloading coverage-6.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (213 kB) #25 7.102 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 213.3/213.3 kB 30.6 MB/s eta 0:00:00 #25 7.117 Downloading coverage-6.4.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (212 kB) #25 7.130 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 212.5/212.5 kB 19.2 MB/s eta 0:00:00 #25 7.146 Downloading coverage-6.4.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (212 kB) #25 7.155 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 212.5/212.5 kB 35.8 MB/s eta 0:00:00 #25 7.183 Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/local/lib/python3.10/site-packages (from packaging->pytest==7.1.2->-r test-requirements.txt (line 4)) (3.0.9) #25 7.365 Installing collected packages: mccabe, tomli, pyflakes, pycodestyle, py, pluggy, iniconfig, coverage, attrs, pytest, flake8, pytest-timeout, pytest-cov #25 7.942 Successfully installed attrs-22.2.0 coverage-6.4.2 flake8-4.0.1 iniconfig-2.0.0 mccabe-0.6.1 pluggy-1.0.0 py-1.11.0 pycodestyle-2.8.0 pyflakes-2.4.0 pytest-7.1.2 pytest-cov-3.0.0 pytest-timeout-2.1.0 tomli-2.0.1 #25 7.942 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 #25 7.949 #25 7.949 [notice] A new release of pip available: 22.3.1 -> 23.0.1 #25 7.949 [notice] To update, run: pip install --upgrade pip #25 DONE 8.2s #26 [stage-0 19/20] COPY . /src #26 DONE 0.1s #27 [stage-0 20/20] RUN --mount=type=cache,target=/root/.cache/pip pip install -e . #27 0.784 Obtaining file:///src #27 0.787 Installing build dependencies: started #27 7.639 Installing build dependencies: finished with status 'done' #27 7.643 WARNING: Missing build requirements in pyproject.toml for file:///src. #27 7.643 WARNING: The project does not specify a build backend, and pip cannot fall back to setuptools without 'wheel'. #27 7.644 Checking if build backend supports build_editable: started #27 7.798 Checking if build backend supports build_editable: finished with status 'done' #27 7.800 Getting requirements to build editable: started #27 7.933 Getting requirements to build editable: finished with status 'done' #27 7.936 Installing backend dependencies: started #27 13.73 Installing backend dependencies: finished with status 'done' #27 13.73 Preparing editable metadata (pyproject.toml): started #27 14.05 Preparing editable metadata (pyproject.toml): finished with status 'done' #27 14.06 Requirement already satisfied: urllib3>=1.26.0 in /usr/local/lib/python3.10/site-packages (from docker==99.0.0+docker) (1.26.11) #27 14.06 Requirement already satisfied: requests>=2.26.0 in /usr/local/lib/python3.10/site-packages (from docker==99.0.0+docker) (2.28.1) #27 14.06 Requirement already satisfied: websocket-client>=0.32.0 in /usr/local/lib/python3.10/site-packages (from docker==99.0.0+docker) (1.3.3) #27 14.07 Requirement already satisfied: packaging>=14.0 in /usr/local/lib/python3.10/site-packages (from docker==99.0.0+docker) (21.3) #27 14.07 Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/local/lib/python3.10/site-packages (from packaging>=14.0->docker==99.0.0+docker) (3.0.9) #27 14.08 Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/site-packages (from requests>=2.26.0->docker==99.0.0+docker) (2022.12.7) #27 14.08 Requirement already satisfied: charset-normalizer<3,>=2 in /usr/local/lib/python3.10/site-packages (from requests>=2.26.0->docker==99.0.0+docker) (2.1.1) #27 14.08 Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/site-packages (from requests>=2.26.0->docker==99.0.0+docker) (3.4) #27 14.10 Building wheels for collected packages: docker #27 14.10 Building editable for docker (pyproject.toml): started #27 14.43 Building editable for docker (pyproject.toml): finished with status 'done' #27 14.43 Created wheel for docker: filename=docker-99.0.0+docker-0.editable-py3-none-any.whl size=7621 sha256=1e71e4e6fffeca213b3c3f85bb1170f7a960d7bdaff6863ea63031b2152df8ed #27 14.43 Stored in directory: /tmp/pip-ephem-wheel-cache-r63kwvpj/wheels/5c/9b/23/f031c1877ee9aa5bf3ddc51ccc1ac38428d83c5d6eec32a03f #27 14.43 Successfully built docker #27 14.56 Installing collected packages: docker #27 14.57 Successfully installed docker-99.0.0+docker #27 14.58 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 #27 14.58 #27 14.58 [notice] A new release of pip available: 22.3.1 -> 23.0.1 #27 14.58 [notice] To update, run: pip install --upgrade pip #27 DONE 14.7s #28 exporting to image #28 exporting layers #28 exporting layers 0.6s done #28 writing image sha256:2b0689f166eed4a59927a11f67a11c9652b3b85f834d8728fad6c438f62e0e2a done #28 naming to docker.io/dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a done #28 DONE 0.6s [Pipeline] isUnix [Pipeline] sh + docker tag dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a [Pipeline] isUnix [Pipeline] sh + docker push dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a The push refers to repository [docker.io/dockerpinata/docker-py] 6df01e346dc7: Preparing 183886283d99: Preparing 51fc27d49883: Preparing 492f3e371606: Preparing 691dcf215a69: Preparing 7b50e1b97dc7: Preparing 33274a7e5ceb: Preparing 027039a28145: Preparing ad65b89259bf: Preparing 47e7d1cae203: Preparing 3908b3fd7907: Preparing 4f2bd6835430: Preparing 2c58d0f426c7: Preparing e1ad54b31f27: Preparing 088eb6873e8e: Preparing 3dd0973fdd0f: Preparing 89128d7dc6ab: Preparing 00056d45a515: Preparing 65ac9c7a05a8: Preparing b2f5d6c61925: Preparing d6054790f4e6: Preparing e48e7a1ca5ed: Preparing 5c563cc8b216: Preparing d4514f8b2aac: Preparing 5ab567b9150b: Preparing a90e3914fb92: Preparing 053a1f71007e: Preparing ec09eb83ea03: Preparing 7b50e1b97dc7: Waiting 33274a7e5ceb: Waiting 027039a28145: Waiting ad65b89259bf: Waiting 47e7d1cae203: Waiting 3908b3fd7907: Waiting 4f2bd6835430: Waiting 2c58d0f426c7: Waiting e1ad54b31f27: Waiting 088eb6873e8e: Waiting 3dd0973fdd0f: Waiting 89128d7dc6ab: Waiting 00056d45a515: Waiting 65ac9c7a05a8: Waiting b2f5d6c61925: Waiting d6054790f4e6: Waiting e48e7a1ca5ed: Waiting 5c563cc8b216: Waiting d4514f8b2aac: Waiting 5ab567b9150b: Waiting a90e3914fb92: Waiting 053a1f71007e: Waiting ec09eb83ea03: Waiting 492f3e371606: Pushed 6df01e346dc7: Pushed 183886283d99: Pushed 51fc27d49883: Pushed 7b50e1b97dc7: Pushed 33274a7e5ceb: Pushed ad65b89259bf: Pushed 027039a28145: Pushed 47e7d1cae203: Pushed 3908b3fd7907: Pushed 691dcf215a69: Pushed 4f2bd6835430: Pushed 2c58d0f426c7: Pushed 088eb6873e8e: Pushed e1ad54b31f27: Pushed b2f5d6c61925: Mounted from library/python 3dd0973fdd0f: Pushed d6054790f4e6: Mounted from library/python e48e7a1ca5ed: Mounted from library/python 89128d7dc6ab: Pushed 5c563cc8b216: Mounted from library/python d4514f8b2aac: Mounted from library/python 5ab567b9150b: Mounted from library/python 65ac9c7a05a8: Pushed a90e3914fb92: Mounted from library/python 053a1f71007e: Mounted from library/python ec09eb83ea03: Mounted from library/python 00056d45a515: Pushed py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a: digest: sha256:33227ea3f143030999083fee39110fbcc53c6426aa342a682556fb6a0da39ddc size: 6178 [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-00a08cef8b319cab1) in /home/ubuntu/workspace/docker-py_PR-3107 [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-3107@tmp/224fe0a3-ccbe-4a5a-a2da-168ccea5ed9a/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-758aedbd56a11e50264fe2f8f6a2a07fb899065a /src/scripts/versions.py [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] parallel [Pipeline] { (Branch: py3.10_19.03.12) [Pipeline] { (Branch: py3.10_23.0.2) [Pipeline] { (Branch: py3.10_19.03.13) [Pipeline] { (Branch: py3.10_24.0.0-beta.1) [Pipeline] node [Pipeline] node Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-00a08cef8b319cab1) in /home/ubuntu/workspace/docker-py_PR-3107 [Pipeline] node [Pipeline] node [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-3107@tmp/094d2ca1-30bf-43bb-9e18-e8a645923356/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-3107:/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] { (test python=py3.10 / 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 Cloning repository https://github.com/docker/docker-py.git > git init /home/ubuntu/workspace/docker-py_PR-3107 # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/3107/head:refs/remotes/origin/PR-3107 # timeout=10 > git config --add remote.origin.fetch +refs/heads/main:refs/remotes/origin/main # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 Merging remotes/origin/main commit aaf68b7f98df7f886778395112267b9b0f6140bc into PR head commit 758aedbd56a11e50264fe2f8f6a2a07fb899065a Merge succeeded, producing 758aedbd56a11e50264fe2f8f6a2a07fb899065a Checking out Revision 758aedbd56a11e50264fe2f8f6a2a07fb899065a (PR-3107) Commit message: "fix: exec_run -- default user-root" [Pipeline] withDockerRegistry [Pipeline] { [Pipeline] sh + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a py.test -v -rxs --cov=docker tests/unit > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # 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 aaf68b7f98df7f886778395112267b9b0f6140bc # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # timeout=10 $ 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-3107@tmp/2d1c2108-e39c-46f7-ba9c-3a47e4f14b63/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded > git --version # timeout=10 > git --version # 'git version 2.25.1' fatal: bad object 4f8fd6a86e521290dafaf7c28eced2a9b21b220a ============================= test session starts ============================== platform linux -- Python 3.10.10, pytest-7.1.2, pluggy-1.0.0 -- /usr/local/bin/python cachedir: .pytest_cache rootdir: /src, configfile: pytest.ini plugins: timeout-2.1.0, cov-3.0.0 collecting ... collected 587 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 [ 3%] 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 [ 4%] 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 [ 5%] 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_cgroupns SKIPPED [ 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 [ 6%] 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_platform 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_stats_with_one_shot PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 13%] 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_float PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 16%] 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 [ 17%] tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 17%] 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 [ 18%] 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 [ 19%] 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 [ 20%] 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 [ 24%] 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 PASSED [ 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 [ 27%] 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 [ 28%] 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 [ 29%] 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 [ 31%] 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 [ 32%] 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 [ 33%] 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 [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 34%] 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 [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 35%] 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 [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 36%] 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 [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 37%] 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 [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 38%] 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 [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 39%] 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 [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED [ 40%] 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 [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 41%] 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 [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 42%] 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 [ 43%] tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 43%] 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 [ 44%] tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 44%] tests/unit/client_test.py::ClientTest::test_version PASSED [ 44%] 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 [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 45%] 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 [ 46%] tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 46%] tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 46%] 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 [ 47%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 47%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 47%] 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 [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 48%] 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 [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 49%] 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 [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 50%] 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 [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 51%] 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 [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 52%] tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 52%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 52%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 52%] 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 [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 53%] 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_job_replicas_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_job_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_job_simple 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 [ 55%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED [ 55%] 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 [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 56%] 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 [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 57%] 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 [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED [ 58%] 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 [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 59%] 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 [ 60%] tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 60%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 60%] 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_network_driver_opts PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_network_driver_opts_with_network_mode PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_network_driver_opts_without_network PASSED [ 62%] 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_network_driver_opts PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_network_driver_opts_with_network_mode PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_network_driver_opts_without_network PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_platform 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 [ 64%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 64%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED [ 64%] 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 FAILED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure FAILED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_export PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 65%] 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 [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_name PASSED [ 66%] 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 [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_short_id PASSED [ 67%] 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 [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_top PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 68%] 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 [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 69%] 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 [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 70%] 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 [ 71%] tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_history PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_remove PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_save PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_short_id PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tag PASSED [ 72%] tests/unit/models_images_test.py::ImageTest::test_tags PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED [ 73%] tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED [ 73%] tests/unit/models_resources_test.py::ModelTest::test_hash PASSED [ 73%] tests/unit/models_resources_test.py::ModelTest::test_reload PASSED [ 73%] 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 [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 74%] 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 [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 75%] 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 [ 76%] tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED [ 76%] tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED [ 76%] 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 [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 77%] 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 [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 78%] 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 [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 79%] 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 [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 80%] 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 [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 81%] 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 [ 82%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 82%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 82%] 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 [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 83%] 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 [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 84%] 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 [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 85%] 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 [ 86%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 86%] 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 [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED [ 87%] 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 [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 88%] 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 [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 89%] 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 [ 90%] 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 [ 91%] 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 [ 92%] 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 [ 93%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 93%] 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 [ 94%] 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 [ 95%] 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 [ 96%] 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 =================================== _________________________ ContainerTest.test_exec_run __________________________ tests/unit/models_containers_test.py:534: in test_exec_run client.api.exec_create.assert_called_with( /usr/local/lib/python3.10/unittest/mock.py:929: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'echo hello world', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='', environment=None, workdir=None) E Actual: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'echo hello world', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='root', environment=None, workdir=None) _____________________ ContainerTest.test_exec_run_failure ______________________ tests/unit/models_containers_test.py:548: in test_exec_run_failure client.api.exec_create.assert_called_with( /usr/local/lib/python3.10/unittest/mock.py:929: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'docker ps', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='', environment=None, workdir=None) E Actual: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'docker ps', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='root', environment=None, workdir=None) =============================== warnings summary =============================== tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure /src/tests/unit/ssladapter_test.py:71: DeprecationWarning: ssl.match_hostname() is deprecated match_hostname(self.cert, 'foobar.co.uk') tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success /src/tests/unit/ssladapter_test.py:63: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, 'touhou.gensokyo.jp') is None tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure /src/tests/unit/ssladapter_test.py:67: DeprecationWarning: ssl.match_hostname() is deprecated match_hostname(self.cert, '192.168.0.25') tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success /src/tests/unit/ssladapter_test.py:57: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, '127.0.0.1') is None tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success /src/tests/unit/ssladapter_test.py:60: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, 'localhost') is None -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ---------- coverage: platform linux, python 3.10.10-final-0 ---------- Name Stmts Miss Branch BrPart Cover ----------------------------------------------------------------------- docker/__init__.py 7 0 0 0 100% docker/_version.py 2 0 0 0 100% docker/api/__init__.py 1 0 0 0 100% docker/api/build.py 127 41 98 21 64% docker/api/client.py 269 65 94 11 76% docker/api/config.py 31 18 6 0 41% docker/api/container.py 289 75 120 28 67% docker/api/daemon.py 40 4 16 4 86% docker/api/exec_api.py 51 12 26 10 69% docker/api/image.py 161 43 64 14 70% docker/api/network.py 91 35 50 11 52% docker/api/plugin.py 96 68 18 0 26% docker/api/secret.py 36 22 10 0 35% docker/api/service.py 206 180 155 0 8% docker/api/swarm.py 114 71 44 1 29% docker/api/volume.py 38 9 16 2 72% docker/auth.py 200 16 80 16 89% docker/client.py 80 9 4 0 89% docker/constants.py 21 0 0 0 100% docker/context/__init__.py 2 0 0 0 100% docker/context/api.py 81 41 40 8 41% docker/context/config.py 61 33 22 2 39% docker/context/context.py 163 96 70 6 32% docker/credentials/__init__.py 3 0 0 0 100% docker/credentials/constants.py 4 0 0 0 100% docker/credentials/errors.py 11 4 8 0 68% docker/credentials/store.py 47 32 16 0 27% docker/credentials/utils.py 5 3 0 0 40% docker/errors.py 113 27 61 4 77% docker/models/__init__.py 0 0 0 0 100% docker/models/configs.py 22 8 6 0 64% docker/models/containers.py 194 11 78 9 91% docker/models/images.py 143 55 62 4 55% docker/models/networks.py 39 7 16 3 75% docker/models/nodes.py 16 5 6 0 68% docker/models/plugins.py 51 29 12 0 41% docker/models/resource.py 43 9 10 3 77% docker/models/secrets.py 23 4 6 0 79% docker/models/services.py 89 35 40 4 60% docker/models/swarm.py 40 21 8 0 44% docker/models/volumes.py 24 10 8 0 56% docker/tls.py 35 5 14 5 80% docker/transport/__init__.py 11 3 0 0 73% docker/transport/basehttpadapter.py 6 0 4 1 90% docker/transport/npipeconn.py 56 51 17 0 7% docker/transport/npipesocket.py 140 136 24 0 2% docker/transport/sshconn.py 161 104 67 3 32% docker/transport/ssladapter.py 32 8 10 3 69% docker/transport/unixconn.py 54 3 15 2 93% docker/types/__init__.py 6 0 0 0 100% docker/types/base.py 4 0 4 0 100% docker/types/containers.py 440 79 340 43 82% docker/types/daemon.py 36 24 16 0 27% docker/types/healthcheck.py 43 20 6 0 51% docker/types/networks.py 45 14 40 10 65% docker/types/services.py 347 150 268 45 55% docker/types/swarm.py 51 45 44 0 11% docker/utils/__init__.py 3 0 0 0 100% docker/utils/build.py 152 24 78 10 83% docker/utils/config.py 36 1 12 1 96% docker/utils/decorators.py 33 1 12 1 96% 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 37 1 14 0 98% docker/utils/socket.py 91 15 46 8 79% docker/utils/utils.py 279 18 173 13 92% docker/version.py 11 9 0 0 18% ----------------------------------------------------------------------- TOTAL 5288 1838 2548 312 62% =========================== 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/api_container_test.py:1072: API version is too low (< 1.41) 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' ======= 2 failed, 573 passed, 11 skipped, 1 xfailed, 5 warnings in 6.87s ======= [Pipeline] sh + docker stop dpy-dind-1-0-py3.10-19.03.12 Error response from daemon: No such container: dpy-dind-1-0-py3.10-19.03.12 [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-00a08cef8b319cab1) in /home/ubuntu/workspace/docker-py_PR-3107 [Pipeline] } Failed in branch py3.10_19.03.12 [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-3107@tmp/10de0478-dd7f-4688-b663-ce9051eea8dc/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-3107:/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] { (test python=py3.10 / docker=23.0.2) [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-3107 # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 Fetching without tags > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/3107/head:refs/remotes/origin/PR-3107 # timeout=10 > git config --add remote.origin.fetch +refs/heads/main:refs/remotes/origin/main # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 Merging remotes/origin/main commit aaf68b7f98df7f886778395112267b9b0f6140bc into PR head commit 758aedbd56a11e50264fe2f8f6a2a07fb899065a Merge succeeded, producing 758aedbd56a11e50264fe2f8f6a2a07fb899065a Checking out Revision 758aedbd56a11e50264fe2f8f6a2a07fb899065a (PR-3107) Commit message: "fix: exec_run -- default user-root" [Pipeline] withDockerRegistry Still waiting to schedule task Waiting for next available executor on ‘EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-00a08cef8b319cab1)’ Still waiting to schedule task Waiting for next available executor on ‘EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-00a08cef8b319cab1)’ [Pipeline] { [Pipeline] sh > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # 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 aaf68b7f98df7f886778395112267b9b0f6140bc # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # timeout=10 + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a py.test -v -rxs --cov=docker tests/unit > git --version # timeout=10 > git --version # 'git version 2.25.1' fatal: bad object 4f8fd6a86e521290dafaf7c28eced2a9b21b220a $ 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-3107@tmp/38e5fd6d-1316-4868-b974-b301610c2849/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded ============================= test session starts ============================== platform linux -- Python 3.10.10, pytest-7.1.2, pluggy-1.0.0 -- /usr/local/bin/python cachedir: .pytest_cache rootdir: /src, configfile: pytest.ini plugins: timeout-2.1.0, cov-3.0.0 collecting ... collected 587 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 [ 3%] 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 [ 4%] 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 [ 5%] 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_cgroupns SKIPPED [ 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 [ 6%] 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_platform 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_stats_with_one_shot PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 13%] 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_float PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 16%] 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 [ 17%] tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 17%] 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 [ 18%] 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 [ 19%] 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 [ 20%] 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 [ 24%] 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 PASSED [ 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 [ 27%] 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 [ 28%] 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 [ 29%] 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 [ 31%] 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 [ 32%] 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 [ 33%] 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 [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 34%] 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 [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 35%] 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 [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 36%] 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 [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 37%] 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 [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 38%] 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 [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 39%] 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 [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED [ 40%] 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 [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 41%] 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 [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 42%] 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 [ 43%] tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 43%] 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 [ 44%] tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 44%] tests/unit/client_test.py::ClientTest::test_version PASSED [ 44%] 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 [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 45%] 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 [ 46%] tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 46%] tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 46%] 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 [ 47%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 47%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 47%] 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 [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 48%] 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 [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 49%] 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 [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 50%] 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 [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 51%] 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 [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 52%] tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 52%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 52%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 52%] 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 [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 53%] 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_job_replicas_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_job_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_job_simple 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 [ 55%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED [ 55%] 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 [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 56%] 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 [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 57%] 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 [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED [ 58%] 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 [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 59%] 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 [ 60%] tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 60%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 60%] 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_network_driver_opts PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_network_driver_opts_with_network_mode PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_network_driver_opts_without_network PASSED [ 62%] 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_network_driver_opts PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_network_driver_opts_with_network_mode PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_network_driver_opts_without_network PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_platform 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 [ 64%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 64%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED [ 64%] 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 FAILED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure FAILED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_export PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 65%] 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 [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_name PASSED [ 66%] 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 [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_short_id PASSED [ 67%] 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 [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_top PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 68%] 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 [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 69%] 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 [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 70%] 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 [ 71%] tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_history PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_remove PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_save PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_short_id PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tag PASSED [ 72%] tests/unit/models_images_test.py::ImageTest::test_tags PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED [ 73%] tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED [ 73%] tests/unit/models_resources_test.py::ModelTest::test_hash PASSED [ 73%] tests/unit/models_resources_test.py::ModelTest::test_reload PASSED [ 73%] 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 [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 74%] 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 [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 75%] 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 [ 76%] tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED [ 76%] tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED [ 76%] 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 [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 77%] 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 [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 78%] 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 [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 79%] 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 [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 80%] 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 [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 81%] 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 [ 82%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 82%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 82%] 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 [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 83%] 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 [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 84%] 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 [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 85%] 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 [ 86%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 86%] 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 [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED [ 87%] 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 [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 88%] 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 [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 89%] 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 [ 90%] 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 [ 91%] 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 [ 92%] 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 [ 93%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 93%] 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 [ 94%] 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 [ 95%] 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 [ 96%] 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 =================================== _________________________ ContainerTest.test_exec_run __________________________ tests/unit/models_containers_test.py:534: in test_exec_run client.api.exec_create.assert_called_with( /usr/local/lib/python3.10/unittest/mock.py:929: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'echo hello world', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='', environment=None, workdir=None) E Actual: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'echo hello world', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='root', environment=None, workdir=None) _____________________ ContainerTest.test_exec_run_failure ______________________ tests/unit/models_containers_test.py:548: in test_exec_run_failure client.api.exec_create.assert_called_with( /usr/local/lib/python3.10/unittest/mock.py:929: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'docker ps', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='', environment=None, workdir=None) E Actual: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'docker ps', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='root', environment=None, workdir=None) =============================== warnings summary =============================== tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure /src/tests/unit/ssladapter_test.py:71: DeprecationWarning: ssl.match_hostname() is deprecated match_hostname(self.cert, 'foobar.co.uk') tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success /src/tests/unit/ssladapter_test.py:63: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, 'touhou.gensokyo.jp') is None tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure /src/tests/unit/ssladapter_test.py:67: DeprecationWarning: ssl.match_hostname() is deprecated match_hostname(self.cert, '192.168.0.25') tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success /src/tests/unit/ssladapter_test.py:57: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, '127.0.0.1') is None tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success /src/tests/unit/ssladapter_test.py:60: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, 'localhost') is None -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ---------- coverage: platform linux, python 3.10.10-final-0 ---------- Name Stmts Miss Branch BrPart Cover ----------------------------------------------------------------------- docker/__init__.py 7 0 0 0 100% docker/_version.py 2 0 0 0 100% docker/api/__init__.py 1 0 0 0 100% docker/api/build.py 127 41 98 21 64% docker/api/client.py 269 65 94 11 76% docker/api/config.py 31 18 6 0 41% docker/api/container.py 289 75 120 28 67% docker/api/daemon.py 40 4 16 4 86% docker/api/exec_api.py 51 12 26 10 69% docker/api/image.py 161 43 64 14 70% docker/api/network.py 91 35 50 11 52% docker/api/plugin.py 96 68 18 0 26% docker/api/secret.py 36 22 10 0 35% docker/api/service.py 206 180 155 0 8% docker/api/swarm.py 114 71 44 1 29% docker/api/volume.py 38 9 16 2 72% docker/auth.py 200 16 80 16 89% docker/client.py 80 9 4 0 89% docker/constants.py 21 0 0 0 100% docker/context/__init__.py 2 0 0 0 100% docker/context/api.py 81 41 40 8 41% docker/context/config.py 61 33 22 2 39% docker/context/context.py 163 96 70 6 32% docker/credentials/__init__.py 3 0 0 0 100% docker/credentials/constants.py 4 0 0 0 100% docker/credentials/errors.py 11 4 8 0 68% docker/credentials/store.py 47 32 16 0 27% docker/credentials/utils.py 5 3 0 0 40% docker/errors.py 113 27 61 4 77% docker/models/__init__.py 0 0 0 0 100% docker/models/configs.py 22 8 6 0 64% docker/models/containers.py 194 11 78 9 91% docker/models/images.py 143 55 62 4 55% docker/models/networks.py 39 7 16 3 75% docker/models/nodes.py 16 5 6 0 68% docker/models/plugins.py 51 29 12 0 41% docker/models/resource.py 43 9 10 3 77% docker/models/secrets.py 23 4 6 0 79% docker/models/services.py 89 35 40 4 60% docker/models/swarm.py 40 21 8 0 44% docker/models/volumes.py 24 10 8 0 56% docker/tls.py 35 5 14 5 80% docker/transport/__init__.py 11 3 0 0 73% docker/transport/basehttpadapter.py 6 0 4 1 90% docker/transport/npipeconn.py 56 51 17 0 7% docker/transport/npipesocket.py 140 136 24 0 2% docker/transport/sshconn.py 161 104 67 3 32% docker/transport/ssladapter.py 32 8 10 3 69% docker/transport/unixconn.py 54 3 15 2 93% docker/types/__init__.py 6 0 0 0 100% docker/types/base.py 4 0 4 0 100% docker/types/containers.py 440 79 340 43 82% docker/types/daemon.py 36 24 16 0 27% docker/types/healthcheck.py 43 20 6 0 51% docker/types/networks.py 45 14 40 10 65% docker/types/services.py 347 150 268 45 55% docker/types/swarm.py 51 45 44 0 11% docker/utils/__init__.py 3 0 0 0 100% docker/utils/build.py 152 24 78 10 83% docker/utils/config.py 36 1 12 1 96% docker/utils/decorators.py 33 1 12 1 96% 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 37 1 14 0 98% docker/utils/socket.py 91 15 46 8 79% docker/utils/utils.py 279 18 173 13 92% docker/version.py 11 9 0 0 18% ----------------------------------------------------------------------- TOTAL 5288 1838 2548 312 62% =========================== 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/api_container_test.py:1072: API version is too low (< 1.41) 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' ======= 2 failed, 573 passed, 11 skipped, 1 xfailed, 5 warnings in 6.85s ======= [Pipeline] sh + docker stop dpy-dind-1-0-py3.10-23.0.2 Error response from daemon: No such container: dpy-dind-1-0-py3.10-23.0.2 [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-00a08cef8b319cab1) in /home/ubuntu/workspace/docker-py_PR-3107 [Pipeline] } Failed in branch py3.10_23.0.2 [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-3107@tmp/7c911c87-a2a7-4a54-b368-3edecd76867f/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-3107:/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] { (test python=py3.10 / 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 Fetching without tags Cloning repository https://github.com/docker/docker-py.git > git init /home/ubuntu/workspace/docker-py_PR-3107 # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/3107/head:refs/remotes/origin/PR-3107 # timeout=10 > git config --add remote.origin.fetch +refs/heads/main:refs/remotes/origin/main # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 Merging remotes/origin/main commit aaf68b7f98df7f886778395112267b9b0f6140bc into PR head commit 758aedbd56a11e50264fe2f8f6a2a07fb899065a Merge succeeded, producing 758aedbd56a11e50264fe2f8f6a2a07fb899065a Checking out Revision 758aedbd56a11e50264fe2f8f6a2a07fb899065a (PR-3107) Commit message: "fix: exec_run -- default user-root" [Pipeline] withDockerRegistry [Pipeline] { [Pipeline] sh 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # 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 aaf68b7f98df7f886778395112267b9b0f6140bc # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # timeout=10 > git --version # timeout=10 > git --version # 'git version 2.25.1' fatal: bad object 4f8fd6a86e521290dafaf7c28eced2a9b21b220a + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a py.test -v -rxs --cov=docker tests/unit $ 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-3107@tmp/671806aa-1dea-4f57-a529-a11faafaf37a/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded ============================= test session starts ============================== platform linux -- Python 3.10.10, pytest-7.1.2, pluggy-1.0.0 -- /usr/local/bin/python cachedir: .pytest_cache rootdir: /src, configfile: pytest.ini plugins: timeout-2.1.0, cov-3.0.0 collecting ... collected 587 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 [ 3%] 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 [ 4%] 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 [ 5%] 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_cgroupns SKIPPED [ 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 [ 6%] 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_platform 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_stats_with_one_shot PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 13%] 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_float PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 16%] 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 [ 17%] tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 17%] 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 [ 18%] 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 [ 19%] 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 [ 20%] 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 [ 24%] 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 PASSED [ 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 [ 27%] 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 [ 28%] 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 [ 29%] 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 [ 31%] 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 [ 32%] 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 [ 33%] 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 [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 34%] 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 [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 35%] 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 [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 36%] 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 [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 37%] 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 [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 38%] 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 [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 39%] 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 [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED [ 40%] 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 [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 41%] 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 [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 42%] 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 [ 43%] tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 43%] 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 [ 44%] tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 44%] tests/unit/client_test.py::ClientTest::test_version PASSED [ 44%] 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 [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 45%] 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 [ 46%] tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 46%] tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 46%] 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 [ 47%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 47%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 47%] 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 [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 48%] 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 [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 49%] 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 [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 50%] 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 [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 51%] 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 [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 52%] tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 52%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 52%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 52%] 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 [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 53%] 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_job_replicas_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_job_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_job_simple 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 [ 55%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED [ 55%] 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 [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 56%] 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 [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 57%] 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 [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED [ 58%] 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 [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 59%] 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 [ 60%] tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 60%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 60%] 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_network_driver_opts PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_network_driver_opts_with_network_mode PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_network_driver_opts_without_network PASSED [ 62%] 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_network_driver_opts PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_network_driver_opts_with_network_mode PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_network_driver_opts_without_network PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_platform 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 [ 64%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 64%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED [ 64%] 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 FAILED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure FAILED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_export PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 65%] 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 [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_name PASSED [ 66%] 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 [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_short_id PASSED [ 67%] 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 [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_top PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 68%] 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 [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 69%] 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 [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 70%] 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 [ 71%] tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_history PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_remove PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_save PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_short_id PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tag PASSED [ 72%] tests/unit/models_images_test.py::ImageTest::test_tags PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED [ 73%] tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED [ 73%] tests/unit/models_resources_test.py::ModelTest::test_hash PASSED [ 73%] tests/unit/models_resources_test.py::ModelTest::test_reload PASSED [ 73%] 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 [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 74%] 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 [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 75%] 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 [ 76%] tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED [ 76%] tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED [ 76%] 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 [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 77%] 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 [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 78%] 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 [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 79%] 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 [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 80%] 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 [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 81%] 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 [ 82%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 82%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 82%] 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 [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 83%] 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 [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 84%] 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 [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 85%] 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 [ 86%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 86%] 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 [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED [ 87%] 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 [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 88%] 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 [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 89%] 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 [ 90%] 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 [ 91%] 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 [ 92%] 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 [ 93%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 93%] 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 [ 94%] 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 [ 95%] 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 [ 96%] 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 =================================== _________________________ ContainerTest.test_exec_run __________________________ tests/unit/models_containers_test.py:534: in test_exec_run client.api.exec_create.assert_called_with( /usr/local/lib/python3.10/unittest/mock.py:929: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'echo hello world', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='', environment=None, workdir=None) E Actual: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'echo hello world', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='root', environment=None, workdir=None) _____________________ ContainerTest.test_exec_run_failure ______________________ tests/unit/models_containers_test.py:548: in test_exec_run_failure client.api.exec_create.assert_called_with( /usr/local/lib/python3.10/unittest/mock.py:929: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'docker ps', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='', environment=None, workdir=None) E Actual: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'docker ps', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='root', environment=None, workdir=None) =============================== warnings summary =============================== tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure /src/tests/unit/ssladapter_test.py:71: DeprecationWarning: ssl.match_hostname() is deprecated match_hostname(self.cert, 'foobar.co.uk') tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success /src/tests/unit/ssladapter_test.py:63: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, 'touhou.gensokyo.jp') is None tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure /src/tests/unit/ssladapter_test.py:67: DeprecationWarning: ssl.match_hostname() is deprecated match_hostname(self.cert, '192.168.0.25') tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success /src/tests/unit/ssladapter_test.py:57: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, '127.0.0.1') is None tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success /src/tests/unit/ssladapter_test.py:60: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, 'localhost') is None -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ---------- coverage: platform linux, python 3.10.10-final-0 ---------- Name Stmts Miss Branch BrPart Cover ----------------------------------------------------------------------- docker/__init__.py 7 0 0 0 100% docker/_version.py 2 0 0 0 100% docker/api/__init__.py 1 0 0 0 100% docker/api/build.py 127 41 98 21 64% docker/api/client.py 269 65 94 11 76% docker/api/config.py 31 18 6 0 41% docker/api/container.py 289 75 120 28 67% docker/api/daemon.py 40 4 16 4 86% docker/api/exec_api.py 51 12 26 10 69% docker/api/image.py 161 43 64 14 70% docker/api/network.py 91 35 50 11 52% docker/api/plugin.py 96 68 18 0 26% docker/api/secret.py 36 22 10 0 35% docker/api/service.py 206 180 155 0 8% docker/api/swarm.py 114 71 44 1 29% docker/api/volume.py 38 9 16 2 72% docker/auth.py 200 16 80 16 89% docker/client.py 80 9 4 0 89% docker/constants.py 21 0 0 0 100% docker/context/__init__.py 2 0 0 0 100% docker/context/api.py 81 41 40 8 41% docker/context/config.py 61 33 22 2 39% docker/context/context.py 163 96 70 6 32% docker/credentials/__init__.py 3 0 0 0 100% docker/credentials/constants.py 4 0 0 0 100% docker/credentials/errors.py 11 4 8 0 68% docker/credentials/store.py 47 32 16 0 27% docker/credentials/utils.py 5 3 0 0 40% docker/errors.py 113 27 61 4 77% docker/models/__init__.py 0 0 0 0 100% docker/models/configs.py 22 8 6 0 64% docker/models/containers.py 194 11 78 9 91% docker/models/images.py 143 55 62 4 55% docker/models/networks.py 39 7 16 3 75% docker/models/nodes.py 16 5 6 0 68% docker/models/plugins.py 51 29 12 0 41% docker/models/resource.py 43 9 10 3 77% docker/models/secrets.py 23 4 6 0 79% docker/models/services.py 89 35 40 4 60% docker/models/swarm.py 40 21 8 0 44% docker/models/volumes.py 24 10 8 0 56% docker/tls.py 35 5 14 5 80% docker/transport/__init__.py 11 3 0 0 73% docker/transport/basehttpadapter.py 6 0 4 1 90% docker/transport/npipeconn.py 56 51 17 0 7% docker/transport/npipesocket.py 140 136 24 0 2% docker/transport/sshconn.py 161 104 67 3 32% docker/transport/ssladapter.py 32 8 10 3 69% docker/transport/unixconn.py 54 3 15 2 93% docker/types/__init__.py 6 0 0 0 100% docker/types/base.py 4 0 4 0 100% docker/types/containers.py 440 79 340 43 82% docker/types/daemon.py 36 24 16 0 27% docker/types/healthcheck.py 43 20 6 0 51% docker/types/networks.py 45 14 40 10 65% docker/types/services.py 347 150 268 45 55% docker/types/swarm.py 51 45 44 0 11% docker/utils/__init__.py 3 0 0 0 100% docker/utils/build.py 152 24 78 10 83% docker/utils/config.py 36 1 12 1 96% docker/utils/decorators.py 33 1 12 1 96% 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 37 1 14 0 98% docker/utils/socket.py 91 15 46 8 79% docker/utils/utils.py 279 18 173 13 92% docker/version.py 11 9 0 0 18% ----------------------------------------------------------------------- TOTAL 5288 1838 2548 312 62% =========================== 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/api_container_test.py:1072: API version is too low (< 1.41) 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' ======= 2 failed, 573 passed, 11 skipped, 1 xfailed, 5 warnings in 6.88s ======= [Pipeline] sh + docker stop dpy-dind-1-0-py3.10-19.03.13 Error response from daemon: No such container: dpy-dind-1-0-py3.10-19.03.13 [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-00a08cef8b319cab1) in /home/ubuntu/workspace/docker-py_PR-3107 [Pipeline] // node [Pipeline] { [Pipeline] } Failed in branch py3.10_19.03.13 [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-3107@tmp/cd18242c-af4b-47b3-bce4-839453bda433/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-3107:/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] { (test python=py3.10 / docker=24.0.0-beta.1) [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-3107 # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/3107/head:refs/remotes/origin/PR-3107 # timeout=10 > git config --add remote.origin.fetch +refs/heads/main:refs/remotes/origin/main # 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/3107/head:refs/remotes/origin/PR-3107 +refs/heads/main:refs/remotes/origin/main # timeout=10 Merging remotes/origin/main commit aaf68b7f98df7f886778395112267b9b0f6140bc into PR head commit 758aedbd56a11e50264fe2f8f6a2a07fb899065a Merge succeeded, producing 758aedbd56a11e50264fe2f8f6a2a07fb899065a Checking out Revision 758aedbd56a11e50264fe2f8f6a2a07fb899065a (PR-3107) Commit message: "fix: exec_run -- default user-root" [Pipeline] withDockerRegistry [Pipeline] { [Pipeline] sh + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-758aedbd56a11e50264fe2f8f6a2a07fb899065a py.test -v -rxs --cov=docker tests/unit > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # 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 aaf68b7f98df7f886778395112267b9b0f6140bc # timeout=10 > git rev-parse HEAD^{commit} # timeout=10 > git config core.sparsecheckout # timeout=10 > git checkout -f 758aedbd56a11e50264fe2f8f6a2a07fb899065a # timeout=10 > git --version # timeout=10 > git --version # 'git version 2.25.1' fatal: bad object 4f8fd6a86e521290dafaf7c28eced2a9b21b220a $ 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-3107@tmp/86369817-4582-40b9-904f-f3a70979369f/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded ============================= test session starts ============================== platform linux -- Python 3.10.10, pytest-7.1.2, pluggy-1.0.0 -- /usr/local/bin/python cachedir: .pytest_cache rootdir: /src, configfile: pytest.ini plugins: timeout-2.1.0, cov-3.0.0 collecting ... collected 587 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 [ 3%] 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 [ 4%] 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 [ 5%] 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_cgroupns SKIPPED [ 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 [ 6%] 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_platform 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_stats_with_one_shot PASSED [ 12%] tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 13%] 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_float PASSED [ 16%] tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 16%] 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 [ 17%] tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 17%] 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 [ 18%] 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 [ 19%] 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 [ 20%] 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 [ 24%] 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 PASSED [ 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 [ 27%] 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 [ 28%] 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 [ 29%] 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 [ 31%] 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 [ 32%] 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 [ 33%] 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 [ 34%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 34%] 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 [ 35%] tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 35%] 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 [ 36%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 36%] 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 [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 37%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 37%] 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 [ 38%] tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 38%] 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 [ 39%] tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 39%] 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 [ 40%] tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED [ 40%] 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 [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 41%] tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 41%] 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 [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 42%] tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 42%] 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 [ 43%] tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 43%] tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 43%] 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 [ 44%] tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED [ 44%] tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 44%] tests/unit/client_test.py::ClientTest::test_version PASSED [ 44%] 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 [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 45%] tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 45%] 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 [ 46%] tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 46%] tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 46%] 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 [ 47%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 47%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 47%] 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 [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 48%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 48%] 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 [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 49%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 49%] 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 [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 50%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 50%] 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 [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 51%] tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 51%] 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 [ 52%] tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 52%] tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 52%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 52%] tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 52%] 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 [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 53%] tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 53%] 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_job_replicas_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_job_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 54%] tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%] tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_job_simple 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 [ 55%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED [ 55%] 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 [ 56%] tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 56%] 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 [ 57%] tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 57%] 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 [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 58%] tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED [ 58%] 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 [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 59%] tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 59%] 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 [ 60%] tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 60%] tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 60%] 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_network_driver_opts PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_network_driver_opts_with_network_mode PASSED [ 61%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_network_driver_opts_without_network PASSED [ 62%] 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_network_driver_opts PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_network_driver_opts_with_network_mode PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_network_driver_opts_without_network PASSED [ 63%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_platform 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 [ 64%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 64%] tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 64%] tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED [ 64%] 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 FAILED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure FAILED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_export PASSED [ 65%] tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 65%] 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 [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED [ 66%] tests/unit/models_containers_test.py::ContainerTest::test_name PASSED [ 66%] 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 [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 67%] tests/unit/models_containers_test.py::ContainerTest::test_short_id PASSED [ 67%] 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 [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_top PASSED [ 68%] tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 68%] 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 [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED [ 69%] tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 69%] 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 [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 70%] tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 70%] 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 [ 71%] tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_history PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_remove PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_save PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_short_id PASSED [ 71%] tests/unit/models_images_test.py::ImageTest::test_tag PASSED [ 72%] tests/unit/models_images_test.py::ImageTest::test_tags PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 72%] tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED [ 72%] tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED [ 73%] tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED [ 73%] tests/unit/models_resources_test.py::ModelTest::test_hash PASSED [ 73%] tests/unit/models_resources_test.py::ModelTest::test_reload PASSED [ 73%] 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 [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 74%] tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 74%] 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 [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 75%] tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 75%] 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 [ 76%] tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED [ 76%] tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED [ 76%] 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 [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 77%] tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 77%] 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 [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 78%] tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 78%] 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 [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 79%] tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 79%] 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 [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 80%] tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 80%] 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 [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 81%] tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 81%] 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 [ 82%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 82%] tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 82%] 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 [ 83%] tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 83%] 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 [ 84%] tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 84%] 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 [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 85%] tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 85%] 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 [ 86%] tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 86%] tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 86%] 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 [ 87%] tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED [ 87%] 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 [ 88%] tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 88%] 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 [ 89%] tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 89%] 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 [ 90%] 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 [ 91%] 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 [ 92%] 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 [ 93%] tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 93%] 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 [ 94%] 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 [ 95%] 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 [ 96%] 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 =================================== _________________________ ContainerTest.test_exec_run __________________________ tests/unit/models_containers_test.py:534: in test_exec_run client.api.exec_create.assert_called_with( /usr/local/lib/python3.10/unittest/mock.py:929: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'echo hello world', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='', environment=None, workdir=None) E Actual: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'echo hello world', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='root', environment=None, workdir=None) _____________________ ContainerTest.test_exec_run_failure ______________________ tests/unit/models_containers_test.py:548: in test_exec_run_failure client.api.exec_create.assert_called_with( /usr/local/lib/python3.10/unittest/mock.py:929: in assert_called_with raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'docker ps', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='', environment=None, workdir=None) E Actual: exec_create('81cf499cc928ce3fedc250a080d2b9b978df20e4517304c45211e8a68b33e254', 'docker ps', stdout=True, stderr=True, stdin=False, tty=False, privileged=True, user='root', environment=None, workdir=None) =============================== warnings summary =============================== tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure /src/tests/unit/ssladapter_test.py:71: DeprecationWarning: ssl.match_hostname() is deprecated match_hostname(self.cert, 'foobar.co.uk') tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success /src/tests/unit/ssladapter_test.py:63: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, 'touhou.gensokyo.jp') is None tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure /src/tests/unit/ssladapter_test.py:67: DeprecationWarning: ssl.match_hostname() is deprecated match_hostname(self.cert, '192.168.0.25') tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success /src/tests/unit/ssladapter_test.py:57: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, '127.0.0.1') is None tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success /src/tests/unit/ssladapter_test.py:60: DeprecationWarning: ssl.match_hostname() is deprecated assert match_hostname(self.cert, 'localhost') is None -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ---------- coverage: platform linux, python 3.10.10-final-0 ---------- Name Stmts Miss Branch BrPart Cover ----------------------------------------------------------------------- docker/__init__.py 7 0 0 0 100% docker/_version.py 2 0 0 0 100% docker/api/__init__.py 1 0 0 0 100% docker/api/build.py 127 41 98 21 64% docker/api/client.py 269 65 94 11 76% docker/api/config.py 31 18 6 0 41% docker/api/container.py 289 75 120 28 67% docker/api/daemon.py 40 4 16 4 86% docker/api/exec_api.py 51 12 26 10 69% docker/api/image.py 161 43 64 14 70% docker/api/network.py 91 35 50 11 52% docker/api/plugin.py 96 68 18 0 26% docker/api/secret.py 36 22 10 0 35% docker/api/service.py 206 180 155 0 8% docker/api/swarm.py 114 71 44 1 29% docker/api/volume.py 38 9 16 2 72% docker/auth.py 200 16 80 16 89% docker/client.py 80 9 4 0 89% docker/constants.py 21 0 0 0 100% docker/context/__init__.py 2 0 0 0 100% docker/context/api.py 81 41 40 8 41% docker/context/config.py 61 33 22 2 39% docker/context/context.py 163 96 70 6 32% docker/credentials/__init__.py 3 0 0 0 100% docker/credentials/constants.py 4 0 0 0 100% docker/credentials/errors.py 11 4 8 0 68% docker/credentials/store.py 47 32 16 0 27% docker/credentials/utils.py 5 3 0 0 40% docker/errors.py 113 27 61 4 77% docker/models/__init__.py 0 0 0 0 100% docker/models/configs.py 22 8 6 0 64% docker/models/containers.py 194 11 78 9 91% docker/models/images.py 143 55 62 4 55% docker/models/networks.py 39 7 16 3 75% docker/models/nodes.py 16 5 6 0 68% docker/models/plugins.py 51 29 12 0 41% docker/models/resource.py 43 9 10 3 77% docker/models/secrets.py 23 4 6 0 79% docker/models/services.py 89 35 40 4 60% docker/models/swarm.py 40 21 8 0 44% docker/models/volumes.py 24 10 8 0 56% docker/tls.py 35 5 14 5 80% docker/transport/__init__.py 11 3 0 0 73% docker/transport/basehttpadapter.py 6 0 4 1 90% docker/transport/npipeconn.py 56 51 17 0 7% docker/transport/npipesocket.py 140 136 24 0 2% docker/transport/sshconn.py 161 104 67 3 32% docker/transport/ssladapter.py 32 8 10 3 69% docker/transport/unixconn.py 54 3 15 2 93% docker/types/__init__.py 6 0 0 0 100% docker/types/base.py 4 0 4 0 100% docker/types/containers.py 440 79 340 43 82% docker/types/daemon.py 36 24 16 0 27% docker/types/healthcheck.py 43 20 6 0 51% docker/types/networks.py 45 14 40 10 65% docker/types/services.py 347 150 268 45 55% docker/types/swarm.py 51 45 44 0 11% docker/utils/__init__.py 3 0 0 0 100% docker/utils/build.py 152 24 78 10 83% docker/utils/config.py 36 1 12 1 96% docker/utils/decorators.py 33 1 12 1 96% 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 37 1 14 0 98% docker/utils/socket.py 91 15 46 8 79% docker/utils/utils.py 279 18 173 13 92% docker/version.py 11 9 0 0 18% ----------------------------------------------------------------------- TOTAL 5288 1838 2548 312 62% =========================== 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/api_container_test.py:1072: API version is too low (< 1.41) 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' ======= 2 failed, 573 passed, 11 skipped, 1 xfailed, 5 warnings in 6.88s ======= [Pipeline] sh + docker stop dpy-dind-1-0-py3.10-24.0.0-beta.1 Error response from daemon: No such container: dpy-dind-1-0-py3.10-24.0.0-beta.1 [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } Failed in branch py3.10_24.0.0-beta.1 [Pipeline] // parallel [Pipeline] End of Pipeline Could not update commit status, please check if your scan credentials belong to a member of the organization or a collaborator of the repository and repo:status scope is selected GitHub has been notified of this commit’s build result ERROR: script returned exit code 1 Finished: FAILURE