Skip to content
Failed

Console Output

Pull request #2927 updated
14:50:01 Connecting to https://api.github.com using docker-jenkins/****** (docker-jenkins GitHub credentials)
Loading trusted files from base branch master at a48a5a9647761406d66e8271f19fab7fa0c5f582 rather than e7f1b4e48ab6a5c069ef52002051d97340975335
Obtained Jenkinsfile from a48a5a9647761406d66e8271f19fab7fa0c5f582
Running in Durability level: PERFORMANCE_OPTIMIZED
Loading library jps@master
Examining docker/jps
Attempting to resolve master as a branch
Resolved master as branch master at revision 5d8b74fd03a1c7cc00e1c1f32d100ed97a17f4f0
The recommended git tool is: NONE
using credential jps-reader
 > git rev-parse --resolve-git-dir /var/cloudbees-jenkins-distribution/workspace/docker-py_PR-2927@libs/jps/.git # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/docker/jps.git # timeout=10
Fetching without tags
Fetching upstream changes from https://github.com/docker/jps.git
 > git --version # timeout=10
 > git --version # 'git version 2.20.1'
using GIT_ASKPASS to set credentials GitHub credentials for docker/jps
 > git fetch --no-tags --force --progress -- https://github.com/docker/jps.git +refs/heads/master:refs/remotes/origin/master # timeout=10
Checking out Revision 5d8b74fd03a1c7cc00e1c1f32d100ed97a17f4f0 (master)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 5d8b74fd03a1c7cc00e1c1f32d100ed97a17f4f0 # timeout=10
Commit message: "Merge pull request #25 from ingshtrom/in-2733-load-from-file"
 > git rev-list --no-walk 5d8b74fd03a1c7cc00e1c1f32d100ed97a17f4f0 # timeout=10
Excluding src/test/ from checkout of git https://github.com/docker/jps.git so that shared library test code cannot be accessed by Pipelines.
To remove this log message, move the test code outside of src/. To restore the previous behavior that allowed access to files in src/test/, pass -Dorg.jenkinsci.plugins.workflow.libs.SCMSourceRetriever.INCLUDE_SRC_TEST_IN_LIBRARIES=true to the java command used to start Jenkins.
[Pipeline] Start of Pipeline
[Pipeline] node
Still waiting to schedule task
Waiting for next available executor on ‘EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-0ff6606015a76122e)’
Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-0c1828f05624e41eb) in /home/ubuntu/workspace/docker-py_PR-2927
[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-2927@tmp/04199709-051a-4fc9-9dd8-688a48db1a7b/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
14:51:30 cleanWorkspace: Ensuring workspace is owned by ubuntu
[Pipeline] echo
14:51:30 chowning workspace
[Pipeline] sh
14:51:31 + pwd
14:51:31 + id -u
14:51:31 + id -g
14:51:31 + docker run --rm -v /home/ubuntu/workspace/docker-py_PR-2927:/workspace busybox chown -R 1000:1000 /workspace
14:51:31 Unable to find image 'busybox:latest' locally
14:51:32 latest: Pulling from library/busybox
14:51:32 3cb635b06aa2: Pulling fs layer
14:51:32 3cb635b06aa2: Verifying Checksum
14:51:32 3cb635b06aa2: Download complete
14:51:33 3cb635b06aa2: Pull complete
14:51:33 Digest: sha256:b5cfd4befc119a590ca1a81d6bb0fa1fb19f1fbebd0397f25fae164abe1e8a6a
14:51:33 Status: Downloaded newer image for busybox:latest
[Pipeline] echo
14:51:38 Removing all docker containers
[Pipeline] sh
14:51:38 + docker container ls -aq
[Pipeline] echo
14:51:38 Docker containers have been removed
[Pipeline] echo
14:51:38 cleanWorkspace: Removing existing workspace
[Pipeline] deleteDir
[Pipeline] echo
14:51:38 cleanWorkspace: Workspace is clean.
[Pipeline] stage
[Pipeline] { (build image)
[Pipeline] checkout
14:51:38 The recommended git tool is: git
14:51:41 using credential docker-jenkins-github-credentials
14:51:41 Cloning the remote Git repository
14:51:41 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-2927 # 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/2927/head:refs/remotes/origin/PR-2927 +refs/heads/master:refs/remotes/origin/master # timeout=10
14:51:43 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/2927/head:refs/remotes/origin/PR-2927 # timeout=10
 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10
 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10
Fetching upstream changes from https://github.com/docker/docker-py.git
using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials
 > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2927/head:refs/remotes/origin/PR-2927 +refs/heads/master:refs/remotes/origin/master # timeout=10
14:51:44 Merging remotes/origin/master commit a48a5a9647761406d66e8271f19fab7fa0c5f582 into PR head commit e7f1b4e48ab6a5c069ef52002051d97340975335
14:51:44 Merge succeeded, producing e7f1b4e48ab6a5c069ef52002051d97340975335
14:51:44 Checking out Revision e7f1b4e48ab6a5c069ef52002051d97340975335 (PR-2927)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e7f1b4e48ab6a5c069ef52002051d97340975335 # timeout=10
 > git remote # timeout=10
 > git config --get remote.origin.url # timeout=10
using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials
 > git merge a48a5a9647761406d66e8271f19fab7fa0c5f582 # timeout=10
 > git rev-parse HEAD^{commit} # timeout=10
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e7f1b4e48ab6a5c069ef52002051d97340975335 # timeout=10
14:51:48 Commit message: "Add unit test."
14:51:48 First time build. Skipping changelog.
[Pipeline] sh
14:51:48 + git rev-parse HEAD
[Pipeline] withDockerRegistry
[Pipeline] {
[Pipeline] isUnix
[Pipeline] sh
14:51:49 + docker pull dockerpinata/docker-py:sshdind-e7f1b4e48ab6a5c069ef52002051d97340975335
14:51:49 Error response from daemon: manifest for dockerpinata/docker-py:sshdind-e7f1b4e48ab6a5c069ef52002051d97340975335 not found: manifest unknown: manifest unknown
[Pipeline] isUnix
[Pipeline] sh
 > git rev-list --no-walk bb70d51f6edfadbe006f332187fe23bcc301c9db # timeout=10
14:51:49 + docker build -t dockerpinata/docker-py:sshdind-e7f1b4e48ab6a5c069ef52002051d97340975335 -f tests/Dockerfile-ssh-dind .
14:51:49 Sending build context to Docker daemon  1.376MB

14:51:49 Step 1/11 : ARG API_VERSION=1.39
14:51:49 Step 2/11 : ARG ENGINE_VERSION=19.03.12
14:51:49 Step 3/11 : FROM docker:${ENGINE_VERSION}-dind
$ 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-2927@tmp/861dd5b6-c1e8-45d0-8ae1-4073b3d3833c/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
14:51:49 19.03.12-dind: Pulling from library/docker
14:51:49 df20fa9351a1: Pulling fs layer
14:51:49 25ad7478873d: Pulling fs layer
14:51:49 4684f6177b5d: Pulling fs layer
14:51:49 46e300cec669: Pulling fs layer
14:51:49 63038576ad94: Pulling fs layer
14:51:49 0fdb76c4706c: Pulling fs layer
14:51:49 cb7edeffdfd5: Pulling fs layer
14:51:49 cc28bd76800f: Pulling fs layer
14:51:49 54196fe38f7e: Pulling fs layer
14:51:49 ea71acc29633: Pulling fs layer
14:51:49 657cc4c15165: Pulling fs layer
14:51:49 cb7edeffdfd5: Waiting
14:51:49 cc28bd76800f: Waiting
14:51:49 54196fe38f7e: Waiting
14:51:49 ea71acc29633: Waiting
14:51:49 657cc4c15165: Waiting
14:51:49 46e300cec669: Waiting
14:51:49 0fdb76c4706c: Waiting
14:51:49 4684f6177b5d: Verifying Checksum
14:51:49 4684f6177b5d: Download complete
14:51:49 df20fa9351a1: Verifying Checksum
14:51:49 df20fa9351a1: Download complete
14:51:49 25ad7478873d: Verifying Checksum
14:51:49 25ad7478873d: Download complete
14:51:49 63038576ad94: Verifying Checksum
14:51:49 63038576ad94: Download complete
14:51:49 0fdb76c4706c: Verifying Checksum
14:51:49 0fdb76c4706c: Download complete
14:51:50 cb7edeffdfd5: Verifying Checksum
14:51:50 cb7edeffdfd5: Download complete
14:51:50 54196fe38f7e: Verifying Checksum
14:51:50 54196fe38f7e: Download complete
14:51:50 cc28bd76800f: Verifying Checksum
14:51:50 cc28bd76800f: Download complete
14:51:50 ea71acc29633: Verifying Checksum
14:51:50 ea71acc29633: Download complete
14:51:50 657cc4c15165: Download complete
14:51:50 df20fa9351a1: Pull complete
14:51:50 46e300cec669: Verifying Checksum
14:51:50 46e300cec669: Download complete
14:51:50 25ad7478873d: Pull complete
14:51:50 4684f6177b5d: Pull complete
14:51:52 46e300cec669: Pull complete
14:51:52 63038576ad94: Pull complete
14:51:52 0fdb76c4706c: Pull complete
14:51:53 cb7edeffdfd5: Pull complete
14:51:53 cc28bd76800f: Pull complete
14:51:53 54196fe38f7e: Pull complete
14:51:53 ea71acc29633: Pull complete
14:51:53 657cc4c15165: Pull complete
14:51:53 Digest: sha256:674f1f40ff7c8ac14f5d8b6b28d8fb1f182647ff75304d018003f1e21a0d8771
14:51:53 Status: Downloaded newer image for docker:19.03.12-dind
14:51:53  ---> 66dc2d45749a
14:51:53 Step 4/11 : RUN apk add --no-cache 		openssh
14:51:56  ---> Running in 5fefd1b32a57
14:51:57 fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
14:51:58 fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/community/x86_64/APKINDEX.tar.gz
14:51:58 (1/4) Installing openssh-sftp-server (8.3_p1-r3)
14:51:58 (2/4) Installing openssh-server-common (8.3_p1-r3)
14:51:58 (3/4) Installing openssh-server (8.3_p1-r3)
14:51:58 (4/4) Installing openssh (8.3_p1-r3)
14:51:58 Executing busybox-1.31.1-r16.trigger
14:51:58 OK: 28 MiB in 51 packages
14:51:59 Removing intermediate container 5fefd1b32a57
14:51:59  ---> 7966a1dc8dc8
14:51:59 Step 5/11 : RUN ssh-keygen -A
14:51:59  ---> Running in 92eb7b454569
14:52:00 ssh-keygen: generating new host keys: RSA DSA ECDSA ED25519 
14:52:00 Removing intermediate container 92eb7b454569
14:52:00  ---> 1b82791b0970
14:52:00 Step 6/11 : RUN echo "IgnoreUserKnownHosts yes" > /etc/ssh/sshd_config &&   echo "PubkeyAuthentication yes" >> /etc/ssh/sshd_config &&   echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
14:52:01  ---> Running in 9837e0194832
14:52:02 Removing intermediate container 9837e0194832
14:52:02  ---> 97c4a8f6596b
14:52:02 Step 7/11 : COPY tests/ssh-keys/authorized_keys /root/.ssh/authorized_keys
14:52:02  ---> aa05fd76cd00
14:52:02 Step 8/11 : RUN chmod 600 /root/.ssh/authorized_keys
14:52:02  ---> Running in 9fc5825aa208
14:52:04 Removing intermediate container 9fc5825aa208
14:52:04  ---> 45d26f59fff4
14:52:04 Step 9/11 : RUN echo "root:root" | chpasswd
14:52:04  ---> Running in 73893ebdfcce
14:52:05 chpasswd: password for 'root' changed
14:52:05 Removing intermediate container 73893ebdfcce
14:52:05  ---> 0d9f519f4d18
14:52:05 Step 10/11 : RUN ln -s /usr/local/bin/docker /usr/bin/docker
14:52:05  ---> Running in 0bbd14a0672d
14:52:07 Removing intermediate container 0bbd14a0672d
14:52:07  ---> 16365aa54c08
14:52:07 Step 11/11 : EXPOSE 22
14:52:07  ---> Running in 756024b5c87a
14:52:07 Removing intermediate container 756024b5c87a
14:52:07  ---> 052109416765
14:52:07 Successfully built 052109416765
14:52:07 Successfully tagged dockerpinata/docker-py:sshdind-e7f1b4e48ab6a5c069ef52002051d97340975335
[Pipeline] isUnix
[Pipeline] sh
14:52:07 + docker tag dockerpinata/docker-py:sshdind-e7f1b4e48ab6a5c069ef52002051d97340975335 dockerpinata/docker-py:sshdind-e7f1b4e48ab6a5c069ef52002051d97340975335
[Pipeline] isUnix
[Pipeline] sh
14:52:07 + docker push dockerpinata/docker-py:sshdind-e7f1b4e48ab6a5c069ef52002051d97340975335
14:52:07 The push refers to repository [docker.io/dockerpinata/docker-py]
14:52:07 6377d7c6b490: Preparing
14:52:07 6c559864add9: Preparing
14:52:07 14e8b6606e64: Preparing
14:52:07 313828a3b9c9: Preparing
14:52:07 3745de05fc19: Preparing
14:52:07 5c191f9ccd93: Preparing
14:52:07 28209a0141ca: Preparing
14:52:07 1149e736aa92: Preparing
14:52:07 39e79983ac8b: Preparing
14:52:07 da8c28465f82: Preparing
14:52:07 d1292e236c36: Preparing
14:52:07 8890c171a12b: Preparing
14:52:07 4ae5bd84d450: Preparing
14:52:07 723a561964c8: Preparing
14:52:07 78764725b56c: Preparing
14:52:07 51d6d3d09136: Preparing
14:52:07 1507bc794612: Preparing
14:52:07 50644c29ef5a: Preparing
14:52:07 5c191f9ccd93: Waiting
14:52:07 28209a0141ca: Waiting
14:52:07 1149e736aa92: Waiting
14:52:07 39e79983ac8b: Waiting
14:52:07 da8c28465f82: Waiting
14:52:07 d1292e236c36: Waiting
14:52:07 8890c171a12b: Waiting
14:52:07 4ae5bd84d450: Waiting
14:52:07 723a561964c8: Waiting
14:52:07 78764725b56c: Waiting
14:52:07 51d6d3d09136: Waiting
14:52:07 1507bc794612: Waiting
14:52:07 50644c29ef5a: Waiting
14:52:08 313828a3b9c9: Pushed
14:52:09 6377d7c6b490: Pushed
14:52:09 6c559864add9: Pushed
14:52:09 3745de05fc19: Pushed
14:52:09 1149e736aa92: Layer already exists
14:52:09 39e79983ac8b: Layer already exists
14:52:09 14e8b6606e64: Pushed
14:52:09 da8c28465f82: Layer already exists
14:52:09 d1292e236c36: Layer already exists
14:52:09 8890c171a12b: Layer already exists
14:52:09 4ae5bd84d450: Layer already exists
14:52:09 723a561964c8: Layer already exists
14:52:09 78764725b56c: Layer already exists
14:52:09 51d6d3d09136: Layer already exists
14:52:09 1507bc794612: Layer already exists
14:52:09 50644c29ef5a: Layer already exists
14:52:09 5c191f9ccd93: Pushed
14:52:10 28209a0141ca: Pushed
14:52:11 sshdind-e7f1b4e48ab6a5c069ef52002051d97340975335: digest: sha256:dc8065306c9f758b1bdb8ac013d1a013199533f2d1f2e58cecc258ac7fa2618c size: 4067
[Pipeline] isUnix
[Pipeline] sh
14:52:11 + docker pull dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335
14:52:11 Error response from daemon: manifest for dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335 not found: manifest unknown: manifest unknown
[Pipeline] isUnix
[Pipeline] sh
14:52:12 + docker build -t dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335 -f tests/Dockerfile --build-arg PYTHON_VERSION=3.7 .
14:52:12 Sending build context to Docker daemon  1.376MB

14:52:12 Step 1/21 : ARG PYTHON_VERSION=3.7
14:52:12 Step 2/21 : FROM python:${PYTHON_VERSION}
14:52:12 3.7: Pulling from library/python
14:52:12 0e29546d541c: Pulling fs layer
14:52:12 9b829c73b52b: Pulling fs layer
14:52:12 cb5b7ae36172: Pulling fs layer
14:52:12 6494e4811622: Pulling fs layer
14:52:12 6f9f74896dfa: Pulling fs layer
14:52:12 6494e4811622: Waiting
14:52:12 fcb6d5f7c986: Pulling fs layer
14:52:12 7a72d131c196: Pulling fs layer
14:52:12 c4221d178521: Pulling fs layer
14:52:12 6f9f74896dfa: Waiting
14:52:12 fcb6d5f7c986: Waiting
14:52:12 7a72d131c196: Waiting
14:52:12 c4221d178521: Waiting
14:52:12 71d5c5b5a91f: Pulling fs layer
14:52:12 71d5c5b5a91f: Waiting
14:52:13 9b829c73b52b: Verifying Checksum
14:52:13 9b829c73b52b: Download complete
14:52:13 cb5b7ae36172: Verifying Checksum
14:52:13 cb5b7ae36172: Download complete
14:52:13 0e29546d541c: Verifying Checksum
14:52:13 0e29546d541c: Download complete
14:52:13 fcb6d5f7c986: Verifying Checksum
14:52:13 fcb6d5f7c986: Download complete
14:52:14 6494e4811622: Verifying Checksum
14:52:14 6494e4811622: Download complete
14:52:14 7a72d131c196: Verifying Checksum
14:52:14 7a72d131c196: Download complete
14:52:14 c4221d178521: Verifying Checksum
14:52:14 c4221d178521: Download complete
14:52:14 71d5c5b5a91f: Verifying Checksum
14:52:14 71d5c5b5a91f: Download complete
14:52:15 6f9f74896dfa: Verifying Checksum
14:52:15 6f9f74896dfa: Download complete
14:52:17 0e29546d541c: Pull complete
14:52:17 9b829c73b52b: Pull complete
14:52:17 cb5b7ae36172: Pull complete
14:52:20 6494e4811622: Pull complete
14:52:28 6f9f74896dfa: Pull complete
14:52:28 fcb6d5f7c986: Pull complete
14:52:28 7a72d131c196: Pull complete
14:52:28 c4221d178521: Pull complete
14:52:28 71d5c5b5a91f: Pull complete
14:52:28 Digest: sha256:838bd1076354219871e0fd8e202684ca6dc309d3c926562980e0bde2b264397a
14:52:28 Status: Downloaded newer image for python:3.7
14:52:28  ---> ad37de9b03ef
14:52:28 Step 3/21 : ARG APT_MIRROR
14:52:30  ---> Running in a56caa700e12
14:52:31 Removing intermediate container a56caa700e12
14:52:31  ---> a5c64f0511db
14:52:31 Step 4/21 : RUN sed -ri "s/(httpredir|deb).debian.org/${APT_MIRROR:-deb.debian.org}/g" /etc/apt/sources.list     && sed -ri "s/(security).debian.org/${APT_MIRROR:-security.debian.org}/g" /etc/apt/sources.list
14:52:31  ---> Running in 6c2941981f7c
14:52:32 Removing intermediate container 6c2941981f7c
14:52:32  ---> aed7bc8359ad
14:52:32 Step 5/21 : RUN apt-get update && apt-get -y install --no-install-recommends     gnupg2     pass
14:52:32  ---> Running in 5bbd9b2c1c74
14:52:33 Get:1 http://deb.debian.org/debian bullseye InRelease [116 kB]
14:52:33 Get:2 http://deb.debian.org/debian bullseye-updates InRelease [39.4 kB]
14:52:33 Get:3 http://deb.debian.org/debian bullseye/main amd64 Packages [8183 kB]
14:52:33 Get:4 http://security.debian.org/debian-security bullseye-security InRelease [44.1 kB]
14:52:33 Get:5 http://deb.debian.org/debian bullseye-updates/main amd64 Packages [2592 B]
14:52:34 Get:6 http://security.debian.org/debian-security bullseye-security/main amd64 Packages [102 kB]
14:52:35 Fetched 8487 kB in 2s (3656 kB/s)
14:52:36 Reading package lists...
14:52:36 Reading package lists...
14:52:37 Building dependency tree...
14:52:37 Reading state information...
14:52:37 The following additional packages will be installed:
14:52:37   tree
14:52:37 Suggested packages:
14:52:37   python libxml-simple-perl ruby
14:52:37 Recommended packages:
14:52:37   qrencode xclip
14:52:37 The following NEW packages will be installed:
14:52:37   gnupg2 pass tree
14:52:37 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
14:52:37 Need to get 523 kB of archives.
14:52:37 After this operation, 727 kB of additional disk space will be used.
14:52:37 Get:1 http://deb.debian.org/debian bullseye/main amd64 gnupg2 all 2.2.27-2 [434 kB]
14:52:37 Get:2 http://deb.debian.org/debian bullseye/main amd64 tree amd64 1.8.0-1+b1 [49.6 kB]
14:52:37 Get:3 http://deb.debian.org/debian bullseye/main amd64 pass all 1.7.3-2 [39.2 kB]
14:52:37 debconf: delaying package configuration, since apt-utils is not installed
14:52:37 Fetched 523 kB in 0s (1902 kB/s)
14:52:37 Selecting previously unselected package gnupg2.
14:52:37 (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 ... 23373 files and directories currently installed.)
14:52:37 Preparing to unpack .../gnupg2_2.2.27-2_all.deb ...
14:52:37 Unpacking gnupg2 (2.2.27-2) ...
14:52:37 Selecting previously unselected package tree.
14:52:37 Preparing to unpack .../tree_1.8.0-1+b1_amd64.deb ...
14:52:37 Unpacking tree (1.8.0-1+b1) ...
14:52:37 Selecting previously unselected package pass.
14:52:37 Preparing to unpack .../archives/pass_1.7.3-2_all.deb ...
14:52:37 Unpacking pass (1.7.3-2) ...
14:52:38 Setting up gnupg2 (2.2.27-2) ...
14:52:38 Setting up tree (1.8.0-1+b1) ...
14:52:38 Setting up pass (1.7.3-2) ...
14:52:39 Removing intermediate container 5bbd9b2c1c74
14:52:39  ---> dfa833201e0a
14:52:39 Step 6/21 : COPY tests/ssh-keys /root/.ssh
14:52:39  ---> 3ef57e63c959
14:52:39 Step 7/21 : RUN chmod -R 600 /root/.ssh
14:52:39  ---> Running in 358b8dc14f82
14:52:41 Removing intermediate container 358b8dc14f82
14:52:41  ---> 67b2078e72a1
14:52:41 Step 8/21 : COPY ./tests/gpg-keys /gpg-keys
14:52:41  ---> 02f5d8fd2425
14:52:41 Step 9/21 : RUN gpg2 --import gpg-keys/secret
14:52:41  ---> Running in b774a5e5144e
14:52:41 gpg: directory '/root/.gnupg' created
14:52:41 gpg: keybox '/root/.gnupg/pubring.kbx' created
14:52:41 gpg: /root/.gnupg/trustdb.gpg: trustdb created
14:52:41 gpg: key 464ED987A7B21401: public key "Sakuya Izayoi <sakuya@gensokyo.jp>" imported
14:52:41 gpg: key 464ED987A7B21401: secret key imported
14:52:41 gpg: Total number processed: 1
14:52:41 gpg:               imported: 1
14:52:41 gpg:       secret keys read: 1
14:52:41 gpg:   secret keys imported: 1
14:52:42 Removing intermediate container b774a5e5144e
14:52:42  ---> bf0771821f8e
14:52:42 Step 10/21 : RUN gpg2 --import-ownertrust gpg-keys/ownertrust
14:52:42  ---> Running in 35db0fdffce0
14:52:42 gpg: inserting ownertrust of 6
14:52:43 Removing intermediate container 35db0fdffce0
14:52:43  ---> 32944396802e
14:52:43 Step 11/21 : RUN yes | pass init $(gpg2 --no-auto-check-trustdb --list-secret-key | awk '/^sec/{getline; $1=$1; print}')
14:52:43  ---> Running in a530d8481bbc
14:52:43 gpg: please do a --check-trustdb
14:52:44 mkdir: created directory '/root/.password-store/'
14:52:44 Password store initialized for 9781B87DAB042E6FD51388A5464ED987A7B21401
14:52:44 Removing intermediate container a530d8481bbc
14:52:44  ---> 76f935a75be2
14:52:44 Step 12/21 : RUN gpg2 --check-trustdb
14:52:44  ---> Running in 73e0316094df
14:52:45 gpg: marginals needed: 3  completes needed: 1  trust model: pgp
14:52:45 gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
14:52:45 Removing intermediate container 73e0316094df
14:52:45  ---> 99c311d39c2d
14:52:45 Step 13/21 : ARG CREDSTORE_VERSION=v0.6.3
14:52:45  ---> Running in 7e186d33c555
14:52:45 Removing intermediate container 7e186d33c555
14:52:45  ---> b69e37386212
14:52:45 Step 14/21 : RUN curl -sSL -o /opt/docker-credential-pass.tar.gz     https://github.com/docker/docker-credential-helpers/releases/download/$CREDSTORE_VERSION/docker-credential-pass-$CREDSTORE_VERSION-amd64.tar.gz &&     tar -xf /opt/docker-credential-pass.tar.gz -O > /usr/local/bin/docker-credential-pass &&     rm -rf /opt/docker-credential-pass.tar.gz &&     chmod +x /usr/local/bin/docker-credential-pass
14:52:45  ---> Running in 0d4ada747a7d
14:52:47 Removing intermediate container 0d4ada747a7d
14:52:47  ---> 06acfe73bfeb
14:52:47 Step 15/21 : WORKDIR /src
14:52:47  ---> Running in 83f24e7d234b
14:52:47 Removing intermediate container 83f24e7d234b
14:52:47  ---> 8503ec066828
14:52:47 Step 16/21 : COPY requirements.txt /src/requirements.txt
14:52:47  ---> cada8578bda1
14:52:47 Step 17/21 : RUN pip install -r requirements.txt
14:52:47  ---> Running in 5cb56884a3e5
14:52:51 Ignoring pywin32: markers 'sys_platform == "win32"' don't match your environment
14:52:55 Collecting appdirs==1.4.3
14:52:55   Downloading appdirs-1.4.3-py2.py3-none-any.whl (12 kB)
14:52:55 Collecting asn1crypto==0.22.0
14:52:55   Downloading asn1crypto-0.22.0-py2.py3-none-any.whl (97 kB)
14:52:55 Collecting backports.ssl-match-hostname==3.5.0.1
14:52:55   Downloading backports.ssl_match_hostname-3.5.0.1.tar.gz (5.6 kB)
14:52:57 Collecting cffi==1.14.4
14:52:57   Downloading cffi-1.14.4-cp37-cp37m-manylinux1_x86_64.whl (402 kB)
14:52:57 Collecting cryptography==3.4.7
14:52:57   Downloading cryptography-3.4.7-cp36-abi3-manylinux2014_x86_64.whl (3.2 MB)
14:52:57 Collecting enum34==1.1.6
14:52:57   Downloading enum34-1.1.6-py3-none-any.whl (12 kB)
14:52:57 Collecting idna==2.5
14:52:57   Downloading idna-2.5-py2.py3-none-any.whl (55 kB)
14:52:57 Collecting ipaddress==1.0.18
14:52:57   Downloading ipaddress-1.0.18.tar.gz (32 kB)
14:52:58 Collecting packaging==16.8
14:52:58   Downloading packaging-16.8-py2.py3-none-any.whl (23 kB)
14:52:58 Collecting paramiko==2.8.0
14:52:58   Downloading paramiko-2.8.0-py2.py3-none-any.whl (206 kB)
14:52:58 Collecting pycparser==2.17
14:52:58   Downloading pycparser-2.17.tar.gz (231 kB)
14:52:58 Collecting pyOpenSSL==18.0.0
14:52:58   Downloading pyOpenSSL-18.0.0-py2.py3-none-any.whl (53 kB)
14:52:58 Collecting pyparsing==2.2.0
14:52:58   Downloading pyparsing-2.2.0-py2.py3-none-any.whl (56 kB)
14:52:58 Collecting requests==2.26.0
14:52:58   Downloading requests-2.26.0-py2.py3-none-any.whl (62 kB)
14:52:58 Collecting urllib3==1.26.5
14:52:58   Downloading urllib3-1.26.5-py2.py3-none-any.whl (138 kB)
14:52:58 Collecting websocket-client==0.56.0
14:52:58   Downloading websocket_client-0.56.0-py2.py3-none-any.whl (200 kB)
14:52:58 Collecting six
14:52:58   Downloading six-1.16.0-py2.py3-none-any.whl (11 kB)
14:52:58 Collecting pynacl>=1.0.1
14:52:58   Downloading PyNaCl-1.4.0-cp35-abi3-manylinux1_x86_64.whl (961 kB)
14:52:59 Collecting bcrypt>=3.1.3
14:52:59   Downloading bcrypt-3.2.0-cp36-abi3-manylinux2010_x86_64.whl (63 kB)
14:52:59 Collecting charset-normalizer~=2.0.0
14:52:59   Downloading charset_normalizer-2.0.9-py3-none-any.whl (39 kB)
14:52:59 Collecting certifi>=2017.4.17
14:52:59   Downloading certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
14:52:59 Building wheels for collected packages: backports.ssl-match-hostname, ipaddress, pycparser
14:52:59   Building wheel for backports.ssl-match-hostname (setup.py): started
14:52:59   Building wheel for backports.ssl-match-hostname (setup.py): finished with status 'done'
14:52:59   Created wheel for backports.ssl-match-hostname: filename=backports.ssl_match_hostname-3.5.0.1-py3-none-any.whl size=5206 sha256=43fd59795b9e0a5e34d7c75efbdf42a5ea3d310ee2f533ff2e9b5ca1636a37a6
14:52:59   Stored in directory: /root/.cache/pip/wheels/93/72/f6/df894bfc7947d11f89dbdb4e9b786703a43cd547c1b5e8c738
14:52:59   Building wheel for ipaddress (setup.py): started
14:52:59   Building wheel for ipaddress (setup.py): finished with status 'done'
14:52:59   Created wheel for ipaddress: filename=ipaddress-1.0.18-py3-none-any.whl size=18124 sha256=ddcbb0638fe333b39081d8906a3fdb9fb0c6eaca4b9b635ef64e9c8e60472072
14:52:59   Stored in directory: /root/.cache/pip/wheels/54/90/bd/f99e221ab77ef8e6d65c14efe986cef3360da2990396093151
14:52:59   Building wheel for pycparser (setup.py): started
14:53:00   Building wheel for pycparser (setup.py): finished with status 'done'
14:53:00   Created wheel for pycparser: filename=pycparser-2.17-py2.py3-none-any.whl size=192898 sha256=cb871d84e13485a1851bd077cf148710170c4f95dcd133279ea55c53067b5c79
14:53:00   Stored in directory: /root/.cache/pip/wheels/91/50/7a/9f94e39b01559aa44c3cefb775d7befcc01d0a6ed0093cab37
14:53:00 Successfully built backports.ssl-match-hostname ipaddress pycparser
14:53:00 Installing collected packages: pycparser, six, cffi, urllib3, pyparsing, pynacl, idna, cryptography, charset-normalizer, certifi, bcrypt, websocket-client, requests, pyOpenSSL, paramiko, packaging, ipaddress, enum34, backports.ssl-match-hostname, asn1crypto, appdirs
14:53:01 Successfully installed appdirs-1.4.3 asn1crypto-0.22.0 backports.ssl-match-hostname-3.5.0.1 bcrypt-3.2.0 certifi-2021.10.8 cffi-1.14.4 charset-normalizer-2.0.9 cryptography-3.4.7 enum34-1.1.6 idna-2.5 ipaddress-1.0.18 packaging-16.8 paramiko-2.8.0 pyOpenSSL-18.0.0 pycparser-2.17 pynacl-1.4.0 pyparsing-2.2.0 requests-2.26.0 six-1.16.0 urllib3-1.26.5 websocket-client-0.56.0
14:53:01 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
14:53:05 WARNING: You are using pip version 21.2.4; however, version 21.3.1 is available.
14:53:05 You should consider upgrading via the '/usr/local/bin/python -m pip install --upgrade pip' command.
14:53:07 Removing intermediate container 5cb56884a3e5
14:53:07  ---> e78e886fc2c3
14:53:07 Step 18/21 : COPY test-requirements.txt /src/test-requirements.txt
14:53:07  ---> ffa1fa4f9f3b
14:53:07 Step 19/21 : RUN pip install -r test-requirements.txt
14:53:07  ---> Running in d6765d0eac35
14:53:14 Collecting setuptools==58.2.0
14:53:14   Downloading setuptools-58.2.0-py3-none-any.whl (946 kB)
14:53:15 Collecting coverage==6.0.1
14:53:15   Downloading coverage-6.0.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (252 kB)
14:53:15 Collecting flake8==4.0.1
14:53:15   Downloading flake8-4.0.1-py2.py3-none-any.whl (64 kB)
14:53:15 Collecting pytest==6.2.5
14:53:15   Downloading pytest-6.2.5-py3-none-any.whl (280 kB)
14:53:15 Collecting pytest-cov==3.0.0
14:53:15   Downloading pytest_cov-3.0.0-py3-none-any.whl (20 kB)
14:53:15 Collecting pytest-timeout==2.0.1
14:53:15   Downloading pytest_timeout-2.0.1-py3-none-any.whl (11 kB)
14:53:15 Collecting importlib-metadata<4.3
14:53:15   Downloading importlib_metadata-4.2.0-py3-none-any.whl (16 kB)
14:53:15 Collecting pycodestyle<2.9.0,>=2.8.0
14:53:15   Downloading pycodestyle-2.8.0-py2.py3-none-any.whl (42 kB)
14:53:15 Collecting mccabe<0.7.0,>=0.6.0
14:53:15   Downloading mccabe-0.6.1-py2.py3-none-any.whl (8.6 kB)
14:53:15 Collecting pyflakes<2.5.0,>=2.4.0
14:53:15   Downloading pyflakes-2.4.0-py2.py3-none-any.whl (69 kB)
14:53:15 Requirement already satisfied: packaging in /usr/local/lib/python3.7/site-packages (from pytest==6.2.5->-r test-requirements.txt (line 4)) (16.8)
14:53:15 Collecting py>=1.8.2
14:53:15   Downloading py-1.11.0-py2.py3-none-any.whl (98 kB)
14:53:15 Collecting attrs>=19.2.0
14:53:15   Downloading attrs-21.2.0-py2.py3-none-any.whl (53 kB)
14:53:15 Collecting pluggy<2.0,>=0.12
14:53:15   Downloading pluggy-1.0.0-py2.py3-none-any.whl (13 kB)
14:53:15 Collecting iniconfig
14:53:15   Downloading iniconfig-1.1.1-py2.py3-none-any.whl (5.0 kB)
14:53:15 Collecting toml
14:53:15   Downloading toml-0.10.2-py2.py3-none-any.whl (16 kB)
14:53:15 Collecting coverage[toml]>=5.2.1
14:53:15   Downloading coverage-6.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (213 kB)
14:53:15   Downloading coverage-6.1.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (213 kB)
14:53:15   Downloading coverage-6.1.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (213 kB)
14:53:15   Downloading coverage-6.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (213 kB)
14:53:15   Downloading coverage-6.0.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (253 kB)
14:53:15 Collecting tomli
14:53:15   Downloading tomli-2.0.0-py3-none-any.whl (12 kB)
14:53:16 Collecting zipp>=0.5
14:53:16   Downloading zipp-3.6.0-py3-none-any.whl (5.3 kB)
14:53:16 Collecting typing-extensions>=3.6.4
14:53:16   Downloading typing_extensions-4.0.1-py3-none-any.whl (22 kB)
14:53:16 Requirement already satisfied: six in /usr/local/lib/python3.7/site-packages (from packaging->pytest==6.2.5->-r test-requirements.txt (line 4)) (1.16.0)
14:53:16 Requirement already satisfied: pyparsing in /usr/local/lib/python3.7/site-packages (from packaging->pytest==6.2.5->-r test-requirements.txt (line 4)) (2.2.0)
14:53:16 Installing collected packages: zipp, typing-extensions, importlib-metadata, tomli, toml, py, pluggy, iniconfig, coverage, attrs, pytest, pyflakes, pycodestyle, mccabe, setuptools, pytest-timeout, pytest-cov, flake8
14:53:16   Attempting uninstall: setuptools
14:53:16     Found existing installation: setuptools 57.5.0
14:53:16     Uninstalling setuptools-57.5.0:
14:53:16       Successfully uninstalled setuptools-57.5.0
14:53:17 Successfully installed attrs-21.2.0 coverage-6.0.1 flake8-4.0.1 importlib-metadata-4.2.0 iniconfig-1.1.1 mccabe-0.6.1 pluggy-1.0.0 py-1.11.0 pycodestyle-2.8.0 pyflakes-2.4.0 pytest-6.2.5 pytest-cov-3.0.0 pytest-timeout-2.0.1 setuptools-58.2.0 toml-0.10.2 tomli-2.0.0 typing-extensions-4.0.1 zipp-3.6.0
14:53:17 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
14:53:17 WARNING: You are using pip version 21.2.4; however, version 21.3.1 is available.
14:53:17 You should consider upgrading via the '/usr/local/bin/python -m pip install --upgrade pip' command.
14:53:18 Removing intermediate container d6765d0eac35
14:53:18  ---> d0fc82b9c38e
14:53:18 Step 20/21 : COPY . /src
14:53:19  ---> ca63c190a98f
14:53:19 Step 21/21 : RUN pip install .
14:53:19  ---> Running in df0579a30636
14:53:20 Processing /src
14:53:20   DEPRECATION: A future pip version will change local packages to be built in-place without first copying to a temporary directory. We recommend you use --use-feature=in-tree-build to test your packages with this new behavior before it becomes the default.
14:53:20    pip 21.3 will remove support for this functionality. You can find discussion regarding this at https://github.com/pypa/pip/issues/7555.
14:53:20 Requirement already satisfied: websocket-client>=0.32.0 in /usr/local/lib/python3.7/site-packages (from docker==5.1.0.dev0) (0.56.0)
14:53:20 Requirement already satisfied: requests!=2.18.0,>=2.14.2 in /usr/local/lib/python3.7/site-packages (from docker==5.1.0.dev0) (2.26.0)
14:53:20 Requirement already satisfied: charset-normalizer~=2.0.0 in /usr/local/lib/python3.7/site-packages (from requests!=2.18.0,>=2.14.2->docker==5.1.0.dev0) (2.0.9)
14:53:20 Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.7/site-packages (from requests!=2.18.0,>=2.14.2->docker==5.1.0.dev0) (2.5)
14:53:20 Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/site-packages (from requests!=2.18.0,>=2.14.2->docker==5.1.0.dev0) (2021.10.8)
14:53:20 Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.7/site-packages (from requests!=2.18.0,>=2.14.2->docker==5.1.0.dev0) (1.26.5)
14:53:20 Requirement already satisfied: six in /usr/local/lib/python3.7/site-packages (from websocket-client>=0.32.0->docker==5.1.0.dev0) (1.16.0)
14:53:20 Building wheels for collected packages: docker
14:53:20   Building wheel for docker (setup.py): started
14:53:20   Building wheel for docker (setup.py): finished with status 'done'
14:53:20   Created wheel for docker: filename=docker-5.1.0.dev0-py3-none-any.whl size=146408 sha256=4b145c7d208a2ce338afde40c6be901d09b781faf8aa5d170a5243096d7e90a1
14:53:20   Stored in directory: /tmp/pip-ephem-wheel-cache-jg36g44j/wheels/6f/63/19/359cf44f647b75d0ea75ecc03aa429fec4c372b453eb4b6525
14:53:20 Successfully built docker
14:53:21 Installing collected packages: docker
14:53:21 Successfully installed docker-5.1.0.dev0
14:53:21 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
14:53:21 WARNING: You are using pip version 21.2.4; however, version 21.3.1 is available.
14:53:21 You should consider upgrading via the '/usr/local/bin/python -m pip install --upgrade pip' command.
14:53:21 Removing intermediate container df0579a30636
14:53:21  ---> 43886ab9fbb1
14:53:21 Successfully built 43886ab9fbb1
14:53:21 Successfully tagged dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335
[Pipeline] isUnix
[Pipeline] sh
14:53:22 + docker tag dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335 dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335
[Pipeline] isUnix
[Pipeline] sh
14:53:22 + docker push dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335
14:53:22 The push refers to repository [docker.io/dockerpinata/docker-py]
14:53:22 620a73898f13: Preparing
14:53:22 f8f46a2c84bc: Preparing
14:53:22 738e4e597757: Preparing
14:53:22 e9887c40826a: Preparing
14:53:22 26e742a2b69e: Preparing
14:53:22 bd9e87e73f38: Preparing
14:53:22 794d33a3cd72: Preparing
14:53:22 814292121d1b: Preparing
14:53:22 c17b329a0dd2: Preparing
14:53:22 c45a18882afd: Preparing
14:53:22 7718d04c7b33: Preparing
14:53:22 4fce0673d18f: Preparing
14:53:22 db7944024a56: Preparing
14:53:22 c06ca65bc42c: Preparing
14:53:22 92d979e71160: Preparing
14:53:22 7544da68a5c1: Preparing
14:53:22 c09879afe469: Preparing
14:53:22 11088eb5307c: Preparing
14:53:22 d86f8b9fa813: Preparing
14:53:22 86c81640d929: Preparing
14:53:22 aedcb370b058: Preparing
14:53:22 c3a0d593ed24: Preparing
14:53:22 26a504e63be4: Preparing
14:53:22 8bf42db0de72: Preparing
14:53:22 31892cc314cb: Preparing
14:53:22 11936051f93b: Preparing
14:53:22 bd9e87e73f38: Waiting
14:53:22 794d33a3cd72: Waiting
14:53:22 814292121d1b: Waiting
14:53:22 c17b329a0dd2: Waiting
14:53:22 c45a18882afd: Waiting
14:53:22 7718d04c7b33: Waiting
14:53:22 4fce0673d18f: Waiting
14:53:22 db7944024a56: Waiting
14:53:22 c06ca65bc42c: Waiting
14:53:22 92d979e71160: Waiting
14:53:22 7544da68a5c1: Waiting
14:53:22 c09879afe469: Waiting
14:53:22 11088eb5307c: Waiting
14:53:22 d86f8b9fa813: Waiting
14:53:22 86c81640d929: Waiting
14:53:22 aedcb370b058: Waiting
14:53:22 c3a0d593ed24: Waiting
14:53:22 26a504e63be4: Waiting
14:53:22 8bf42db0de72: Waiting
14:53:22 31892cc314cb: Waiting
14:53:22 11936051f93b: Waiting
14:53:24 620a73898f13: Pushed
14:53:24 f8f46a2c84bc: Pushed
14:53:24 e9887c40826a: Pushed
14:53:24 738e4e597757: Pushed
14:53:24 bd9e87e73f38: Pushed
14:53:25 814292121d1b: Pushed
14:53:25 c17b329a0dd2: Pushed
14:53:25 794d33a3cd72: Pushed
14:53:25 c45a18882afd: Pushed
14:53:25 26e742a2b69e: Pushed
14:53:26 7718d04c7b33: Pushed
14:53:26 4fce0673d18f: Pushed
14:53:26 c06ca65bc42c: Pushed
14:53:26 db7944024a56: Pushed
14:53:26 11088eb5307c: Layer already exists
14:53:26 d86f8b9fa813: Layer already exists
14:53:26 86c81640d929: Layer already exists
14:53:26 aedcb370b058: Layer already exists
14:53:26 c3a0d593ed24: Layer already exists
14:53:26 26a504e63be4: Layer already exists
14:53:26 8bf42db0de72: Layer already exists
14:53:26 31892cc314cb: Layer already exists
14:53:27 11936051f93b: Layer already exists
14:53:27 92d979e71160: Pushed
14:53:27 c09879afe469: Pushed
14:53:28 7544da68a5c1: Pushed
14:53:29 py3-e7f1b4e48ab6a5c069ef52002051d97340975335: digest: sha256:040d66794e14c656fc23c198ecebd868aeadc4b27292d3dae9f931e10a17c30c size: 5766
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // node
[Pipeline] node
Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-01f8bae1aea8f4eb8) in /home/ubuntu/workspace/docker-py_PR-2927
[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-2927@tmp/8b056d69-12f7-4498-8774-33d87343b86c/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
14:53:42 + docker run --rm --entrypoint=python dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335 /src/scripts/versions.py
14:53:42 Unable to find image 'dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335' locally
14:53:42 py3-e7f1b4e48ab6a5c069ef52002051d97340975335: Pulling from dockerpinata/docker-py
14:53:42 0e29546d541c: Pulling fs layer
14:53:42 9b829c73b52b: Pulling fs layer
14:53:42 cb5b7ae36172: Pulling fs layer
14:53:42 6494e4811622: Pulling fs layer
14:53:42 6f9f74896dfa: Pulling fs layer
14:53:42 fcb6d5f7c986: Pulling fs layer
14:53:42 7a72d131c196: Pulling fs layer
14:53:42 c4221d178521: Pulling fs layer
14:53:42 71d5c5b5a91f: Pulling fs layer
14:53:42 1419e9b9b34b: Pulling fs layer
14:53:42 15dc3661448f: Pulling fs layer
14:53:42 320717784bcc: Pulling fs layer
14:53:42 2bd939cfa10f: Pulling fs layer
14:53:42 b3b1ef91a6b4: Pulling fs layer
14:53:42 e49c264d9e04: Pulling fs layer
14:53:42 160fe9f1fa90: Pulling fs layer
14:53:42 56f2ac402a20: Pulling fs layer
14:53:42 58a149df53fc: Pulling fs layer
14:53:42 8b90de945a02: Pulling fs layer
14:53:42 f2f551e62a04: Pulling fs layer
14:53:42 d1e4ee26fd1f: Pulling fs layer
14:53:42 c331f9b38001: Pulling fs layer
14:53:42 484f945ab2e4: Pulling fs layer
14:53:42 992ffe283cbb: Pulling fs layer
14:53:42 fc6d15568bb0: Pulling fs layer
14:53:42 4107775b427e: Pulling fs layer
14:53:42 b3b1ef91a6b4: Waiting
14:53:42 e49c264d9e04: Waiting
14:53:42 160fe9f1fa90: Waiting
14:53:42 56f2ac402a20: Waiting
14:53:42 58a149df53fc: Waiting
14:53:42 8b90de945a02: Waiting
14:53:42 f2f551e62a04: Waiting
14:53:42 d1e4ee26fd1f: Waiting
14:53:42 c331f9b38001: Waiting
14:53:42 484f945ab2e4: Waiting
14:53:42 992ffe283cbb: Waiting
14:53:42 fc6d15568bb0: Waiting
14:53:42 4107775b427e: Waiting
14:53:42 6494e4811622: Waiting
14:53:42 6f9f74896dfa: Waiting
14:53:42 fcb6d5f7c986: Waiting
14:53:42 7a72d131c196: Waiting
14:53:42 71d5c5b5a91f: Waiting
14:53:42 c4221d178521: Waiting
14:53:42 15dc3661448f: Waiting
14:53:42 1419e9b9b34b: Waiting
14:53:42 320717784bcc: Waiting
14:53:42 2bd939cfa10f: Waiting
14:53:42 9b829c73b52b: Verifying Checksum
14:53:42 9b829c73b52b: Download complete
14:53:42 cb5b7ae36172: Verifying Checksum
14:53:42 cb5b7ae36172: Download complete
14:53:43 0e29546d541c: Verifying Checksum
14:53:43 0e29546d541c: Download complete
14:53:44 6494e4811622: Verifying Checksum
14:53:44 6494e4811622: Download complete
14:53:44 fcb6d5f7c986: Verifying Checksum
14:53:44 fcb6d5f7c986: Download complete
14:53:44 c4221d178521: Verifying Checksum
14:53:44 c4221d178521: Download complete
14:53:44 71d5c5b5a91f: Verifying Checksum
14:53:44 71d5c5b5a91f: Download complete
14:53:44 1419e9b9b34b: Verifying Checksum
14:53:44 1419e9b9b34b: Download complete
14:53:44 7a72d131c196: Verifying Checksum
14:53:44 7a72d131c196: Download complete
14:53:44 320717784bcc: Verifying Checksum
14:53:44 320717784bcc: Download complete
14:53:44 2bd939cfa10f: Verifying Checksum
14:53:44 2bd939cfa10f: Download complete
14:53:44 b3b1ef91a6b4: Verifying Checksum
14:53:44 b3b1ef91a6b4: Download complete
14:53:44 e49c264d9e04: Verifying Checksum
14:53:44 e49c264d9e04: Download complete
14:53:44 160fe9f1fa90: Verifying Checksum
14:53:44 160fe9f1fa90: Download complete
14:53:44 56f2ac402a20: Download complete
14:53:45 58a149df53fc: Verifying Checksum
14:53:45 58a149df53fc: Download complete
14:53:45 15dc3661448f: Verifying Checksum
14:53:45 15dc3661448f: Download complete
14:53:45 8b90de945a02: Verifying Checksum
14:53:45 8b90de945a02: Download complete
14:53:45 f2f551e62a04: Verifying Checksum
14:53:45 f2f551e62a04: Download complete
14:53:45 d1e4ee26fd1f: Verifying Checksum
14:53:45 d1e4ee26fd1f: Download complete
14:53:45 484f945ab2e4: Verifying Checksum
14:53:45 484f945ab2e4: Download complete
14:53:45 c331f9b38001: Verifying Checksum
14:53:45 c331f9b38001: Download complete
14:53:45 992ffe283cbb: Verifying Checksum
14:53:45 992ffe283cbb: Download complete
14:53:45 fc6d15568bb0: Verifying Checksum
14:53:45 fc6d15568bb0: Download complete
14:53:45 4107775b427e: Verifying Checksum
14:53:45 4107775b427e: Download complete
14:53:46 6f9f74896dfa: Verifying Checksum
14:53:46 6f9f74896dfa: Download complete
14:53:48 0e29546d541c: Pull complete
14:53:48 9b829c73b52b: Pull complete
14:53:48 cb5b7ae36172: Pull complete
14:53:52 6494e4811622: Pull complete
14:53:58 6f9f74896dfa: Pull complete
14:53:59 fcb6d5f7c986: Pull complete
14:53:59 7a72d131c196: Pull complete
14:53:59 c4221d178521: Pull complete
14:53:59 71d5c5b5a91f: Pull complete
14:53:59 1419e9b9b34b: Pull complete
14:54:00 15dc3661448f: Pull complete
14:54:00 320717784bcc: Pull complete
14:54:00 2bd939cfa10f: Pull complete
14:54:00 b3b1ef91a6b4: Pull complete
14:54:00 e49c264d9e04: Pull complete
14:54:00 160fe9f1fa90: Pull complete
14:54:00 56f2ac402a20: Pull complete
14:54:00 58a149df53fc: Pull complete
14:54:01 8b90de945a02: Pull complete
14:54:01 f2f551e62a04: Pull complete
14:54:01 d1e4ee26fd1f: Pull complete
14:54:02 c331f9b38001: Pull complete
14:54:02 484f945ab2e4: Pull complete
14:54:02 992ffe283cbb: Pull complete
14:54:02 fc6d15568bb0: Pull complete
14:54:02 4107775b427e: Pull complete
14:54:02 Digest: sha256:040d66794e14c656fc23c198ecebd868aeadc4b27292d3dae9f931e10a17c30c
14:54:02 Status: Downloaded newer image for dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // node
[Pipeline] parallel
[Pipeline] { (Branch: py3.7_19.03.12)
[Pipeline] { (Branch: py3.7_20.10.12)
[Pipeline] { (Branch: py3.7_19.03.13)
[Pipeline] node
[Pipeline] node
[Pipeline] node
Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-0ff6606015a76122e) in /home/ubuntu/workspace/docker-py_PR-2927
Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-01f8bae1aea8f4eb8) in /home/ubuntu/workspace/docker-py_PR-2927
Running on EC2 (managed-agents) - ubuntu-2004-cgroup1 (i-0c1828f05624e41eb) in /home/ubuntu/workspace/docker-py_PR-2927
[Pipeline] {
[Pipeline] {
[Pipeline] {
[Pipeline] withDockerRegistry
[Pipeline] withDockerRegistry
[Pipeline] withDockerRegistry
$ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/
$ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/
$ 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-2927@tmp/e064742b-1757-43a7-8cff-de15a9c547d6/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
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-2927@tmp/0c8651ce-ab26-44c9-ba7b-78921a12cefe/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] {
[Pipeline] wrap
[Pipeline] wrap
[Pipeline] {
[Pipeline] {
[Pipeline] wrap
[Pipeline] wrap
[Pipeline] {
[Pipeline] {
[Pipeline] echo
14:54:35 cleanWorkspace: Ensuring workspace is owned by ubuntu
[Pipeline] echo
14:54:35 chowning workspace
[Pipeline] sh
[Pipeline] echo
14:54:35 cleanWorkspace: Ensuring workspace is owned by ubuntu
[Pipeline] echo
14:54:35 chowning workspace
[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-2927@tmp/9d13f08a-00ab-4ced-9f68-a2118e7e6dfd/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
14:54:35 cleanWorkspace: Ensuring workspace is owned by ubuntu
[Pipeline] echo
14:54:35 chowning workspace
[Pipeline] sh
14:54:35 + pwd
14:54:35 + id -u
14:54:35 + id -g
14:54:35 + docker run --rm -v /home/ubuntu/workspace/docker-py_PR-2927:/workspace busybox chown -R 1000:1000 /workspace
14:54:35 + pwd
14:54:35 + id -u
14:54:35 + id -g
14:54:35 + docker run --rm -v /home/ubuntu/workspace/docker-py_PR-2927:/workspace busybox chown -R 1000:1000 /workspace
14:54:35 + pwd
14:54:35 + id -u
14:54:35 + id -g
14:54:35 + docker run --rm -v /home/ubuntu/workspace/docker-py_PR-2927:/workspace busybox chown -R 1000:1000 /workspace
14:54:35 Unable to find image 'busybox:latest' locally
14:54:35 latest: Pulling from library/busybox
14:54:35 3cb635b06aa2: Pulling fs layer
14:54:35 3cb635b06aa2: Verifying Checksum
14:54:35 3cb635b06aa2: Download complete
14:54:35 3cb635b06aa2: Pull complete
14:54:35 Digest: sha256:b5cfd4befc119a590ca1a81d6bb0fa1fb19f1fbebd0397f25fae164abe1e8a6a
14:54:35 Status: Downloaded newer image for busybox:latest
[Pipeline] echo
14:54:36 Removing all docker containers
[Pipeline] sh
[Pipeline] echo
14:54:36 Removing all docker containers
[Pipeline] sh
14:54:36 + docker container ls -aq
[Pipeline] echo
14:54:36 Docker containers have been removed
[Pipeline] echo
14:54:36 cleanWorkspace: Removing existing workspace
[Pipeline] deleteDir
[Pipeline] echo
14:54:36 cleanWorkspace: Workspace is clean.
[Pipeline] stage
[Pipeline] { (test python=py3.7 / docker=19.03.12)
[Pipeline] checkout
14:54:36 The recommended git tool is: git
14:54:36 + docker container ls -aq
[Pipeline] echo
14:54:36 Docker containers have been removed
[Pipeline] echo
14:54:36 cleanWorkspace: Removing existing workspace
[Pipeline] deleteDir
[Pipeline] echo
14:54:36 cleanWorkspace: Workspace is clean.
[Pipeline] stage
[Pipeline] { (test python=py3.7 / docker=19.03.13)
[Pipeline] checkout
14:54:36 using credential docker-jenkins-github-credentials
14:54:36 The recommended git tool is: git
14:54:36 using credential docker-jenkins-github-credentials
14:54:36 Cloning the remote Git repository
14:54:36 Cloning with configured refspecs honoured and without tags
14:54:36 Cloning the remote Git repository
14:54:36 Cloning with configured refspecs honoured and without tags
[Pipeline] echo
14:54:37 Removing all docker containers
[Pipeline] sh
14:54:37 + docker container ls -aq
[Pipeline] echo
14:54:37 Docker containers have been removed
[Pipeline] echo
14:54:37 cleanWorkspace: Removing existing workspace
[Pipeline] deleteDir
[Pipeline] echo
14:54:37 cleanWorkspace: Workspace is clean.
[Pipeline] stage
[Pipeline] { (test python=py3.7 / docker=20.10.12)
[Pipeline] checkout
14:54:37 The recommended git tool is: git
Cloning repository https://github.com/docker/docker-py.git
 > git init /home/ubuntu/workspace/docker-py_PR-2927 # 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/2927/head:refs/remotes/origin/PR-2927 +refs/heads/master:refs/remotes/origin/master # timeout=10
Cloning repository https://github.com/docker/docker-py.git
 > git init /home/ubuntu/workspace/docker-py_PR-2927 # 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/2927/head:refs/remotes/origin/PR-2927 +refs/heads/master:refs/remotes/origin/master # timeout=10
14:54:38 Fetching without tags
14:54:38 Fetching without tags
14:54:38 Merging remotes/origin/master commit a48a5a9647761406d66e8271f19fab7fa0c5f582 into PR head commit e7f1b4e48ab6a5c069ef52002051d97340975335
14:54:38 Merging remotes/origin/master commit a48a5a9647761406d66e8271f19fab7fa0c5f582 into PR head commit e7f1b4e48ab6a5c069ef52002051d97340975335
14:54:38 Merge succeeded, producing e7f1b4e48ab6a5c069ef52002051d97340975335
14:54:38 Checking out Revision e7f1b4e48ab6a5c069ef52002051d97340975335 (PR-2927)
14:54:38 Merge succeeded, producing e7f1b4e48ab6a5c069ef52002051d97340975335
14:54:38 Checking out Revision e7f1b4e48ab6a5c069ef52002051d97340975335 (PR-2927)
14:54:38 Commit message: "Add unit test."
14:54:38 Commit message: "Add unit test."
[Pipeline] withDockerRegistry
 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10
 > git config --add remote.origin.fetch +refs/pull/2927/head:refs/remotes/origin/PR-2927 # timeout=10
 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10
 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10
Fetching upstream changes from https://github.com/docker/docker-py.git
using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials
 > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2927/head:refs/remotes/origin/PR-2927 +refs/heads/master:refs/remotes/origin/master # timeout=10
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e7f1b4e48ab6a5c069ef52002051d97340975335 # timeout=10
 > git remote # timeout=10
 > git config --get remote.origin.url # timeout=10
using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials
 > git merge a48a5a9647761406d66e8271f19fab7fa0c5f582 # timeout=10
 > git rev-parse HEAD^{commit} # timeout=10
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e7f1b4e48ab6a5c069ef52002051d97340975335 # timeout=10
[Pipeline] withDockerRegistry
 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10
 > git config --add remote.origin.fetch +refs/pull/2927/head:refs/remotes/origin/PR-2927 # timeout=10
 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10
 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10
Fetching upstream changes from https://github.com/docker/docker-py.git
using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials
 > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2927/head:refs/remotes/origin/PR-2927 +refs/heads/master:refs/remotes/origin/master # timeout=10
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e7f1b4e48ab6a5c069ef52002051d97340975335 # timeout=10
 > git remote # timeout=10
 > git config --get remote.origin.url # timeout=10
using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials
 > git merge a48a5a9647761406d66e8271f19fab7fa0c5f582 # timeout=10
 > git rev-parse HEAD^{commit} # timeout=10
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e7f1b4e48ab6a5c069ef52002051d97340975335 # timeout=10
[Pipeline] {
[Pipeline] sh
[Pipeline] {
[Pipeline] sh
14:54:39 + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335 py.test -v -rxs --cov=docker tests/unit
14:54:39 Unable to find image 'dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335' locally
14:54:39 py3-e7f1b4e48ab6a5c069ef52002051d97340975335: Pulling from dockerpinata/docker-py
14:54:39 0e29546d541c: Already exists
14:54:39 9b829c73b52b: Already exists
14:54:39 cb5b7ae36172: Already exists
14:54:39 6494e4811622: Already exists
14:54:39 6f9f74896dfa: Already exists
14:54:39 fcb6d5f7c986: Already exists
14:54:39 7a72d131c196: Already exists
14:54:39 c4221d178521: Already exists
14:54:39 71d5c5b5a91f: Already exists
14:54:39 1419e9b9b34b: Pulling fs layer
14:54:39 15dc3661448f: Pulling fs layer
14:54:39 320717784bcc: Pulling fs layer
14:54:39 2bd939cfa10f: Pulling fs layer
14:54:39 b3b1ef91a6b4: Pulling fs layer
14:54:39 e49c264d9e04: Pulling fs layer
14:54:39 160fe9f1fa90: Pulling fs layer
14:54:39 56f2ac402a20: Pulling fs layer
14:54:39 58a149df53fc: Pulling fs layer
14:54:39 8b90de945a02: Pulling fs layer
14:54:39 f2f551e62a04: Pulling fs layer
14:54:39 d1e4ee26fd1f: Pulling fs layer
14:54:39 c331f9b38001: Pulling fs layer
14:54:39 484f945ab2e4: Pulling fs layer
14:54:39 992ffe283cbb: Pulling fs layer
14:54:39 fc6d15568bb0: Pulling fs layer
14:54:39 4107775b427e: Pulling fs layer
14:54:39 2bd939cfa10f: Waiting
14:54:39 b3b1ef91a6b4: Waiting
14:54:39 e49c264d9e04: Waiting
14:54:39 160fe9f1fa90: Waiting
14:54:39 56f2ac402a20: Waiting
14:54:39 58a149df53fc: Waiting
14:54:39 8b90de945a02: Waiting
14:54:39 f2f551e62a04: Waiting
14:54:39 d1e4ee26fd1f: Waiting
14:54:39 c331f9b38001: Waiting
14:54:39 484f945ab2e4: Waiting
14:54:39 992ffe283cbb: Waiting
14:54:39 fc6d15568bb0: Waiting
14:54:39 4107775b427e: Waiting
14:54:39 + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335 py.test -v -rxs --cov=docker tests/unit
14:54:39 1419e9b9b34b: Download complete
14:54:39 320717784bcc: Verifying Checksum
14:54:39 320717784bcc: Download complete
14:54:39 b3b1ef91a6b4: Verifying Checksum
14:54:39 b3b1ef91a6b4: Download complete
14:54:39 1419e9b9b34b: Pull complete
14:54:39 2bd939cfa10f: Verifying Checksum
14:54:39 2bd939cfa10f: Download complete
14:54:39 160fe9f1fa90: Verifying Checksum
14:54:39 160fe9f1fa90: Download complete
14:54:39 e49c264d9e04: Verifying Checksum
14:54:39 e49c264d9e04: Download complete
14:54:39 15dc3661448f: Verifying Checksum
14:54:39 15dc3661448f: Download complete
14:54:39 56f2ac402a20: Verifying Checksum
14:54:39 56f2ac402a20: Download complete
14:54:39 58a149df53fc: Verifying Checksum
14:54:39 58a149df53fc: Download complete
14:54:39 f2f551e62a04: Verifying Checksum
14:54:39 f2f551e62a04: Download complete
14:54:39 8b90de945a02: Verifying Checksum
14:54:39 8b90de945a02: Download complete
14:54:39 484f945ab2e4: Verifying Checksum
14:54:39 484f945ab2e4: Download complete
14:54:39 d1e4ee26fd1f: Verifying Checksum
14:54:39 d1e4ee26fd1f: Download complete
14:54:39 fc6d15568bb0: Verifying Checksum
14:54:39 fc6d15568bb0: Download complete
$ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/docker-py_PR-2927@tmp/da4a7423-1586-4998-b318-f3a2e75b1574/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
$ 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-2927@tmp/b21d0758-8e30-4800-9fb0-e19b31ebf81b/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
14:54:39 992ffe283cbb: Verifying Checksum
14:54:39 992ffe283cbb: Download complete
14:54:39 4107775b427e: Verifying Checksum
14:54:39 4107775b427e: Download complete
14:54:39 c331f9b38001: Verifying Checksum
14:54:39 c331f9b38001: Download complete
14:54:39 15dc3661448f: Pull complete
14:54:39 320717784bcc: Pull complete
14:54:40 using credential docker-jenkins-github-credentials
14:54:40 Cloning the remote Git repository
14:54:40 Cloning with configured refspecs honoured and without tags
14:54:40 ============================= test session starts ==============================
14:54:40 platform linux -- Python 3.7.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /usr/local/bin/python
14:54:40 cachedir: .pytest_cache
14:54:40 rootdir: /src, configfile: pytest.ini
14:54:40 plugins: cov-3.0.0, timeout-2.0.1
14:54:40 2bd939cfa10f: Pull complete
14:54:40 b3b1ef91a6b4: Pull complete
14:54:40 e49c264d9e04: Pull complete
14:54:40 160fe9f1fa90: Pull complete
14:54:40 56f2ac402a20: Pull complete
14:54:40 58a149df53fc: Pull complete
14:54:40 8b90de945a02: Pull complete
14:54:40 f2f551e62a04: Pull complete
14:54:40 d1e4ee26fd1f: Pull complete
Cloning repository https://github.com/docker/docker-py.git
 > git init /home/ubuntu/workspace/docker-py_PR-2927 # 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/2927/head:refs/remotes/origin/PR-2927 +refs/heads/master:refs/remotes/origin/master # timeout=10
14:54:41 c331f9b38001: Pull complete
14:54:41 484f945ab2e4: Pull complete
14:54:41 Fetching without tags
14:54:41 992ffe283cbb: Pull complete
 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10
 > git config --add remote.origin.fetch +refs/pull/2927/head:refs/remotes/origin/PR-2927 # timeout=10
 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10
 > git config remote.origin.url https://github.com/docker/docker-py.git # timeout=10
Fetching upstream changes from https://github.com/docker/docker-py.git
using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials
 > git fetch --no-tags --force --progress -- https://github.com/docker/docker-py.git +refs/pull/2927/head:refs/remotes/origin/PR-2927 +refs/heads/master:refs/remotes/origin/master # timeout=10
14:54:41 Merging remotes/origin/master commit a48a5a9647761406d66e8271f19fab7fa0c5f582 into PR head commit e7f1b4e48ab6a5c069ef52002051d97340975335
14:54:42 Merge succeeded, producing e7f1b4e48ab6a5c069ef52002051d97340975335
14:54:42 Checking out Revision e7f1b4e48ab6a5c069ef52002051d97340975335 (PR-2927)
14:54:42 collecting ... collected 572 items
14:54:42 
14:54:42 tests/unit/api_build_test.py::BuildTest::test_build_container PASSED     [  0%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context PASSED [  0%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context_gzip PASSED [  0%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_build_container_invalid_container_limits PASSED [  0%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_build_container_pull PASSED [  0%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_build_container_with_container_limits PASSED [  1%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_build_container_with_named_dockerfile PASSED [  1%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_build_remote_with_registry_auth PASSED [  1%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_process_dockerfile PASSED  [  1%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_process_dockerfile_win_longpath_prefix SKIPPED [  1%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_auth_configs PASSED [  1%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_no_auth_configs PASSED [  2%]
14:54:42 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_empty_dict_and_auth_configs PASSED [  2%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container PASSED [  2%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_none PASSED [  2%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_privileged PASSED [  2%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_regression_573 PASSED [  2%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_ro PASSED [  3%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_rw PASSED [  3%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_dict_instead_of_id PASSED [  3%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links PASSED [  3%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links_as_list_of_tuples PASSED [  3%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf PASSED [  4%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf_compat PASSED [  4%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_multiple_links PASSED [  4%]
14:54:42 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_port_binds PASSED [  4%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container PASSED [  4%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_privileged PASSED [  4%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_added_capabilities PASSED [  5%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_aliases PASSED [  5%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds PASSED [  5%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_list PASSED [  5%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode PASSED [  5%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode_and_ro_error PASSED [  5%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_ro PASSED [  6%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_rw PASSED [  6%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_cgroup_parent PASSED [  6%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_device_requests PASSED [  6%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_devices PASSED [  6%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_dropped_capabilities PASSED [  6%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_entrypoint PASSED [  7%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpu_shares PASSED [  7%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpus PASSED [  7%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset PASSED [  7%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset_mems PASSED [  7%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_dict PASSED [  8%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_list PASSED [  8%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links PASSED [  8%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links_as_list_of_tuples PASSED [  8%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf PASSED [  8%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf_compat PASSED [  8%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mac_address PASSED [  9%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_int PASSED [  9%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string PASSED [  9%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_g_unit PASSED [  9%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_k_unit PASSED [  9%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_m_unit PASSED [  9%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_wrong_value PASSED [ 10%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_multiple_links PASSED [ 10%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_named_volume PASSED [ 10%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_platform FAILED [ 10%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_port_binds PASSED [ 10%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_ports PASSED [ 11%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_restart_policy PASSED [ 11%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stdin_open PASSED [ 11%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stop_signal PASSED [ 11%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_sysctl PASSED [ 11%]
14:54:42 fc6d15568bb0: Pull complete
14:54:42 4107775b427e: Pull complete
14:54:42 Digest: sha256:040d66794e14c656fc23c198ecebd868aeadc4b27292d3dae9f931e10a17c30c
14:54:42 Status: Downloaded newer image for dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_dict PASSED [ 11%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_list PASSED [ 12%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_unicode_envvars PASSED [ 12%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_volume_string PASSED [ 12%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_working_dir PASSED [ 12%]
14:54:42 tests/unit/api_container_test.py::CreateContainerTest::test_create_named_container PASSED [ 12%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_container_stats PASSED [ 12%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 13%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_container_top_with_psargs PASSED [ 13%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_container_update PASSED [ 13%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_diff PASSED        [ 13%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_diff_with_dict_instead_of_id PASSED [ 13%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_export PASSED      [ 13%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_export_with_dict_instead_of_id PASSED [ 14%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_inspect_container PASSED [ 14%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_inspect_container_undefined_id PASSED [ 14%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_kill_container PASSED [ 14%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_dict_instead_of_id PASSED [ 14%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_signal PASSED [ 15%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_list_containers PASSED [ 15%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_following PASSED [ 15%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_following_backwards PASSED [ 15%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_since PASSED   [ 15%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_since_with_datetime PASSED [ 15%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 16%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_streaming PASSED [ 16%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_streaming_and_following PASSED [ 16%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_tail PASSED    [ 16%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_log_tty PASSED     [ 16%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_logs PASSED        [ 16%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 17%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_pause_container PASSED [ 17%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_port PASSED        [ 17%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_remove_container PASSED [ 17%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_remove_container_with_dict_instead_of_id PASSED [ 17%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_rename_container PASSED [ 18%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_resize_container PASSED [ 18%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_restart_container PASSED [ 18%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_restart_container_with_dict_instead_of_id PASSED [ 18%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_stop_container PASSED [ 18%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_stop_container_with_dict_instead_of_id PASSED [ 18%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_unpause_container PASSED [ 19%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_wait PASSED        [ 19%]
14:54:42 tests/unit/api_container_test.py::ContainerTest::test_wait_with_dict_instead_of_id PASSED [ 19%]
14:54:42 tests/unit/api_exec_test.py::ExecTest::test_exec_create PASSED           [ 19%]
14:54:42 tests/unit/api_exec_test.py::ExecTest::test_exec_inspect PASSED          [ 19%]
14:54:42 tests/unit/api_exec_test.py::ExecTest::test_exec_resize PASSED           [ 19%]
14:54:42 tests/unit/api_exec_test.py::ExecTest::test_exec_start PASSED            [ 20%]
14:54:42 tests/unit/api_exec_test.py::ExecTest::test_exec_start_detached PASSED   [ 20%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_commit PASSED              [ 20%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_get_image PASSED           [ 20%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_image_history PASSED       [ 20%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_image_ids PASSED           [ 20%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_image_viz PASSED           [ 21%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_images PASSED              [ 21%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_images_filters PASSED      [ 21%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_images_name PASSED         [ 21%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_images_quiet PASSED        [ 21%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_import_image PASSED        [ 22%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_import_image_from_bytes PASSED [ 22%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_import_image_from_image PASSED [ 22%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_inspect_image PASSED       [ 22%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_inspect_image_undefined_id PASSED [ 22%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_load_image PASSED          [ 22%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_load_image_quiet PASSED    [ 23%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_pull PASSED                [ 23%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_pull_stream PASSED         [ 23%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_push_image PASSED          [ 23%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_push_image_stream PASSED   [ 23%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_push_image_with_auth PASSED [ 23%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_push_image_with_tag PASSED [ 24%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_remove_image PASSED        [ 24%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_tag_image PASSED           [ 24%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_tag_image_force PASSED     [ 24%]
14:54:42 tests/unit/api_image_test.py::ImageTest::test_tag_image_tag PASSED       [ 24%]
14:54:42 tests/unit/api_network_test.py::NetworkTest::test_connect_container_to_network PASSED [ 25%]
14:54:42 tests/unit/api_network_test.py::NetworkTest::test_create_network PASSED  [ 25%]
14:54:42 tests/unit/api_network_test.py::NetworkTest::test_disconnect_container_from_network PASSED [ 25%]
14:54:42 tests/unit/api_network_test.py::NetworkTest::test_inspect_network PASSED [ 25%]
14:54:42 tests/unit/api_network_test.py::NetworkTest::test_list_networks PASSED   [ 25%]
14:54:42 tests/unit/api_network_test.py::NetworkTest::test_remove_network PASSED  [ 25%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_auto_retrieve_server_version PASSED [ 26%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_create_host_config_secopt PASSED [ 26%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_ctor PASSED                  [ 26%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_events PASSED                [ 26%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_events_with_filters PASSED   [ 26%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_events_with_since_until PASSED [ 26%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_info PASSED                  [ 27%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_login PASSED                 [ 27%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_remove_link PASSED           [ 27%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_retrieve_server_version PASSED [ 27%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_search PASSED                [ 27%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_stream_helper_decoding PASSED [ 27%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http PASSED [ 28%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http_unix_triple_slash PASSED [ 28%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_tcp PASSED [ 28%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix PASSED [ 28%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix_triple_slash PASSED [ 28%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_invalid_resource PASSED  [ 29%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_no_resource PASSED       [ 29%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_unversioned_api PASSED   [ 29%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_url_valid_resource PASSED    [ 29%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_version PASSED               [ 29%]
14:54:42 tests/unit/api_test.py::DockerApiTest::test_version_no_api_version PASSED [ 29%]
14:54:42 tests/unit/api_test.py::UnixSocketStreamTest::test_early_stream_response PASSED [ 30%]
14:54:42 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty PASSED [ 30%]
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e7f1b4e48ab6a5c069ef52002051d97340975335 # timeout=10
 > git remote # timeout=10
 > git config --get remote.origin.url # timeout=10
using GIT_ASKPASS to set credentials docker-jenkins GitHub credentials
 > git merge a48a5a9647761406d66e8271f19fab7fa0c5f582 # timeout=10
 > git rev-parse HEAD^{commit} # timeout=10
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e7f1b4e48ab6a5c069ef52002051d97340975335 # timeout=10
14:54:43 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty_demux PASSED [ 30%]
14:54:43 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty PASSED [ 30%]
14:54:43 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty_demux PASSED [ 30%]
14:54:43 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty PASSED [ 30%]
14:54:43 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty_demux PASSED [ 31%]
14:54:44 ============================= test session starts ==============================
14:54:44 platform linux -- Python 3.7.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /usr/local/bin/python
14:54:44 cachedir: .pytest_cache
14:54:44 rootdir: /src, configfile: pytest.ini
14:54:44 plugins: cov-3.0.0, timeout-2.0.1
14:54:44 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty PASSED [ 31%]
14:54:44 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty_demux PASSED [ 31%]
14:54:44 tests/unit/api_test.py::UserAgentTest::test_custom_user_agent PASSED     [ 31%]
14:54:44 tests/unit/api_test.py::UserAgentTest::test_default_user_agent PASSED    [ 31%]
14:54:44 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout PASSED [ 31%]
14:54:44 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout2 PASSED [ 32%]
14:54:44 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timout_non_blocking PASSED [ 32%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_create_volume PASSED     [ 32%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_invalid_opts_type PASSED [ 32%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_driver PASSED [ 32%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_invalid_labels PASSED [ 33%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_labels PASSED [ 33%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_no_specified_name PASSED [ 33%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_inspect_volume PASSED    [ 33%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_list_volumes PASSED      [ 33%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_list_volumes_and_filters PASSED [ 33%]
14:54:44 tests/unit/api_volume_test.py::VolumeTest::test_remove_volume PASSED     [ 34%]
14:54:44 tests/unit/auth_test.py::RegressionTest::test_803_urlsafe_encode PASSED  [ 34%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_hub_index_library_image PASSED [ 34%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_legacy_hub_index_library_image PASSED [ 34%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_invalid_index_name PASSED [ 34%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_dotted_hub_library_image PASSED [ 34%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_image PASSED [ 35%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 35%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost PASSED [ 35%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost_with_username PASSED [ 35%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port PASSED [ 35%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port_and_username PASSED [ 36%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry PASSED [ 36%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 36%]
14:54:44 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_username PASSED [ 36%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_auth_with_empty_credstore_and_auth_dict PASSED [ 36%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_explicit_none PASSED [ 36%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_registry PASSED [ 37%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_fully_explicit PASSED [ 37%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 37%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_legacy_config PASSED [ 37%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_match PASSED [ 37%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path PASSED [ 37%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_trailing_slash PASSED [ 38%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 38%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 38%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_protocol PASSED [ 38%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_path_wrong_proto PASSED [ 38%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_hub PASSED [ 38%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_legacy_hub PASSED [ 39%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 39%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_library_image PASSED [ 39%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_private_registry PASSED [ 39%]
14:54:44 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_unauthenticated_registry PASSED [ 39%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env PASSED [ 40%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_utf8 PASSED [ 40%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 40%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_config_identity_token PASSED [ 40%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_config_invalid_auth_dict PASSED [ 40%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 40%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_config_unknown_keys PASSED [ 41%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_config_with_random_name PASSED [ 41%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED    [ 41%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_legacy_config PASSED  [ 41%]
14:54:44 tests/unit/auth_test.py::LoadConfigTest::test_load_modern_json_config PASSED [ 41%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_3_sources PASSED [ 41%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_only PASSED [ 42%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 42%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 42%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_auths_entries PASSED [ 42%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_credhelpers_only PASSED [ 42%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_auths_entry PASSED [ 43%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_credhelper PASSED [ 43%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 43%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 43%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_no_default PASSED [ 43%]
14:54:44 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_with_plain_dict PASSED [ 43%]
14:54:44 tests/unit/client_test.py::ClientTest::test_call_api_client_method PASSED [ 44%]
14:54:44 tests/unit/client_test.py::ClientTest::test_call_containers PASSED       [ 44%]
14:54:44 tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 44%]
14:54:44 tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 44%]
14:54:44 tests/unit/client_test.py::ClientTest::test_events PASSED                [ 44%]
14:54:44 tests/unit/client_test.py::ClientTest::test_info PASSED                  [ 44%]
14:54:44 tests/unit/client_test.py::ClientTest::test_ping PASSED                  [ 45%]
14:54:44 tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED        [ 45%]
14:54:44 tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 45%]
14:54:44 tests/unit/client_test.py::ClientTest::test_version PASSED               [ 45%]
14:54:44 tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_unix PASSED [ 45%]
14:54:44 tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_win SKIPPED [ 45%]
14:54:44 tests/unit/client_test.py::FromEnvTest::test_from_env PASSED             [ 46%]
14:54:44 tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 46%]
14:54:44 tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 46%]
14:54:44 tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 46%]
14:54:44 tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_unix PASSED [ 46%]
14:54:44 tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_win SKIPPED [ 47%]
14:54:44 tests/unit/context_test.py::BaseContextTest::test_context_inspect_without_params PASSED [ 47%]
14:54:44 tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 47%]
14:54:44 tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 47%]
14:54:44 tests/unit/context_test.py::BaseContextTest::test_get_current_context PASSED [ 47%]
14:54:44 tests/unit/context_test.py::BaseContextTest::test_https_host PASSED      [ 47%]
14:54:44 tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_linux PASSED [ 48%]
14:54:44 tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_windows SKIPPED [ 48%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 48%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 48%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_percent_types PASSED [ 48%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_mem_swappiness PASSED [ 48%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_nano_cpus_types PASSED [ 49%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 49%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 49%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 49%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_count PASSED [ 49%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_percent PASSED [ 50%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_period PASSED [ 50%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 50%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 50%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 50%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_runtime PASSED [ 50%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_dns_opt PASSED [ 51%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_isolation PASSED [ 51%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 51%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 51%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 51%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_kill_disable PASSED [ 51%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_score_adj PASSED [ 52%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 52%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 52%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 52%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 52%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_uts PASSED [ 52%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_volume_driver PASSED [ 53%]
14:54:44 tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 53%]
14:54:44 tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 53%]
14:54:44 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 53%]
14:54:44 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 53%]
14:54:44 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_obj_ulimit PASSED [ 54%]
14:54:44 tests/unit/dockertypes_test.py::UlimitTest::test_ulimit_invalid_type PASSED [ 54%]
14:54:44 tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 54%]
14:54:44 tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 54%]
14:54:44 tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 54%]
14:54:44 tests/unit/dockertypes_test.py::EndpointConfigTest::test_create_endpoint_config_with_aliases PASSED [ 54%]
14:54:44 tests/unit/dockertypes_test.py::IPAMConfigTest::test_create_ipam_config PASSED [ 55%]
14:54:44 tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 55%]
14:54:44 tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 55%]
14:54:45 tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%]
14:54:45 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas PASSED [ 55%]
14:54:45 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas_0 PASSED [ 55%]
14:54:45 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_simple PASSED [ 56%]
14:54:45 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED  [ 56%]
14:54:45 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows XFAIL [ 56%]
14:54:45 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_named_volume PASSED [ 56%]
14:54:45 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_invalid PASSED [ 56%]
14:54:45 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_no_source PASSED [ 56%]
14:54:45 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_ro PASSED [ 57%]
14:54:45 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 57%]
14:54:45 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_short_form PASSED [ 57%]
14:54:45 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_invalid PASSED [ 57%]
14:54:45 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_multiple PASSED [ 57%]
14:54:45 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_no_protocol_and_mode PASSED [ 58%]
14:54:45 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_simple PASSED [ 58%]
14:54:45 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 58%]
14:54:45 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol_and_mode PASSED [ 58%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_api_error_is_caught_by_dockerexception PASSED [ 58%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_create_error_from_exception PASSED [ 58%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_client_error_400 PASSED [ 59%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 59%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED        [ 59%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_error_400 PASSED        [ 59%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_error_500 PASSED        [ 59%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_200 PASSED [ 59%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_300 PASSED [ 60%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 60%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 60%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_status_code_200 PASSED     [ 60%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_status_code_400 PASSED     [ 60%]
14:54:45 tests/unit/errors_test.py::APIErrorTest::test_status_code_500 PASSED     [ 61%]
14:54:45 tests/unit/errors_test.py::ContainerErrorTest::test_container_with_stderr PASSED [ 61%]
14:54:45 tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 61%]
14:54:45 tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 61%]
14:54:45 tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_single PASSED [ 61%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create PASSED [ 61%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_container_args PASSED [ 62%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_with_image_object PASSED [ 62%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_get PASSED [ 62%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_list PASSED [ 62%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_list_ignore_removed PASSED [ 62%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run PASSED [ 62%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_detach PASSED [ 63%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_pull PASSED [ 63%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_remove PASSED [ 63%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 63%]
14:54:45 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 63%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED  [ 63%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_commit PASSED  [ 64%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_diff PASSED    [ 64%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_exec_run PASSED [ 64%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure PASSED [ 64%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_export PASSED  [ 64%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 65%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_image PASSED   [ 65%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_kill PASSED    [ 65%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_labels PASSED  [ 65%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED    [ 65%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_name PASSED    [ 65%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_pause PASSED   [ 66%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_put_archive PASSED [ 66%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_remove PASSED  [ 66%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_rename PASSED  [ 66%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED  [ 66%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 66%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_start PASSED   [ 67%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_stats PASSED   [ 67%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_status PASSED  [ 67%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED    [ 67%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_top PASSED     [ 67%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 68%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_update PASSED  [ 68%]
14:54:45 tests/unit/models_containers_test.py::ContainerTest::test_wait PASSED    [ 68%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_build PASSED [ 68%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED   [ 68%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 68%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_list PASSED  [ 69%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_load PASSED  [ 69%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_pull PASSED  [ 69%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 69%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 69%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 69%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_push PASSED  [ 70%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_remove PASSED [ 70%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_search PASSED [ 70%]
14:54:45 tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 70%]
14:54:45 tests/unit/models_images_test.py::ImageTest::test_history PASSED         [ 70%]
14:54:45 tests/unit/models_images_test.py::ImageTest::test_save PASSED            [ 70%]
14:54:45 tests/unit/models_images_test.py::ImageTest::test_short_id PASSED        [ 71%]
14:54:45 tests/unit/models_images_test.py::ImageTest::test_tag PASSED             [ 71%]
14:54:45 tests/unit/models_images_test.py::ImageTest::test_tags PASSED            [ 71%]
14:54:45 tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 71%]
14:54:45 collecting ... collected 572 items
14:54:45 
14:54:45 tests/unit/api_build_test.py::BuildTest::test_build_container PASSED     [  0%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context PASSED [  0%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context_gzip PASSED [  0%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_build_container_invalid_container_limits PASSED [  0%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_build_container_pull PASSED [  0%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_build_container_with_container_limits PASSED [  1%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_build_container_with_named_dockerfile PASSED [  1%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_build_remote_with_registry_auth PASSED [  1%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_process_dockerfile PASSED  [  1%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_process_dockerfile_win_longpath_prefix SKIPPED [  1%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_auth_configs PASSED [  1%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_no_auth_configs PASSED [  2%]
14:54:45 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_empty_dict_and_auth_configs PASSED [  2%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container PASSED [  2%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_none PASSED [  2%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_privileged PASSED [  2%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_regression_573 PASSED [  2%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_ro PASSED [  3%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_rw PASSED [  3%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_dict_instead_of_id PASSED [  3%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links PASSED [  3%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links_as_list_of_tuples PASSED [  3%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf PASSED [  4%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf_compat PASSED [  4%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_multiple_links PASSED [  4%]
14:54:45 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_port_binds PASSED [  4%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container PASSED [  4%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_privileged PASSED [  4%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_added_capabilities PASSED [  5%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_aliases PASSED [  5%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds PASSED [  5%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_list PASSED [  5%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode PASSED [  5%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode_and_ro_error PASSED [  5%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_ro PASSED [  6%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_rw PASSED [  6%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_cgroup_parent PASSED [  6%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_device_requests PASSED [  6%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_devices PASSED [  6%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_dropped_capabilities PASSED [  6%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_entrypoint PASSED [  7%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpu_shares PASSED [  7%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpus PASSED [  7%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset PASSED [  7%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset_mems PASSED [  7%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_dict PASSED [  8%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_list PASSED [  8%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links PASSED [  8%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links_as_list_of_tuples PASSED [  8%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf PASSED [  8%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf_compat PASSED [  8%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mac_address PASSED [  9%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_int PASSED [  9%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string PASSED [  9%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_g_unit PASSED [  9%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_k_unit PASSED [  9%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_m_unit PASSED [  9%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_wrong_value PASSED [ 10%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_multiple_links PASSED [ 10%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_named_volume PASSED [ 10%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_platform FAILED [ 10%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_port_binds PASSED [ 10%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_ports PASSED [ 11%]
14:54:45 tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 71%]
14:54:45 tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 72%]
14:54:45 tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED     [ 72%]
14:54:45 tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED  [ 72%]
14:54:45 tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED      [ 72%]
14:54:45 tests/unit/models_resources_test.py::ModelTest::test_hash PASSED         [ 72%]
14:54:45 tests/unit/models_resources_test.py::ModelTest::test_reload PASSED       [ 72%]
14:54:45 tests/unit/models_secrets_test.py::CreateServiceTest::test_secrets_repr PASSED [ 73%]
14:54:45 tests/unit/models_services_test.py::CreateServiceKwargsTest::test_get_create_service_kwargs PASSED [ 73%]
14:54:45 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_hostname_prefix_trim PASSED [ 73%]
14:54:45 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 73%]
14:54:45 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 73%]
14:54:45 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 73%]
14:54:45 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_user_and_hostname PASSED [ 74%]
14:54:45 tests/unit/ssladapter_test.py::SSLAdapterTest::test_only_uses_tls PASSED [ 74%]
14:54:45 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure PASSED [ 74%]
14:54:45 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 74%]
14:54:45 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 74%]
14:54:45 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 75%]
14:54:45 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success PASSED [ 75%]
14:54:45 tests/unit/swarm_test.py::SwarmTest::test_join_swarm PASSED              [ 75%]
14:54:45 tests/unit/swarm_test.py::SwarmTest::test_join_swarm_no_listen_address_takes_default PASSED [ 75%]
14:54:45 tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED             [ 75%]
14:54:45 tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED     [ 75%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory PASSED  [ 76%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_single_exception PASSED [ 76%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception PASSED [ 76%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 76%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 76%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 76%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard PASSED [ 77%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard_with_exception PASSED [ 77%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_custom_dockerfile PASSED [ 77%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 77%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 77%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 77%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_include_wildcard PASSED [ 78%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_last_line_precedence PASSED [ 78%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_no_dupes PASSED   [ 78%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 78%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 78%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 79%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_and_double_wildcard PASSED [ 79%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename PASSED [ 79%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_leading_dot_slash PASSED [ 79%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 79%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 79%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename_leading_slash PASSED [ 80%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_wildcard_filename PASSED [ 80%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_with_path_traversal PASSED [ 80%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory PASSED [ 80%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 80%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 80%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_exclude PASSED [ 81%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_end PASSED [ 81%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_start PASSED [ 81%]
14:54:45 Commit message: "Add unit test."
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_restart_policy PASSED [ 11%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stdin_open PASSED [ 11%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stop_signal PASSED [ 11%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_sysctl PASSED [ 11%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_dict PASSED [ 11%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_list PASSED [ 12%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_unicode_envvars PASSED [ 12%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_volume_string PASSED [ 12%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_working_dir PASSED [ 12%]
14:54:45 tests/unit/api_container_test.py::CreateContainerTest::test_create_named_container PASSED [ 12%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_container_stats PASSED [ 12%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 13%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_container_top_with_psargs PASSED [ 13%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_container_update PASSED [ 13%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_diff PASSED        [ 13%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_diff_with_dict_instead_of_id PASSED [ 13%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_export PASSED      [ 13%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_export_with_dict_instead_of_id PASSED [ 14%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_inspect_container PASSED [ 14%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_inspect_container_undefined_id PASSED [ 14%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_kill_container PASSED [ 14%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_dict_instead_of_id PASSED [ 14%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_signal PASSED [ 15%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_list_containers PASSED [ 15%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_following PASSED [ 15%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_following_backwards PASSED [ 15%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_since PASSED   [ 15%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_since_with_datetime PASSED [ 15%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 16%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_streaming PASSED [ 16%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_streaming_and_following PASSED [ 16%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_tail PASSED    [ 16%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_log_tty PASSED     [ 16%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_logs PASSED        [ 16%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 17%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_pause_container PASSED [ 17%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_port PASSED        [ 17%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_remove_container PASSED [ 17%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_remove_container_with_dict_instead_of_id PASSED [ 17%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_rename_container PASSED [ 18%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_resize_container PASSED [ 18%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_restart_container PASSED [ 18%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_restart_container_with_dict_instead_of_id PASSED [ 18%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_stop_container PASSED [ 18%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_stop_container_with_dict_instead_of_id PASSED [ 18%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_unpause_container PASSED [ 19%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_wait PASSED        [ 19%]
14:54:45 tests/unit/api_container_test.py::ContainerTest::test_wait_with_dict_instead_of_id PASSED [ 19%]
14:54:45 tests/unit/api_exec_test.py::ExecTest::test_exec_create PASSED           [ 19%]
14:54:45 tests/unit/api_exec_test.py::ExecTest::test_exec_inspect PASSED          [ 19%]
14:54:45 tests/unit/api_exec_test.py::ExecTest::test_exec_resize PASSED           [ 19%]
14:54:45 tests/unit/api_exec_test.py::ExecTest::test_exec_start PASSED            [ 20%]
14:54:45 tests/unit/api_exec_test.py::ExecTest::test_exec_start_detached PASSED   [ 20%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_commit PASSED              [ 20%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_get_image PASSED           [ 20%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_image_history PASSED       [ 20%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_image_ids PASSED           [ 20%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_image_viz PASSED           [ 21%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_images PASSED              [ 21%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_images_filters PASSED      [ 21%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_images_name PASSED         [ 21%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_images_quiet PASSED        [ 21%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_import_image PASSED        [ 22%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_import_image_from_bytes PASSED [ 22%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_import_image_from_image PASSED [ 22%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_inspect_image PASSED       [ 22%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_inspect_image_undefined_id PASSED [ 22%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_single_filename PASSED [ 81%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 81%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 81%]
14:54:45 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_wildcard_exception PASSED [ 82%]
14:54:45 tests/unit/utils_build_test.py::TarTest::test_tar_directory_link PASSED  [ 82%]
14:54:45 tests/unit/utils_build_test.py::TarTest::test_tar_socket_file PASSED     [ 82%]
14:54:45 tests/unit/utils_build_test.py::TarTest::test_tar_with_broken_symlinks PASSED [ 82%]
14:54:45 tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 82%]
14:54:45 tests/unit/utils_build_test.py::TarTest::test_tar_with_empty_directory PASSED [ 83%]
14:54:45 tests/unit/utils_build_test.py::TarTest::test_tar_with_excludes PASSED   [ 83%]
14:54:45 tests/unit/utils_build_test.py::TarTest::test_tar_with_file_symlinks PASSED [ 83%]
14:54:45 tests/unit/utils_build_test.py::TarTest::test_tar_with_inaccessible_file SKIPPED [ 83%]
14:54:45 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_fallback PASSED [ 83%]
14:54:45 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 83%]
14:54:45 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_explicit_path PASSED [ 84%]
14:54:45 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_legacy_name PASSED [ 84%]
14:54:45 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_posix PASSED [ 84%]
14:54:45 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_windows SKIPPED [ 84%]
14:54:45 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 84%]
14:54:45 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 84%]
14:54:45 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_from_env PASSED [ 85%]
14:54:45 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 85%]
14:54:45 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 85%]
14:54:45 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 85%]
14:54:45 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 85%]
14:54:45 tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 86%]
14:54:45 tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 86%]
14:54:45 tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 86%]
14:54:45 tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 86%]
14:54:45 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_environment PASSED [ 86%]
14:54:45 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED   [ 86%]
14:54:45 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_inject_proxy_environment PASSED [ 87%]
14:54:45 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_new PASSED         [ 87%]
14:54:45 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_truthiness PASSED  [ 87%]
14:54:45 tests/unit/utils_test.py::DecoratorsTest::test_update_headers PASSED     [ 87%]
14:54:45 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_alternate_env PASSED [ 87%]
14:54:45 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 87%]
14:54:45 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_no_cert_path PASSED [ 88%]
14:54:45 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls PASSED [ 88%]
14:54:45 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false PASSED [ 88%]
14:54:45 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false_no_cert PASSED [ 88%]
14:54:45 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_compact PASSED [ 88%]
14:54:45 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 88%]
14:54:45 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_empty PASSED [ 89%]
14:54:45 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_list PASSED [ 89%]
14:54:45 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_no_mode PASSED [ 89%]
14:54:45 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_bytes_input PASSED [ 89%]
14:54:45 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_unicode_input PASSED [ 89%]
14:54:45 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_commented_line PASSED [ 90%]
14:54:45 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_invalid_line PASSED [ 90%]
14:54:45 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_newline PASSED [ 90%]
14:54:45 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_proper PASSED [ 90%]
14:54:45 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_with_equals_character PASSED [ 90%]
14:54:45 tests/unit/utils_test.py::ParseHostTest::test_parse_host PASSED          [ 90%]
14:54:45 tests/unit/utils_test.py::ParseHostTest::test_parse_host_empty_value PASSED [ 91%]
14:54:45 tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls PASSED      [ 91%]
14:54:45 tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls_tcp_proto PASSED [ 91%]
14:54:45 tests/unit/utils_test.py::ParseHostTest::test_parse_host_trailing_slash PASSED [ 91%]
14:54:45 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_no_tag PASSED [ 91%]
14:54:45 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_sha PASSED [ 91%]
14:54:45 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_tag PASSED [ 92%]
14:54:45 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_no_tag PASSED [ 92%]
14:54:45 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_tag PASSED [ 92%]
14:54:45 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_no_tag PASSED [ 92%]
14:54:45 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_sha PASSED [ 92%]
14:54:45 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 93%]
14:54:45 tests/unit/utils_test.py::ParseDeviceTest::test_dict PASSED              [ 93%]
14:54:45 tests/unit/utils_test.py::ParseDeviceTest::test_full_string_definition PASSED [ 93%]
14:54:45 tests/unit/utils_test.py::ParseDeviceTest::test_hybrid_list PASSED       [ 93%]
14:54:45 tests/unit/utils_test.py::ParseDeviceTest::test_partial_string_definition PASSED [ 93%]
14:54:45 tests/unit/utils_test.py::ParseDeviceTest::test_permissionless_string_definition PASSED [ 93%]
14:54:45 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_float PASSED  [ 94%]
14:54:45 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_invalid PASSED [ 94%]
14:54:45 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_valid PASSED  [ 94%]
14:54:45 tests/unit/utils_test.py::UtilsTest::test_convert_filters PASSED         [ 94%]
14:54:45 tests/unit/utils_test.py::UtilsTest::test_decode_json_header PASSED      [ 94%]
14:54:45 tests/unit/utils_test.py::SplitCommandTest::test_split_command_with_unicode PASSED [ 94%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_port_ranges PASSED [ 95%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_ports PASSED [ 95%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_port_ranges PASSED [ 95%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_ports PASSED [ 95%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_one_port PASSED [ 95%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_port_range PASSED [ 95%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_host_only_with_colon PASSED    [ 96%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_non_matching_length_port_ranges PASSED [ 96%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_port_and_range_invalid PASSED  [ 96%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_port_only_with_colon PASSED    [ 96%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_empty_string PASSED [ 96%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_invalid PASSED      [ 97%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_invalid_protocol PASSED [ 97%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_no_host_port PASSED [ 97%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_non_string PASSED   [ 97%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_random_port_range_with_host_port PASSED [ 97%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_range_no_host_port PASSED [ 97%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_ip_no_port PASSED [ 98%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_port PASSED [ 98%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_protocol PASSED [ 98%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip PASSED [ 98%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip_no_port PASSED [ 98%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_port PASSED [ 98%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_address PASSED [ 99%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_square_brackets_address PASSED [ 99%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_split_port_with_protocol PASSED [ 99%]
14:54:45 tests/unit/utils_test.py::PortsTest::test_with_no_container_port PASSED  [ 99%]
14:54:45 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_binary_unicode_value PASSED [ 99%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_load_image PASSED          [ 22%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_load_image_quiet PASSED    [ 23%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_pull PASSED                [ 23%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_pull_stream PASSED         [ 23%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_push_image PASSED          [ 23%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_push_image_stream PASSED   [ 23%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_push_image_with_auth PASSED [ 23%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_push_image_with_tag PASSED [ 24%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_remove_image PASSED        [ 24%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_tag_image PASSED           [ 24%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_tag_image_force PASSED     [ 24%]
14:54:45 tests/unit/api_image_test.py::ImageTest::test_tag_image_tag PASSED       [ 24%]
14:54:45 tests/unit/api_network_test.py::NetworkTest::test_connect_container_to_network PASSED [ 25%]
14:54:45 tests/unit/api_network_test.py::NetworkTest::test_create_network PASSED  [ 25%]
14:54:45 tests/unit/api_network_test.py::NetworkTest::test_disconnect_container_from_network PASSED [ 25%]
14:54:45 tests/unit/api_network_test.py::NetworkTest::test_inspect_network PASSED [ 25%]
14:54:45 tests/unit/api_network_test.py::NetworkTest::test_list_networks PASSED   [ 25%]
14:54:45 tests/unit/api_network_test.py::NetworkTest::test_remove_network PASSED  [ 25%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_auto_retrieve_server_version PASSED [ 26%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_create_host_config_secopt PASSED [ 26%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_ctor PASSED                  [ 26%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_events PASSED                [ 26%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_events_with_filters PASSED   [ 26%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_events_with_since_until PASSED [ 26%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_info PASSED                  [ 27%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_login PASSED                 [ 27%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_remove_link PASSED           [ 27%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_retrieve_server_version PASSED [ 27%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_search PASSED                [ 27%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_stream_helper_decoding PASSED [ 27%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http PASSED [ 28%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http_unix_triple_slash PASSED [ 28%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_tcp PASSED [ 28%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix PASSED [ 28%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix_triple_slash PASSED [ 28%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_invalid_resource PASSED  [ 29%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_no_resource PASSED       [ 29%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_unversioned_api PASSED   [ 29%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_url_valid_resource PASSED    [ 29%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_version PASSED               [ 29%]
14:54:45 tests/unit/api_test.py::DockerApiTest::test_version_no_api_version PASSED [ 29%]
14:54:45 tests/unit/api_test.py::UnixSocketStreamTest::test_early_stream_response PASSED [ 30%]
[Pipeline] withDockerRegistry
[Pipeline] {
[Pipeline] sh
14:54:46 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty PASSED [ 30%]
14:54:46 + docker run --rm -e DOCKER_TEST_API_VERSION=1.40 dockerpinata/docker-py:py3-e7f1b4e48ab6a5c069ef52002051d97340975335 py.test -v -rxs --cov=docker tests/unit
14:54:46 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty_demux PASSED [ 30%]
14:54:46 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty PASSED [ 30%]
14:54:46 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_no_value PASSED [100%]
14:54:46 
14:54:46 =================================== FAILURES ===================================
14:54:46 ___________ CreateContainerTest.test_create_container_with_platform ____________
14:54:46 tests/unit/api_container_test.py:363: in test_create_container_with_platform
14:54:46     assert args[1]['params'] == {'platform': 'linux'}
14:54:46 E   AssertionError: assert {'name': None...orm': 'linux'} == {'platform': 'linux'}
14:54:46 E     Omitting 1 identical items, use -vv to show
14:54:46 E     Left contains 1 more item:
14:54:46 E     {'name': None}
14:54:46 E     Full diff:
14:54:46 E     - {'platform': 'linux'}
14:54:46 E     + {'name': None, 'platform': 'linux'}
14:54:46 E     ?  ++++++++++++++
14:54:46 
14:54:46 ---------- coverage: platform linux, python 3.7.12-final-0 -----------
14:54:46 Name                                  Stmts   Miss Branch BrPart  Cover
14:54:46 -----------------------------------------------------------------------
14:54:46 docker/__init__.py                        8      0      0      0   100%
14:54:46 docker/api/__init__.py                    1      0      0      0   100%
14:54:46 docker/api/build.py                     126     41     92     21    62%
14:54:46 docker/api/client.py                    261     65     92     11    75%
14:54:46 docker/api/config.py                     29     18      4      0    33%
14:54:46 docker/api/container.py                 269     73    108     26    65%
14:54:46 docker/api/daemon.py                     39      4     14      4    85%
14:54:46 docker/api/exec_api.py                   45     11     22      9    67%
14:54:46 docker/api/image.py                     159     43     60     14    70%
14:54:46 docker/api/network.py                    90     35     48     11    51%
14:54:46 docker/api/plugin.py                     89     68     14      0    20%
14:54:46 docker/api/secret.py                     34     22      8      0    29%
14:54:46 docker/api/service.py                   200    176    149      0     7%
14:54:46 docker/api/swarm.py                     106     67     38      1    28%
14:54:46 docker/api/volume.py                     38      9     14      2    71%
14:54:46 docker/auth.py                          197     16     74     16    88%
14:54:46 docker/client.py                         69      9      2      0    87%
14:54:46 docker/constants.py                      21      0      0      0   100%
14:54:46 docker/context/__init__.py                2      0      0      0   100%
14:54:46 docker/context/api.py                    78     41     38      8    39%
14:54:46 docker/context/config.py                 61     33     16      2    42%
14:54:46 docker/context/context.py               154     96     64      6    29%
14:54:46 docker/credentials/__init__.py            3      0      0      0   100%
14:54:46 docker/credentials/constants.py           4      0      0      0   100%
14:54:46 docker/credentials/errors.py             11      4      2      0    54%
14:54:46 docker/credentials/store.py              44     30     12      0    25%
14:54:46 docker/credentials/utils.py              23     18     12      0    14%
14:54:46 docker/errors.py                        110     26     20      4    71%
14:54:46 docker/models/__init__.py                 0      0      0      0   100%
14:54:46 docker/models/configs.py                 21      8      2      0    57%
14:54:46 docker/models/containers.py             183     11     70      9    91%
14:54:46 docker/models/images.py                 136     55     56      4    52%
14:54:46 docker/models/networks.py                37      7     12      3    71%
14:54:46 docker/models/nodes.py                   15      5      2      0    59%
14:54:46 docker/models/plugins.py                 48     29      8      0    34%
14:54:46 docker/models/resource.py                41     10      6      3    72%
14:54:46 docker/models/secrets.py                 22      4      2      0    75%
14:54:46 docker/models/services.py                87     35     36      4    59%
14:54:46 docker/models/swarm.py                   39     21      6      0    40%
14:54:46 docker/models/volumes.py                 23     10      4      0    48%
14:54:46 docker/tls.py                            37      6     14      6    76%
14:54:46 docker/transport/__init__.py             11      3      0      0    73%
14:54:46 docker/transport/basehttpadapter.py       6      0      2      1    88%
14:54:46 docker/transport/npipeconn.py            57     52      8      0     8%
14:54:46 docker/transport/npipesocket.py         134    130     20      0     3%
14:54:46 docker/transport/sshconn.py             162    105     54      3    30%
14:54:46 docker/transport/ssladapter.py           36     10     10      4    65%
14:54:46 docker/transport/unixconn.py             54      3      6      1    93%
14:54:46 docker/types/__init__.py                  6      0      0      0   100%
14:54:46 docker/types/base.py                      4      0      2      0   100%
14:54:46 docker/types/containers.py              419     79    326     43    81%
14:54:46 docker/types/daemon.py                   36     24     14      0    24%
14:54:46 docker/types/healthcheck.py              33     20      4      0    35%
14:54:46 docker/types/networks.py                 41     11     28      9    65%
14:54:46 docker/types/services.py                321    146    216     41    50%
14:54:46 docker/types/swarm.py                    51     45     40      0     7%
14:54:46 docker/utils/__init__.py                  3      0      0      0   100%
14:54:46 docker/utils/build.py                   150     24     72     10    83%
14:54:46 docker/utils/config.py                   36      1     10      1    96%
14:54:46 docker/utils/decorators.py               32      1     12      1    95%
14:54:46 docker/utils/fnmatch.py                  55     18     28      2    61%
14:54:46 docker/utils/json_stream.py              40      8     14      2    78%
14:54:46 docker/utils/ports.py                    50      3     32      2    91%
14:54:46 docker/utils/proxy.py                    32      1     12      0    98%
14:54:46 docker/utils/socket.py                   85     10     40      8    84%
14:54:46 docker/utils/utils.py                   278     18    171     13    92%
14:54:46 docker/version.py                         2      0      2      0   100%
14:54:46 -----------------------------------------------------------------------
14:54:46 TOTAL                                  5094   1818   2244    305    60%
14:54:46 
14:54:46 =========================== short test summary info ============================
14:54:46 XFAIL tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows
14:54:46 SKIPPED [1] tests/unit/api_build_test.py:169: Windows-specific syntax
14:54:46 SKIPPED [1] tests/unit/client_test.py:99: Npipe Connection Pool only on Windows
14:54:46 SKIPPED [1] tests/unit/client_test.py:138: Npipe Connection Pool only on Windows
14:54:46 SKIPPED [1] tests/unit/client_test.py:212: Npipe Connection Pool only on Windows
14:54:46 SKIPPED [1] tests/unit/client_test.py:249: Npipe Connection Pool only on Windows
14:54:46 SKIPPED [1] tests/unit/context_test.py:18: Windows specific path check
14:54:46 SKIPPED [1] tests/unit/utils_build_test.py:230: Backslash patterns only on Windows
14:54:46 SKIPPED [1] tests/unit/utils_build_test.py:252: Backslash patterns only on Windows
14:54:46 SKIPPED [1] tests/unit/utils_build_test.py:400: root user always has access ; no chmod on Windows
14:54:46 SKIPPED [1] tests/unit/utils_config_test.py:54: condition: sys.platform != 'win32'
14:54:46 ============= 1 failed, 560 passed, 10 skipped, 1 xfailed in 6.28s =============
14:54:46 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty_demux PASSED [ 30%]
[Pipeline] sh
14:54:47 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty PASSED [ 30%]
$ 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-2927@tmp/6e590cf3-9455-4f64-b6fc-7adec13c007d/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
14:54:47 + docker stop dpy-dind-2-0-py3.7-19.03.13
14:54:47 Error response from daemon: No such container: dpy-dind-2-0-py3.7-19.03.13
14:54:47 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty_demux PASSED [ 31%]
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // node
[Pipeline] }
Failed in branch py3.7_19.03.13
14:54:47 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty PASSED [ 31%]
14:54:47 ============================= test session starts ==============================
14:54:47 platform linux -- Python 3.7.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /usr/local/bin/python
14:54:47 cachedir: .pytest_cache
14:54:47 rootdir: /src, configfile: pytest.ini
14:54:47 plugins: cov-3.0.0, timeout-2.0.1
14:54:48 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty_demux PASSED [ 31%]
14:54:48 tests/unit/api_test.py::UserAgentTest::test_custom_user_agent PASSED     [ 31%]
14:54:48 tests/unit/api_test.py::UserAgentTest::test_default_user_agent PASSED    [ 31%]
14:54:48 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout PASSED [ 31%]
14:54:48 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout2 PASSED [ 32%]
14:54:48 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timout_non_blocking PASSED [ 32%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_create_volume PASSED     [ 32%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_invalid_opts_type PASSED [ 32%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_driver PASSED [ 32%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_invalid_labels PASSED [ 33%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_labels PASSED [ 33%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_no_specified_name PASSED [ 33%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_inspect_volume PASSED    [ 33%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_list_volumes PASSED      [ 33%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_list_volumes_and_filters PASSED [ 33%]
14:54:48 tests/unit/api_volume_test.py::VolumeTest::test_remove_volume PASSED     [ 34%]
14:54:48 tests/unit/auth_test.py::RegressionTest::test_803_urlsafe_encode PASSED  [ 34%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_hub_index_library_image PASSED [ 34%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_legacy_hub_index_library_image PASSED [ 34%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_invalid_index_name PASSED [ 34%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_dotted_hub_library_image PASSED [ 34%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_image PASSED [ 35%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 35%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost PASSED [ 35%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost_with_username PASSED [ 35%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port PASSED [ 35%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port_and_username PASSED [ 36%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry PASSED [ 36%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 36%]
14:54:48 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_username PASSED [ 36%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_auth_with_empty_credstore_and_auth_dict PASSED [ 36%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_explicit_none PASSED [ 36%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_registry PASSED [ 37%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_fully_explicit PASSED [ 37%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 37%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_legacy_config PASSED [ 37%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_match PASSED [ 37%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path PASSED [ 37%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_trailing_slash PASSED [ 38%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 38%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 38%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_protocol PASSED [ 38%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_path_wrong_proto PASSED [ 38%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_hub PASSED [ 38%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_legacy_hub PASSED [ 39%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 39%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_library_image PASSED [ 39%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_private_registry PASSED [ 39%]
14:54:48 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_unauthenticated_registry PASSED [ 39%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env PASSED [ 40%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_utf8 PASSED [ 40%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 40%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_config_identity_token PASSED [ 40%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_config_invalid_auth_dict PASSED [ 40%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 40%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_config_unknown_keys PASSED [ 41%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_config_with_random_name PASSED [ 41%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED    [ 41%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_legacy_config PASSED  [ 41%]
14:54:48 tests/unit/auth_test.py::LoadConfigTest::test_load_modern_json_config PASSED [ 41%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_3_sources PASSED [ 41%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_only PASSED [ 42%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 42%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 42%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_auths_entries PASSED [ 42%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_credhelpers_only PASSED [ 42%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_auths_entry PASSED [ 43%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_credhelper PASSED [ 43%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 43%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 43%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_no_default PASSED [ 43%]
14:54:48 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_with_plain_dict PASSED [ 43%]
14:54:48 tests/unit/client_test.py::ClientTest::test_call_api_client_method PASSED [ 44%]
14:54:48 tests/unit/client_test.py::ClientTest::test_call_containers PASSED       [ 44%]
14:54:48 tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 44%]
14:54:48 tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 44%]
14:54:48 tests/unit/client_test.py::ClientTest::test_events PASSED                [ 44%]
14:54:48 tests/unit/client_test.py::ClientTest::test_info PASSED                  [ 44%]
14:54:48 tests/unit/client_test.py::ClientTest::test_ping PASSED                  [ 45%]
14:54:48 tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED        [ 45%]
14:54:48 tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 45%]
14:54:48 tests/unit/client_test.py::ClientTest::test_version PASSED               [ 45%]
14:54:48 tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_unix PASSED [ 45%]
14:54:48 tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_win SKIPPED [ 45%]
14:54:48 tests/unit/client_test.py::FromEnvTest::test_from_env PASSED             [ 46%]
14:54:48 tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 46%]
14:54:48 tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 46%]
14:54:48 tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 46%]
14:54:48 tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_unix PASSED [ 46%]
14:54:48 tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_win SKIPPED [ 47%]
14:54:48 tests/unit/context_test.py::BaseContextTest::test_context_inspect_without_params PASSED [ 47%]
14:54:48 tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 47%]
14:54:48 tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 47%]
14:54:48 tests/unit/context_test.py::BaseContextTest::test_get_current_context PASSED [ 47%]
14:54:48 tests/unit/context_test.py::BaseContextTest::test_https_host PASSED      [ 47%]
14:54:48 tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_linux PASSED [ 48%]
14:54:48 tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_windows SKIPPED [ 48%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 48%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 48%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_percent_types PASSED [ 48%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_mem_swappiness PASSED [ 48%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_nano_cpus_types PASSED [ 49%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 49%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 49%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 49%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_count PASSED [ 49%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_percent PASSED [ 50%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_period PASSED [ 50%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 50%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 50%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 50%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_runtime PASSED [ 50%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_dns_opt PASSED [ 51%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_isolation PASSED [ 51%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 51%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 51%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 51%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_kill_disable PASSED [ 51%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_score_adj PASSED [ 52%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 52%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 52%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 52%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 52%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_uts PASSED [ 52%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_volume_driver PASSED [ 53%]
14:54:48 tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 53%]
14:54:48 tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 53%]
14:54:48 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 53%]
14:54:48 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 53%]
14:54:48 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_obj_ulimit PASSED [ 54%]
14:54:48 tests/unit/dockertypes_test.py::UlimitTest::test_ulimit_invalid_type PASSED [ 54%]
14:54:48 tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 54%]
14:54:48 tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 54%]
14:54:48 tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 54%]
14:54:48 tests/unit/dockertypes_test.py::EndpointConfigTest::test_create_endpoint_config_with_aliases PASSED [ 54%]
14:54:48 tests/unit/dockertypes_test.py::IPAMConfigTest::test_create_ipam_config PASSED [ 55%]
14:54:48 tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 55%]
14:54:48 tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 55%]
14:54:48 tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%]
14:54:48 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas PASSED [ 55%]
14:54:48 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas_0 PASSED [ 55%]
14:54:48 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_simple PASSED [ 56%]
14:54:48 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED  [ 56%]
14:54:48 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows XFAIL [ 56%]
14:54:48 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_named_volume PASSED [ 56%]
14:54:48 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_invalid PASSED [ 56%]
14:54:48 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_no_source PASSED [ 56%]
14:54:48 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_ro PASSED [ 57%]
14:54:48 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 57%]
14:54:48 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_short_form PASSED [ 57%]
14:54:48 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_invalid PASSED [ 57%]
14:54:48 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_multiple PASSED [ 57%]
14:54:48 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_no_protocol_and_mode PASSED [ 58%]
14:54:48 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_simple PASSED [ 58%]
14:54:48 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 58%]
14:54:48 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol_and_mode PASSED [ 58%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_api_error_is_caught_by_dockerexception PASSED [ 58%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_create_error_from_exception PASSED [ 58%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_client_error_400 PASSED [ 59%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 59%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED        [ 59%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_error_400 PASSED        [ 59%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_error_500 PASSED        [ 59%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_200 PASSED [ 59%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_300 PASSED [ 60%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 60%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 60%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_status_code_200 PASSED     [ 60%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_status_code_400 PASSED     [ 60%]
14:54:48 tests/unit/errors_test.py::APIErrorTest::test_status_code_500 PASSED     [ 61%]
14:54:48 tests/unit/errors_test.py::ContainerErrorTest::test_container_with_stderr PASSED [ 61%]
14:54:48 tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 61%]
14:54:48 tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 61%]
14:54:48 tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_single PASSED [ 61%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create PASSED [ 61%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_container_args PASSED [ 62%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_with_image_object PASSED [ 62%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_get PASSED [ 62%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_list PASSED [ 62%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_list_ignore_removed PASSED [ 62%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run PASSED [ 62%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_detach PASSED [ 63%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_pull PASSED [ 63%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_remove PASSED [ 63%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 63%]
14:54:48 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 63%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED  [ 63%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_commit PASSED  [ 64%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_diff PASSED    [ 64%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_exec_run PASSED [ 64%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure PASSED [ 64%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_export PASSED  [ 64%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 65%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_image PASSED   [ 65%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_kill PASSED    [ 65%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_labels PASSED  [ 65%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED    [ 65%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_name PASSED    [ 65%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_pause PASSED   [ 66%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_put_archive PASSED [ 66%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_remove PASSED  [ 66%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_rename PASSED  [ 66%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED  [ 66%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 66%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_start PASSED   [ 67%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_stats PASSED   [ 67%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_status PASSED  [ 67%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED    [ 67%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_top PASSED     [ 67%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 68%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_update PASSED  [ 68%]
14:54:48 tests/unit/models_containers_test.py::ContainerTest::test_wait PASSED    [ 68%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_build PASSED [ 68%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED   [ 68%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 68%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_list PASSED  [ 69%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_load PASSED  [ 69%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_pull PASSED  [ 69%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 69%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 69%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 69%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_push PASSED  [ 70%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_remove PASSED [ 70%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_search PASSED [ 70%]
14:54:48 tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 70%]
14:54:48 tests/unit/models_images_test.py::ImageTest::test_history PASSED         [ 70%]
14:54:48 tests/unit/models_images_test.py::ImageTest::test_save PASSED            [ 70%]
14:54:48 tests/unit/models_images_test.py::ImageTest::test_short_id PASSED        [ 71%]
14:54:48 tests/unit/models_images_test.py::ImageTest::test_tag PASSED             [ 71%]
14:54:48 tests/unit/models_images_test.py::ImageTest::test_tags PASSED            [ 71%]
14:54:48 tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 71%]
14:54:48 tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 71%]
14:54:48 tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 72%]
14:54:48 tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED     [ 72%]
14:54:48 tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED  [ 72%]
14:54:48 tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED      [ 72%]
14:54:48 tests/unit/models_resources_test.py::ModelTest::test_hash PASSED         [ 72%]
14:54:48 tests/unit/models_resources_test.py::ModelTest::test_reload PASSED       [ 72%]
14:54:48 tests/unit/models_secrets_test.py::CreateServiceTest::test_secrets_repr PASSED [ 73%]
14:54:48 tests/unit/models_services_test.py::CreateServiceKwargsTest::test_get_create_service_kwargs PASSED [ 73%]
14:54:48 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_hostname_prefix_trim PASSED [ 73%]
14:54:48 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 73%]
14:54:48 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 73%]
14:54:48 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 73%]
14:54:48 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_user_and_hostname PASSED [ 74%]
14:54:48 tests/unit/ssladapter_test.py::SSLAdapterTest::test_only_uses_tls PASSED [ 74%]
14:54:48 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure PASSED [ 74%]
14:54:48 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 74%]
14:54:48 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 74%]
14:54:48 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 75%]
14:54:48 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success PASSED [ 75%]
14:54:48 tests/unit/swarm_test.py::SwarmTest::test_join_swarm PASSED              [ 75%]
14:54:48 tests/unit/swarm_test.py::SwarmTest::test_join_swarm_no_listen_address_takes_default PASSED [ 75%]
14:54:48 tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED             [ 75%]
14:54:48 tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED     [ 75%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory PASSED  [ 76%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_single_exception PASSED [ 76%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception PASSED [ 76%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 76%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 76%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 76%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard PASSED [ 77%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard_with_exception PASSED [ 77%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_custom_dockerfile PASSED [ 77%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 77%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 77%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 77%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_include_wildcard PASSED [ 78%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_last_line_precedence PASSED [ 78%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_no_dupes PASSED   [ 78%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 78%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 78%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 79%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_and_double_wildcard PASSED [ 79%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename PASSED [ 79%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_leading_dot_slash PASSED [ 79%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 79%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 79%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename_leading_slash PASSED [ 80%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_wildcard_filename PASSED [ 80%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_with_path_traversal PASSED [ 80%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory PASSED [ 80%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 80%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 80%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_exclude PASSED [ 81%]
14:54:48 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_end PASSED [ 81%]
14:54:49 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_start PASSED [ 81%]
14:54:49 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_single_filename PASSED [ 81%]
14:54:49 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 81%]
14:54:49 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 81%]
14:54:49 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_wildcard_exception PASSED [ 82%]
14:54:49 tests/unit/utils_build_test.py::TarTest::test_tar_directory_link PASSED  [ 82%]
14:54:49 tests/unit/utils_build_test.py::TarTest::test_tar_socket_file PASSED     [ 82%]
14:54:49 tests/unit/utils_build_test.py::TarTest::test_tar_with_broken_symlinks PASSED [ 82%]
14:54:49 tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 82%]
14:54:49 tests/unit/utils_build_test.py::TarTest::test_tar_with_empty_directory PASSED [ 83%]
14:54:49 tests/unit/utils_build_test.py::TarTest::test_tar_with_excludes PASSED   [ 83%]
14:54:49 tests/unit/utils_build_test.py::TarTest::test_tar_with_file_symlinks PASSED [ 83%]
14:54:49 tests/unit/utils_build_test.py::TarTest::test_tar_with_inaccessible_file SKIPPED [ 83%]
14:54:49 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_fallback PASSED [ 83%]
14:54:49 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 83%]
14:54:49 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_explicit_path PASSED [ 84%]
14:54:49 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_legacy_name PASSED [ 84%]
14:54:49 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_posix PASSED [ 84%]
14:54:49 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_windows SKIPPED [ 84%]
14:54:49 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 84%]
14:54:49 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 84%]
14:54:49 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_from_env PASSED [ 85%]
14:54:49 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 85%]
14:54:49 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 85%]
14:54:49 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 85%]
14:54:49 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 85%]
14:54:49 tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 86%]
14:54:49 tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 86%]
14:54:49 tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 86%]
14:54:49 tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 86%]
14:54:49 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_environment PASSED [ 86%]
14:54:49 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED   [ 86%]
14:54:49 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_inject_proxy_environment PASSED [ 87%]
14:54:49 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_new PASSED         [ 87%]
14:54:49 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_truthiness PASSED  [ 87%]
14:54:49 tests/unit/utils_test.py::DecoratorsTest::test_update_headers PASSED     [ 87%]
14:54:49 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_alternate_env PASSED [ 87%]
14:54:49 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 87%]
14:54:49 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_no_cert_path PASSED [ 88%]
14:54:49 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls PASSED [ 88%]
14:54:49 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false PASSED [ 88%]
14:54:49 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false_no_cert PASSED [ 88%]
14:54:49 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_compact PASSED [ 88%]
14:54:49 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 88%]
14:54:49 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_empty PASSED [ 89%]
14:54:49 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_list PASSED [ 89%]
14:54:49 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_no_mode PASSED [ 89%]
14:54:49 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_bytes_input PASSED [ 89%]
14:54:49 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_unicode_input PASSED [ 89%]
14:54:49 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_commented_line PASSED [ 90%]
14:54:49 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_invalid_line PASSED [ 90%]
14:54:49 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_newline PASSED [ 90%]
14:54:49 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_proper PASSED [ 90%]
14:54:49 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_with_equals_character PASSED [ 90%]
14:54:49 tests/unit/utils_test.py::ParseHostTest::test_parse_host PASSED          [ 90%]
14:54:49 tests/unit/utils_test.py::ParseHostTest::test_parse_host_empty_value PASSED [ 91%]
14:54:49 tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls PASSED      [ 91%]
14:54:49 tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls_tcp_proto PASSED [ 91%]
14:54:49 tests/unit/utils_test.py::ParseHostTest::test_parse_host_trailing_slash PASSED [ 91%]
14:54:49 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_no_tag PASSED [ 91%]
14:54:49 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_sha PASSED [ 91%]
14:54:49 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_tag PASSED [ 92%]
14:54:49 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_no_tag PASSED [ 92%]
14:54:49 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_tag PASSED [ 92%]
14:54:49 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_no_tag PASSED [ 92%]
14:54:49 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_sha PASSED [ 92%]
14:54:49 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 93%]
14:54:49 tests/unit/utils_test.py::ParseDeviceTest::test_dict PASSED              [ 93%]
14:54:49 tests/unit/utils_test.py::ParseDeviceTest::test_full_string_definition PASSED [ 93%]
14:54:49 tests/unit/utils_test.py::ParseDeviceTest::test_hybrid_list PASSED       [ 93%]
14:54:49 tests/unit/utils_test.py::ParseDeviceTest::test_partial_string_definition PASSED [ 93%]
14:54:49 tests/unit/utils_test.py::ParseDeviceTest::test_permissionless_string_definition PASSED [ 93%]
14:54:49 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_float PASSED  [ 94%]
14:54:49 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_invalid PASSED [ 94%]
14:54:49 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_valid PASSED  [ 94%]
14:54:49 tests/unit/utils_test.py::UtilsTest::test_convert_filters PASSED         [ 94%]
14:54:49 tests/unit/utils_test.py::UtilsTest::test_decode_json_header PASSED      [ 94%]
14:54:49 tests/unit/utils_test.py::SplitCommandTest::test_split_command_with_unicode PASSED [ 94%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_port_ranges PASSED [ 95%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_ports PASSED [ 95%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_port_ranges PASSED [ 95%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_ports PASSED [ 95%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_one_port PASSED [ 95%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_port_range PASSED [ 95%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_host_only_with_colon PASSED    [ 96%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_non_matching_length_port_ranges PASSED [ 96%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_port_and_range_invalid PASSED  [ 96%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_port_only_with_colon PASSED    [ 96%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_empty_string PASSED [ 96%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_invalid PASSED      [ 97%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_invalid_protocol PASSED [ 97%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_no_host_port PASSED [ 97%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_non_string PASSED   [ 97%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_random_port_range_with_host_port PASSED [ 97%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_range_no_host_port PASSED [ 97%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_ip_no_port PASSED [ 98%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_port PASSED [ 98%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_protocol PASSED [ 98%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip PASSED [ 98%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip_no_port PASSED [ 98%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_port PASSED [ 98%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_address PASSED [ 99%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_square_brackets_address PASSED [ 99%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_split_port_with_protocol PASSED [ 99%]
14:54:49 tests/unit/utils_test.py::PortsTest::test_with_no_container_port PASSED  [ 99%]
14:54:49 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_binary_unicode_value PASSED [ 99%]
14:54:49 collecting ... collected 572 items
14:54:49 
14:54:49 tests/unit/api_build_test.py::BuildTest::test_build_container PASSED     [  0%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context PASSED [  0%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_build_container_custom_context_gzip PASSED [  0%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_build_container_invalid_container_limits PASSED [  0%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_build_container_pull PASSED [  0%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_build_container_with_container_limits PASSED [  1%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_build_container_with_named_dockerfile PASSED [  1%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_build_remote_with_registry_auth PASSED [  1%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_process_dockerfile PASSED  [  1%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_process_dockerfile_win_longpath_prefix SKIPPED [  1%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_auth_configs PASSED [  1%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_dict_and_no_auth_configs PASSED [  2%]
14:54:49 tests/unit/api_build_test.py::BuildTest::test_set_auth_headers_with_empty_dict_and_auth_configs PASSED [  2%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container PASSED [  2%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_none PASSED [  2%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_privileged PASSED [  2%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_regression_573 PASSED [  2%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_ro PASSED [  3%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_binds_rw PASSED [  3%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_dict_instead_of_id PASSED [  3%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links PASSED [  3%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_links_as_list_of_tuples PASSED [  3%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf PASSED [  4%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_lxc_conf_compat PASSED [  4%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_multiple_links PASSED [  4%]
14:54:49 tests/unit/api_container_test.py::StartContainerTest::test_start_container_with_port_binds PASSED [  4%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container PASSED [  4%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_privileged PASSED [  4%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_added_capabilities PASSED [  5%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_aliases PASSED [  5%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds PASSED [  5%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_list PASSED [  5%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode PASSED [  5%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_mode_and_ro_error PASSED [  5%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_ro PASSED [  6%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_binds_rw PASSED [  6%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_cgroup_parent PASSED [  6%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_device_requests PASSED [  6%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_devices PASSED [  6%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_dropped_capabilities PASSED [  6%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_entrypoint PASSED [  7%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpu_shares PASSED [  7%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpus PASSED [  7%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset PASSED [  7%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_host_config_cpuset_mems PASSED [  7%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_dict PASSED [  8%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_labels_list PASSED [  8%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links PASSED [  8%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_links_as_list_of_tuples PASSED [  8%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf PASSED [  8%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_lxc_conf_compat PASSED [  8%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mac_address PASSED [  9%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_int PASSED [  9%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string PASSED [  9%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_g_unit PASSED [  9%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_k_unit PASSED [  9%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_m_unit PASSED [  9%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_mem_limit_as_string_with_wrong_value PASSED [ 10%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_multiple_links PASSED [ 10%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_named_volume PASSED [ 10%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_platform FAILED [ 10%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_port_binds PASSED [ 10%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_ports PASSED [ 11%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_restart_policy PASSED [ 11%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stdin_open PASSED [ 11%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_stop_signal PASSED [ 11%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_sysctl PASSED [ 11%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_dict PASSED [ 11%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_tmpfs_list PASSED [ 12%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_unicode_envvars PASSED [ 12%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_volume_string PASSED [ 12%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_container_with_working_dir PASSED [ 12%]
14:54:49 tests/unit/api_container_test.py::CreateContainerTest::test_create_named_container PASSED [ 12%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_container_stats PASSED [ 12%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_container_top PASSED [ 13%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_container_top_with_psargs PASSED [ 13%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_container_update PASSED [ 13%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_diff PASSED        [ 13%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_diff_with_dict_instead_of_id PASSED [ 13%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_export PASSED      [ 13%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_export_with_dict_instead_of_id PASSED [ 14%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_inspect_container PASSED [ 14%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_inspect_container_undefined_id PASSED [ 14%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_kill_container PASSED [ 14%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_dict_instead_of_id PASSED [ 14%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_kill_container_with_signal PASSED [ 15%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_list_containers PASSED [ 15%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_following PASSED [ 15%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_following_backwards PASSED [ 15%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_since PASSED   [ 15%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_since_with_datetime PASSED [ 15%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_since_with_invalid_value_raises_error PASSED [ 16%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_streaming PASSED [ 16%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_streaming_and_following PASSED [ 16%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_tail PASSED    [ 16%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_log_tty PASSED     [ 16%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_logs PASSED        [ 16%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_logs_with_dict_instead_of_id PASSED [ 17%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_pause_container PASSED [ 17%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_port PASSED        [ 17%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_remove_container PASSED [ 17%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_remove_container_with_dict_instead_of_id PASSED [ 17%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_rename_container PASSED [ 18%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_resize_container PASSED [ 18%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_restart_container PASSED [ 18%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_restart_container_with_dict_instead_of_id PASSED [ 18%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_stop_container PASSED [ 18%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_stop_container_with_dict_instead_of_id PASSED [ 18%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_unpause_container PASSED [ 19%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_wait PASSED        [ 19%]
14:54:49 tests/unit/api_container_test.py::ContainerTest::test_wait_with_dict_instead_of_id PASSED [ 19%]
14:54:49 tests/unit/api_exec_test.py::ExecTest::test_exec_create PASSED           [ 19%]
14:54:49 tests/unit/api_exec_test.py::ExecTest::test_exec_inspect PASSED          [ 19%]
14:54:49 tests/unit/api_exec_test.py::ExecTest::test_exec_resize PASSED           [ 19%]
14:54:49 tests/unit/api_exec_test.py::ExecTest::test_exec_start PASSED            [ 20%]
14:54:49 tests/unit/api_exec_test.py::ExecTest::test_exec_start_detached PASSED   [ 20%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_commit PASSED              [ 20%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_get_image PASSED           [ 20%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_image_history PASSED       [ 20%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_image_ids PASSED           [ 20%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_image_viz PASSED           [ 21%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_images PASSED              [ 21%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_images_filters PASSED      [ 21%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_images_name PASSED         [ 21%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_images_quiet PASSED        [ 21%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_import_image PASSED        [ 22%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_import_image_from_bytes PASSED [ 22%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_import_image_from_image PASSED [ 22%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_inspect_image PASSED       [ 22%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_inspect_image_undefined_id PASSED [ 22%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_load_image PASSED          [ 22%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_load_image_quiet PASSED    [ 23%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_pull PASSED                [ 23%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_pull_stream PASSED         [ 23%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_push_image PASSED          [ 23%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_push_image_stream PASSED   [ 23%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_push_image_with_auth PASSED [ 23%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_push_image_with_tag PASSED [ 24%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_remove_image PASSED        [ 24%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_tag_image PASSED           [ 24%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_tag_image_force PASSED     [ 24%]
14:54:49 tests/unit/api_image_test.py::ImageTest::test_tag_image_tag PASSED       [ 24%]
14:54:49 tests/unit/api_network_test.py::NetworkTest::test_connect_container_to_network PASSED [ 25%]
14:54:49 tests/unit/api_network_test.py::NetworkTest::test_create_network PASSED  [ 25%]
14:54:49 tests/unit/api_network_test.py::NetworkTest::test_disconnect_container_from_network PASSED [ 25%]
14:54:49 tests/unit/api_network_test.py::NetworkTest::test_inspect_network PASSED [ 25%]
14:54:49 tests/unit/api_network_test.py::NetworkTest::test_list_networks PASSED   [ 25%]
14:54:49 tests/unit/api_network_test.py::NetworkTest::test_remove_network PASSED  [ 25%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_auto_retrieve_server_version PASSED [ 26%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_create_host_config_secopt PASSED [ 26%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_ctor PASSED                  [ 26%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_events PASSED                [ 26%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_events_with_filters PASSED   [ 26%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_events_with_since_until PASSED [ 26%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_info PASSED                  [ 27%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_login PASSED                 [ 27%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_remove_link PASSED           [ 27%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_retrieve_server_version PASSED [ 27%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_search PASSED                [ 27%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_stream_helper_decoding PASSED [ 27%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http PASSED [ 28%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_http_unix_triple_slash PASSED [ 28%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_tcp PASSED [ 28%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix PASSED [ 28%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_compatibility_unix_triple_slash PASSED [ 28%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_invalid_resource PASSED  [ 29%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_no_resource PASSED       [ 29%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_unversioned_api PASSED   [ 29%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_url_valid_resource PASSED    [ 29%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_version PASSED               [ 29%]
14:54:49 tests/unit/api_test.py::DockerApiTest::test_version_no_api_version PASSED [ 29%]
14:54:49 tests/unit/api_test.py::UnixSocketStreamTest::test_early_stream_response PASSED [ 30%]
14:54:50 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty PASSED [ 30%]
14:54:50 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_no_value PASSED [100%]
14:54:50 
14:54:50 =================================== FAILURES ===================================
14:54:50 ___________ CreateContainerTest.test_create_container_with_platform ____________
14:54:50 tests/unit/api_container_test.py:363: in test_create_container_with_platform
14:54:50     assert args[1]['params'] == {'platform': 'linux'}
14:54:50 E   AssertionError: assert {'name': None...orm': 'linux'} == {'platform': 'linux'}
14:54:50 E     Omitting 1 identical items, use -vv to show
14:54:50 E     Left contains 1 more item:
14:54:50 E     {'name': None}
14:54:50 E     Full diff:
14:54:50 E     - {'platform': 'linux'}
14:54:50 E     + {'name': None, 'platform': 'linux'}
14:54:50 E     ?  ++++++++++++++
14:54:50 
14:54:50 ---------- coverage: platform linux, python 3.7.12-final-0 -----------
14:54:50 Name                                  Stmts   Miss Branch BrPart  Cover
14:54:50 -----------------------------------------------------------------------
14:54:50 docker/__init__.py                        8      0      0      0   100%
14:54:50 docker/api/__init__.py                    1      0      0      0   100%
14:54:50 docker/api/build.py                     126     41     92     21    62%
14:54:50 docker/api/client.py                    261     65     92     11    75%
14:54:50 docker/api/config.py                     29     18      4      0    33%
14:54:50 docker/api/container.py                 269     73    108     26    65%
14:54:50 docker/api/daemon.py                     39      4     14      4    85%
14:54:50 docker/api/exec_api.py                   45     11     22      9    67%
14:54:50 docker/api/image.py                     159     43     60     14    70%
14:54:50 docker/api/network.py                    90     35     48     11    51%
14:54:50 docker/api/plugin.py                     89     68     14      0    20%
14:54:50 docker/api/secret.py                     34     22      8      0    29%
14:54:50 docker/api/service.py                   200    176    149      0     7%
14:54:50 docker/api/swarm.py                     106     67     38      1    28%
14:54:50 docker/api/volume.py                     38      9     14      2    71%
14:54:50 docker/auth.py                          197     16     74     16    88%
14:54:50 docker/client.py                         69      9      2      0    87%
14:54:50 docker/constants.py                      21      0      0      0   100%
14:54:50 docker/context/__init__.py                2      0      0      0   100%
14:54:50 docker/context/api.py                    78     41     38      8    39%
14:54:50 docker/context/config.py                 61     33     16      2    42%
14:54:50 docker/context/context.py               154     96     64      6    29%
14:54:50 docker/credentials/__init__.py            3      0      0      0   100%
14:54:50 docker/credentials/constants.py           4      0      0      0   100%
14:54:50 docker/credentials/errors.py             11      4      2      0    54%
14:54:50 docker/credentials/store.py              44     30     12      0    25%
14:54:50 docker/credentials/utils.py              23     18     12      0    14%
14:54:50 docker/errors.py                        110     26     20      4    71%
14:54:50 docker/models/__init__.py                 0      0      0      0   100%
14:54:50 docker/models/configs.py                 21      8      2      0    57%
14:54:50 docker/models/containers.py             183     11     70      9    91%
14:54:50 docker/models/images.py                 136     55     56      4    52%
14:54:50 docker/models/networks.py                37      7     12      3    71%
14:54:50 docker/models/nodes.py                   15      5      2      0    59%
14:54:50 docker/models/plugins.py                 48     29      8      0    34%
14:54:50 docker/models/resource.py                41     10      6      3    72%
14:54:50 docker/models/secrets.py                 22      4      2      0    75%
14:54:50 docker/models/services.py                87     35     36      4    59%
14:54:50 docker/models/swarm.py                   39     21      6      0    40%
14:54:50 docker/models/volumes.py                 23     10      4      0    48%
14:54:50 docker/tls.py                            37      6     14      6    76%
14:54:50 docker/transport/__init__.py             11      3      0      0    73%
14:54:50 docker/transport/basehttpadapter.py       6      0      2      1    88%
14:54:50 docker/transport/npipeconn.py            57     52      8      0     8%
14:54:50 docker/transport/npipesocket.py         134    130     20      0     3%
14:54:50 docker/transport/sshconn.py             162    105     54      3    30%
14:54:50 docker/transport/ssladapter.py           36     10     10      4    65%
14:54:50 docker/transport/unixconn.py             54      3      6      1    93%
14:54:50 docker/types/__init__.py                  6      0      0      0   100%
14:54:50 docker/types/base.py                      4      0      2      0   100%
14:54:50 docker/types/containers.py              419     79    326     43    81%
14:54:50 docker/types/daemon.py                   36     24     14      0    24%
14:54:50 docker/types/healthcheck.py              33     20      4      0    35%
14:54:50 docker/types/networks.py                 41     11     28      9    65%
14:54:50 docker/types/services.py                321    146    216     41    50%
14:54:50 docker/types/swarm.py                    51     45     40      0     7%
14:54:50 docker/utils/__init__.py                  3      0      0      0   100%
14:54:50 docker/utils/build.py                   150     24     72     10    83%
14:54:50 docker/utils/config.py                   36      1     10      1    96%
14:54:50 docker/utils/decorators.py               32      1     12      1    95%
14:54:50 docker/utils/fnmatch.py                  55     18     28      2    61%
14:54:50 docker/utils/json_stream.py              40      8     14      2    78%
14:54:50 docker/utils/ports.py                    50      3     32      2    91%
14:54:50 docker/utils/proxy.py                    32      1     12      0    98%
14:54:50 docker/utils/socket.py                   85     10     40      8    84%
14:54:50 docker/utils/utils.py                   278     18    171     13    92%
14:54:50 docker/version.py                         2      0      2      0   100%
14:54:50 -----------------------------------------------------------------------
14:54:50 TOTAL                                  5094   1818   2244    305    60%
14:54:50 
14:54:50 =========================== short test summary info ============================
14:54:50 XFAIL tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows
14:54:50 SKIPPED [1] tests/unit/api_build_test.py:169: Windows-specific syntax
14:54:50 SKIPPED [1] tests/unit/client_test.py:99: Npipe Connection Pool only on Windows
14:54:50 SKIPPED [1] tests/unit/client_test.py:138: Npipe Connection Pool only on Windows
14:54:50 SKIPPED [1] tests/unit/client_test.py:212: Npipe Connection Pool only on Windows
14:54:50 SKIPPED [1] tests/unit/client_test.py:249: Npipe Connection Pool only on Windows
14:54:50 SKIPPED [1] tests/unit/context_test.py:18: Windows specific path check
14:54:50 SKIPPED [1] tests/unit/utils_build_test.py:230: Backslash patterns only on Windows
14:54:50 SKIPPED [1] tests/unit/utils_build_test.py:252: Backslash patterns only on Windows
14:54:50 SKIPPED [1] tests/unit/utils_build_test.py:400: root user always has access ; no chmod on Windows
14:54:50 SKIPPED [1] tests/unit/utils_config_test.py:54: condition: sys.platform != 'win32'
14:54:50 ============= 1 failed, 560 passed, 10 skipped, 1 xfailed in 6.25s =============
14:54:50 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_no_tty_demux PASSED [ 30%]
[Pipeline] sh
14:54:50 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty PASSED [ 30%]
14:54:50 + docker stop dpy-dind-2-0-py3.7-19.03.12
14:54:50 Error response from daemon: No such container: dpy-dind-2-0-py3.7-19.03.12
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // node
[Pipeline] }
Failed in branch py3.7_19.03.12
14:54:50 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_stream_tty_demux PASSED [ 30%]
14:54:50 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty PASSED [ 30%]
14:54:51 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_no_tty_demux PASSED [ 31%]
14:54:51 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty PASSED [ 31%]
14:54:51 tests/unit/api_test.py::TCPSocketStreamTest::test_read_from_socket_tty_demux PASSED [ 31%]
14:54:51 tests/unit/api_test.py::UserAgentTest::test_custom_user_agent PASSED     [ 31%]
14:54:51 tests/unit/api_test.py::UserAgentTest::test_default_user_agent PASSED    [ 31%]
14:54:51 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout PASSED [ 31%]
14:54:51 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timeout2 PASSED [ 32%]
14:54:51 tests/unit/api_test.py::DisableSocketTest::test_disable_socket_timout_non_blocking PASSED [ 32%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_create_volume PASSED     [ 32%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_invalid_opts_type PASSED [ 32%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_driver PASSED [ 32%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_invalid_labels PASSED [ 33%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_labels PASSED [ 33%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_create_volume_with_no_specified_name PASSED [ 33%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_inspect_volume PASSED    [ 33%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_list_volumes PASSED      [ 33%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_list_volumes_and_filters PASSED [ 33%]
14:54:51 tests/unit/api_volume_test.py::VolumeTest::test_remove_volume PASSED     [ 34%]
14:54:51 tests/unit/auth_test.py::RegressionTest::test_803_urlsafe_encode PASSED  [ 34%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_hub_index_library_image PASSED [ 34%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_explicit_legacy_hub_index_library_image PASSED [ 34%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_invalid_index_name PASSED [ 34%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_dotted_hub_library_image PASSED [ 34%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_image PASSED [ 35%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_hub_library_image PASSED [ 35%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost PASSED [ 35%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_localhost_with_username PASSED [ 35%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port PASSED [ 35%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_no_dots_but_port_and_username PASSED [ 36%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry PASSED [ 36%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_port PASSED [ 36%]
14:54:51 tests/unit/auth_test.py::ResolveRepositoryNameTest::test_resolve_repository_name_private_registry_with_username PASSED [ 36%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_auth_with_empty_credstore_and_auth_dict PASSED [ 36%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_explicit_none PASSED [ 36%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_default_registry PASSED [ 37%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_fully_explicit PASSED [ 37%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_hostname_only PASSED [ 37%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_legacy_config PASSED [ 37%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_match PASSED [ 37%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path PASSED [ 37%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_trailing_slash PASSED [ 38%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_insecure_proto PASSED [ 38%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_path_wrong_secure_proto PASSED [ 38%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_no_protocol PASSED [ 38%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_authconfig_path_wrong_proto PASSED [ 38%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_hub PASSED [ 38%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_explicit_legacy_hub PASSED [ 39%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_hub_image PASSED [ 39%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_library_image PASSED [ 39%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_private_registry PASSED [ 39%]
14:54:51 tests/unit/auth_test.py::ResolveAuthTest::test_resolve_registry_and_auth_unauthenticated_registry PASSED [ 39%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env PASSED [ 40%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_utf8 PASSED [ 40%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_config_custom_config_env_with_auths PASSED [ 40%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_config_identity_token PASSED [ 40%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_config_invalid_auth_dict PASSED [ 40%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 40%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_config_unknown_keys PASSED [ 41%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_config_with_random_name PASSED [ 41%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_json_config PASSED    [ 41%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_legacy_config PASSED  [ 41%]
14:54:51 tests/unit/auth_test.py::LoadConfigTest::test_load_modern_json_config PASSED [ 41%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_3_sources PASSED [ 41%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_only PASSED [ 42%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_credstore_overrides_auth_entry PASSED [ 42%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_helpers_override_default PASSED [ 42%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_auths_entries PASSED [ 42%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_credhelpers_only PASSED [ 42%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_auths_entry PASSED [ 43%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_all_credentials_with_empty_credhelper PASSED [ 43%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store PASSED [ 43%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_default_index PASSED [ 43%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_no_default PASSED [ 43%]
14:54:51 tests/unit/auth_test.py::CredstoreTest::test_get_credential_store_with_plain_dict PASSED [ 43%]
14:54:51 tests/unit/client_test.py::ClientTest::test_call_api_client_method PASSED [ 44%]
14:54:51 tests/unit/client_test.py::ClientTest::test_call_containers PASSED       [ 44%]
14:54:51 tests/unit/client_test.py::ClientTest::test_default_pool_size_unix PASSED [ 44%]
14:54:51 tests/unit/client_test.py::ClientTest::test_default_pool_size_win SKIPPED [ 44%]
14:54:51 tests/unit/client_test.py::ClientTest::test_events PASSED                [ 44%]
14:54:51 tests/unit/client_test.py::ClientTest::test_info PASSED                  [ 44%]
14:54:51 tests/unit/client_test.py::ClientTest::test_ping PASSED                  [ 45%]
14:54:51 tests/unit/client_test.py::ClientTest::test_pool_size_unix PASSED        [ 45%]
14:54:51 tests/unit/client_test.py::ClientTest::test_pool_size_win SKIPPED (N...) [ 45%]
14:54:51 tests/unit/client_test.py::ClientTest::test_version PASSED               [ 45%]
14:54:52 tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_unix PASSED [ 45%]
14:54:52 tests/unit/client_test.py::FromEnvTest::test_default_pool_size_from_env_win SKIPPED [ 45%]
14:54:52 tests/unit/client_test.py::FromEnvTest::test_from_env PASSED             [ 46%]
14:54:52 tests/unit/client_test.py::FromEnvTest::test_from_env_with_version PASSED [ 46%]
14:54:52 tests/unit/client_test.py::FromEnvTest::test_from_env_without_timeout_uses_default PASSED [ 46%]
14:54:52 tests/unit/client_test.py::FromEnvTest::test_from_env_without_version_uses_default PASSED [ 46%]
14:54:52 tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_unix PASSED [ 46%]
14:54:52 tests/unit/client_test.py::FromEnvTest::test_pool_size_from_env_win SKIPPED [ 47%]
14:54:52 tests/unit/context_test.py::BaseContextTest::test_context_inspect_without_params PASSED [ 47%]
14:54:52 tests/unit/context_test.py::BaseContextTest::test_default_in_context_list PASSED [ 47%]
14:54:52 tests/unit/context_test.py::BaseContextTest::test_fail_on_default_context_create PASSED [ 47%]
14:54:52 tests/unit/context_test.py::BaseContextTest::test_get_current_context PASSED [ 47%]
14:54:52 tests/unit/context_test.py::BaseContextTest::test_https_host PASSED      [ 47%]
14:54:52 tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_linux PASSED [ 48%]
14:54:52 tests/unit/context_test.py::BaseContextTest::test_url_compatibility_on_windows SKIPPED [ 48%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_cfs_types PASSED [ 48%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_count_types PASSED [ 48%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_cpu_percent_types PASSED [ 48%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_mem_swappiness PASSED [ 48%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_invalid_nano_cpus_types PASSED [ 49%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_no_options_newer_api_version PASSED [ 49%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_pid_mode PASSED [ 49%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_blkio_constraints PASSED [ 49%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_count PASSED [ 49%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_percent PASSED [ 50%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_period PASSED [ 50%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_quota PASSED [ 50%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period PASSED [ 50%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_period_types PASSED [ 50%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_cpu_rt_runtime PASSED [ 50%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_dns_opt PASSED [ 51%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_isolation PASSED [ 51%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_kernel_memory PASSED [ 51%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_mem_reservation PASSED [ 51%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_nano_cpus PASSED [ 51%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_kill_disable PASSED [ 51%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_oom_score_adj PASSED [ 52%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_pids_limit PASSED [ 52%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size PASSED [ 52%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_shm_size_in_mb PASSED [ 52%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_userns_mode PASSED [ 52%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_uts PASSED [ 52%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_create_host_config_with_volume_driver PASSED [ 53%]
14:54:52 tests/unit/dockertypes_test.py::HostConfigTest::test_ctrate_host_config_with_cpu_rt_runtime_types PASSED [ 53%]
14:54:52 tests/unit/dockertypes_test.py::ContainerSpecTest::test_parse_mounts PASSED [ 53%]
14:54:52 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit PASSED [ 53%]
14:54:52 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_dict_ulimit_capitals PASSED [ 53%]
14:54:52 tests/unit/dockertypes_test.py::UlimitTest::test_create_host_config_obj_ulimit PASSED [ 54%]
14:54:52 tests/unit/dockertypes_test.py::UlimitTest::test_ulimit_invalid_type PASSED [ 54%]
14:54:52 tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_dict_logconfig PASSED [ 54%]
14:54:52 tests/unit/dockertypes_test.py::LogConfigTest::test_create_host_config_obj_logconfig PASSED [ 54%]
14:54:52 tests/unit/dockertypes_test.py::LogConfigTest::test_logconfig_invalid_config_type PASSED [ 54%]
14:54:52 tests/unit/dockertypes_test.py::EndpointConfigTest::test_create_endpoint_config_with_aliases PASSED [ 54%]
14:54:52 tests/unit/dockertypes_test.py::IPAMConfigTest::test_create_ipam_config PASSED [ 55%]
14:54:52 tests/unit/dockertypes_test.py::ServiceModeTest::test_global_replicas_error PASSED [ 55%]
14:54:52 tests/unit/dockertypes_test.py::ServiceModeTest::test_global_simple PASSED [ 55%]
14:54:52 tests/unit/dockertypes_test.py::ServiceModeTest::test_invalid_mode PASSED [ 55%]
14:54:52 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas PASSED [ 55%]
14:54:52 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_replicas_0 PASSED [ 55%]
14:54:52 tests/unit/dockertypes_test.py::ServiceModeTest::test_replicated_simple PASSED [ 56%]
14:54:52 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind PASSED  [ 56%]
14:54:52 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows XFAIL [ 56%]
14:54:52 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_named_volume PASSED [ 56%]
14:54:52 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_invalid PASSED [ 56%]
14:54:52 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_no_source PASSED [ 56%]
14:54:52 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_ro PASSED [ 57%]
14:54:52 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_rw PASSED [ 57%]
14:54:52 tests/unit/dockertypes_test.py::MountTest::test_parse_mount_string_short_form PASSED [ 57%]
14:54:52 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_invalid PASSED [ 57%]
14:54:52 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_multiple PASSED [ 57%]
14:54:52 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_no_protocol_and_mode PASSED [ 58%]
14:54:52 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_simple PASSED [ 58%]
14:54:52 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol PASSED [ 58%]
14:54:52 tests/unit/dockertypes_test.py::ServicePortsTest::test_convert_service_ports_with_protocol_and_mode PASSED [ 58%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_api_error_is_caught_by_dockerexception PASSED [ 58%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_create_error_from_exception PASSED [ 58%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_client_error_400 PASSED [ 59%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_client_error_500 PASSED [ 59%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_error_300 PASSED        [ 59%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_error_400 PASSED        [ 59%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_error_500 PASSED        [ 59%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_200 PASSED [ 59%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_300 PASSED [ 60%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_400 PASSED [ 60%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_is_server_error_500 PASSED [ 60%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_status_code_200 PASSED     [ 60%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_status_code_400 PASSED     [ 60%]
14:54:52 tests/unit/errors_test.py::APIErrorTest::test_status_code_500 PASSED     [ 61%]
14:54:52 tests/unit/errors_test.py::ContainerErrorTest::test_container_with_stderr PASSED [ 61%]
14:54:52 tests/unit/errors_test.py::ContainerErrorTest::test_container_without_stderr PASSED [ 61%]
14:54:52 tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_multiple PASSED [ 61%]
14:54:52 tests/unit/errors_test.py::CreateUnexpectedKwargsErrorTest::test_create_unexpected_kwargs_error_single PASSED [ 61%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create PASSED [ 61%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_container_args PASSED [ 62%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_create_with_image_object PASSED [ 62%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_get PASSED [ 62%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_list PASSED [ 62%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_list_ignore_removed PASSED [ 62%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run PASSED [ 62%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_detach PASSED [ 63%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_pull PASSED [ 63%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_remove PASSED [ 63%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_error PASSED [ 63%]
14:54:52 tests/unit/models_containers_test.py::ContainerCollectionTest::test_run_with_image_object PASSED [ 63%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_attach PASSED  [ 63%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_commit PASSED  [ 64%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_diff PASSED    [ 64%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_exec_run PASSED [ 64%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_exec_run_failure PASSED [ 64%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_export PASSED  [ 64%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_get_archive PASSED [ 65%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_image PASSED   [ 65%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_kill PASSED    [ 65%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_labels PASSED  [ 65%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_logs PASSED    [ 65%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_name PASSED    [ 65%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_pause PASSED   [ 66%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_put_archive PASSED [ 66%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_remove PASSED  [ 66%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_rename PASSED  [ 66%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_resize PASSED  [ 66%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_restart PASSED [ 66%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_start PASSED   [ 67%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_stats PASSED   [ 67%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_status PASSED  [ 67%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_stop PASSED    [ 67%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_top PASSED     [ 67%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_unpause PASSED [ 68%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_update PASSED  [ 68%]
14:54:52 tests/unit/models_containers_test.py::ContainerTest::test_wait PASSED    [ 68%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_build PASSED [ 68%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_get PASSED   [ 68%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_labels PASSED [ 68%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_list PASSED  [ 69%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_load PASSED  [ 69%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_pull PASSED  [ 69%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_multiple PASSED [ 69%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_tag_precedence PASSED [ 69%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_pull_with_stream_param PASSED [ 69%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_push PASSED  [ 70%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_remove PASSED [ 70%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_search PASSED [ 70%]
14:54:52 tests/unit/models_images_test.py::ImageCollectionTest::test_search_limit PASSED [ 70%]
14:54:52 tests/unit/models_images_test.py::ImageTest::test_history PASSED         [ 70%]
14:54:52 tests/unit/models_images_test.py::ImageTest::test_save PASSED            [ 70%]
14:54:52 tests/unit/models_images_test.py::ImageTest::test_short_id PASSED        [ 71%]
14:54:52 tests/unit/models_images_test.py::ImageTest::test_tag PASSED             [ 71%]
14:54:52 tests/unit/models_images_test.py::ImageTest::test_tags PASSED            [ 71%]
14:54:52 tests/unit/models_networks_test.py::NetworkCollectionTest::test_create PASSED [ 71%]
14:54:52 tests/unit/models_networks_test.py::NetworkCollectionTest::test_get PASSED [ 71%]
14:54:52 tests/unit/models_networks_test.py::NetworkCollectionTest::test_list PASSED [ 72%]
14:54:52 tests/unit/models_networks_test.py::NetworkTest::test_connect PASSED     [ 72%]
14:54:52 tests/unit/models_networks_test.py::NetworkTest::test_disconnect PASSED  [ 72%]
14:54:52 tests/unit/models_networks_test.py::NetworkTest::test_remove PASSED      [ 72%]
14:54:52 tests/unit/models_resources_test.py::ModelTest::test_hash PASSED         [ 72%]
14:54:52 tests/unit/models_resources_test.py::ModelTest::test_reload PASSED       [ 72%]
14:54:52 tests/unit/models_secrets_test.py::CreateServiceTest::test_secrets_repr PASSED [ 73%]
14:54:52 tests/unit/models_services_test.py::CreateServiceKwargsTest::test_get_create_service_kwargs PASSED [ 73%]
14:54:52 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_hostname_prefix_trim PASSED [ 73%]
14:54:52 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_and_port PASSED [ 73%]
14:54:52 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_hostname_only PASSED [ 73%]
14:54:52 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_url PASSED [ 73%]
14:54:52 tests/unit/sshadapter_test.py::SSHAdapterTest::test_ssh_parse_user_and_hostname PASSED [ 74%]
14:54:52 tests/unit/ssladapter_test.py::SSLAdapterTest::test_only_uses_tls PASSED [ 74%]
14:54:52 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_failure PASSED [ 74%]
14:54:52 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_dns_success PASSED [ 74%]
14:54:52 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_failure PASSED [ 74%]
14:54:52 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_ip_address_success PASSED [ 75%]
14:54:52 tests/unit/ssladapter_test.py::MatchHostnameTest::test_match_localhost_success PASSED [ 75%]
14:54:52 tests/unit/swarm_test.py::SwarmTest::test_join_swarm PASSED              [ 75%]
14:54:52 tests/unit/swarm_test.py::SwarmTest::test_join_swarm_no_listen_address_takes_default PASSED [ 75%]
14:54:52 tests/unit/swarm_test.py::SwarmTest::test_node_update PASSED             [ 75%]
14:54:52 tests/unit/types_containers_test.py::test_uid_0_is_not_elided PASSED     [ 75%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory PASSED  [ 76%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_single_exception PASSED [ 76%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception PASSED [ 76%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_subdir_exception_win32_pathsep SKIPPED [ 76%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_trailing_slash PASSED [ 76%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_directory_with_wildcard_exception PASSED [ 76%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard PASSED [ 77%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_double_wildcard_with_exception PASSED [ 77%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_custom_dockerfile PASSED [ 77%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_child PASSED [ 77%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_dockerfile_dockerignore PASSED [ 77%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_exclude_include_absolute_path PASSED [ 77%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_include_wildcard PASSED [ 78%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_last_line_precedence PASSED [ 78%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_no_dupes PASSED   [ 78%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_no_excludes PASSED [ 78%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_parent_directory PASSED [ 78%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_question_mark PASSED [ 79%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_and_double_wildcard PASSED [ 79%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename PASSED [ 79%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_leading_dot_slash PASSED [ 79%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_filename_trailing_slash PASSED [ 79%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename PASSED [ 79%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_single_filename_leading_slash PASSED [ 80%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_wildcard_filename PASSED [ 80%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_single_subdir_with_path_traversal PASSED [ 80%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory PASSED [ 80%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_subdirectory_win32_pathsep SKIPPED [ 80%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_trailing_double_wildcard PASSED [ 80%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_exclude PASSED [ 81%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_end PASSED [ 81%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_filename_start PASSED [ 81%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_single_filename PASSED [ 81%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_subdir_wildcard_filename PASSED [ 81%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_exception PASSED [ 81%]
14:54:52 tests/unit/utils_build_test.py::ExcludePathsTest::test_wildcard_with_wildcard_exception PASSED [ 82%]
14:54:52 tests/unit/utils_build_test.py::TarTest::test_tar_directory_link PASSED  [ 82%]
14:54:52 tests/unit/utils_build_test.py::TarTest::test_tar_socket_file PASSED     [ 82%]
14:54:52 tests/unit/utils_build_test.py::TarTest::test_tar_with_broken_symlinks PASSED [ 82%]
14:54:52 tests/unit/utils_build_test.py::TarTest::test_tar_with_directory_symlinks PASSED [ 82%]
14:54:52 tests/unit/utils_build_test.py::TarTest::test_tar_with_empty_directory PASSED [ 83%]
14:54:52 tests/unit/utils_build_test.py::TarTest::test_tar_with_excludes PASSED   [ 83%]
14:54:52 tests/unit/utils_build_test.py::TarTest::test_tar_with_file_symlinks PASSED [ 83%]
14:54:52 tests/unit/utils_build_test.py::TarTest::test_tar_with_inaccessible_file SKIPPED [ 83%]
14:54:52 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_fallback PASSED [ 83%]
14:54:52 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_environment PASSED [ 83%]
14:54:52 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_explicit_path PASSED [ 84%]
14:54:52 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_legacy_name PASSED [ 84%]
14:54:52 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_posix PASSED [ 84%]
14:54:52 tests/unit/utils_config_test.py::FindConfigFileTest::test_find_config_from_home_windows SKIPPED [ 84%]
14:54:52 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_custom_headers PASSED [ 84%]
14:54:52 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_detach_keys PASSED [ 84%]
14:54:52 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_from_env PASSED [ 85%]
14:54:52 tests/unit/utils_config_test.py::LoadConfigTest::test_load_config_no_file PASSED [ 85%]
14:54:52 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 85%]
14:54:52 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 85%]
14:54:52 tests/unit/utils_json_stream_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 85%]
14:54:52 tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 86%]
14:54:52 tests/unit/utils_json_stream_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 86%]
14:54:52 tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 86%]
14:54:52 tests/unit/utils_json_stream_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 86%]
14:54:52 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_environment PASSED [ 86%]
14:54:52 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_from_dict PASSED   [ 86%]
14:54:52 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_inject_proxy_environment PASSED [ 87%]
14:54:52 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_new PASSED         [ 87%]
14:54:52 tests/unit/utils_proxy_test.py::ProxyConfigTest::test_truthiness PASSED  [ 87%]
14:54:52 tests/unit/utils_test.py::DecoratorsTest::test_update_headers PASSED     [ 87%]
14:54:52 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_alternate_env PASSED [ 87%]
14:54:52 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_empty PASSED [ 87%]
14:54:52 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_no_cert_path PASSED [ 88%]
14:54:52 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls PASSED [ 88%]
14:54:52 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false PASSED [ 88%]
14:54:52 tests/unit/utils_test.py::KwargsFromEnvTest::test_kwargs_from_env_tls_verify_false_no_cert PASSED [ 88%]
14:54:52 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_compact PASSED [ 88%]
14:54:52 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_complete PASSED [ 88%]
14:54:52 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_empty PASSED [ 89%]
14:54:52 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_list PASSED [ 89%]
14:54:52 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_no_mode PASSED [ 89%]
14:54:52 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_bytes_input PASSED [ 89%]
14:54:52 tests/unit/utils_test.py::ConverVolumeBindsTest::test_convert_volume_binds_unicode_unicode_input PASSED [ 89%]
14:54:52 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_commented_line PASSED [ 90%]
14:54:52 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_invalid_line PASSED [ 90%]
14:54:52 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_newline PASSED [ 90%]
14:54:52 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_proper PASSED [ 90%]
14:54:52 tests/unit/utils_test.py::ParseEnvFileTest::test_parse_env_file_with_equals_character PASSED [ 90%]
14:54:52 tests/unit/utils_test.py::ParseHostTest::test_parse_host PASSED          [ 90%]
14:54:52 tests/unit/utils_test.py::ParseHostTest::test_parse_host_empty_value PASSED [ 91%]
14:54:52 tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls PASSED      [ 91%]
14:54:52 tests/unit/utils_test.py::ParseHostTest::test_parse_host_tls_tcp_proto PASSED [ 91%]
14:54:52 tests/unit/utils_test.py::ParseHostTest::test_parse_host_trailing_slash PASSED [ 91%]
14:54:52 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_no_tag PASSED [ 91%]
14:54:52 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_sha PASSED [ 91%]
14:54:52 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_image_tag PASSED [ 92%]
14:54:52 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_no_tag PASSED [ 92%]
14:54:52 tests/unit/utils_test.py::ParseRepositoryTagTest::test_index_user_image_tag PASSED [ 92%]
14:54:52 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_no_tag PASSED [ 92%]
14:54:52 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_sha PASSED [ 92%]
14:54:52 tests/unit/utils_test.py::ParseRepositoryTagTest::test_private_reg_image_tag PASSED [ 93%]
14:54:52 tests/unit/utils_test.py::ParseDeviceTest::test_dict PASSED              [ 93%]
14:54:52 tests/unit/utils_test.py::ParseDeviceTest::test_full_string_definition PASSED [ 93%]
14:54:52 tests/unit/utils_test.py::ParseDeviceTest::test_hybrid_list PASSED       [ 93%]
14:54:52 tests/unit/utils_test.py::ParseDeviceTest::test_partial_string_definition PASSED [ 93%]
14:54:52 tests/unit/utils_test.py::ParseDeviceTest::test_permissionless_string_definition PASSED [ 93%]
14:54:52 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_float PASSED  [ 94%]
14:54:52 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_invalid PASSED [ 94%]
14:54:52 tests/unit/utils_test.py::ParseBytesTest::test_parse_bytes_valid PASSED  [ 94%]
14:54:53 tests/unit/utils_test.py::UtilsTest::test_convert_filters PASSED         [ 94%]
14:54:53 tests/unit/utils_test.py::UtilsTest::test_decode_json_header PASSED      [ 94%]
14:54:53 tests/unit/utils_test.py::SplitCommandTest::test_split_command_with_unicode PASSED [ 94%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_port_ranges PASSED [ 95%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_matching_internal_ports PASSED [ 95%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_port_ranges PASSED [ 95%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_nonmatching_internal_ports PASSED [ 95%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_one_port PASSED [ 95%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_build_port_bindings_with_port_range PASSED [ 95%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_host_only_with_colon PASSED    [ 96%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_non_matching_length_port_ranges PASSED [ 96%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_port_and_range_invalid PASSED  [ 96%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_port_only_with_colon PASSED    [ 96%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_empty_string PASSED [ 96%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_invalid PASSED      [ 97%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_invalid_protocol PASSED [ 97%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_no_host_port PASSED [ 97%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_non_string PASSED   [ 97%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_random_port_range_with_host_port PASSED [ 97%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_range_no_host_port PASSED [ 97%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_ip_no_port PASSED [ 98%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_host_port PASSED [ 98%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_range_with_protocol PASSED [ 98%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip PASSED [ 98%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_ip_no_port PASSED [ 98%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_with_host_port PASSED [ 98%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_address PASSED [ 99%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_with_ipv6_square_brackets_address PASSED [ 99%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_split_port_with_protocol PASSED [ 99%]
14:54:53 tests/unit/utils_test.py::PortsTest::test_with_no_container_port PASSED  [ 99%]
14:54:53 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_binary_unicode_value PASSED [ 99%]
14:54:53 tests/unit/utils_test.py::FormatEnvironmentTest::test_format_env_no_value PASSED [100%]
14:54:53 
14:54:53 =================================== FAILURES ===================================
14:54:53 ___________ CreateContainerTest.test_create_container_with_platform ____________
14:54:53 tests/unit/api_container_test.py:363: in test_create_container_with_platform
14:54:53     assert args[1]['params'] == {'platform': 'linux'}
14:54:53 E   AssertionError: assert {'name': None...orm': 'linux'} == {'platform': 'linux'}
14:54:53 E     Omitting 1 identical items, use -vv to show
14:54:53 E     Left contains 1 more item:
14:54:53 E     {'name': None}
14:54:53 E     Full diff:
14:54:53 E     - {'platform': 'linux'}
14:54:53 E     + {'name': None, 'platform': 'linux'}
14:54:53 E     ?  ++++++++++++++
14:54:53 
14:54:53 ---------- coverage: platform linux, python 3.7.12-final-0 -----------
14:54:53 Name                                  Stmts   Miss Branch BrPart  Cover
14:54:53 -----------------------------------------------------------------------
14:54:53 docker/__init__.py                        8      0      0      0   100%
14:54:53 docker/api/__init__.py                    1      0      0      0   100%
14:54:53 docker/api/build.py                     126     41     92     21    62%
14:54:53 docker/api/client.py                    261     65     92     11    75%
14:54:53 docker/api/config.py                     29     18      4      0    33%
14:54:53 docker/api/container.py                 269     73    108     26    65%
14:54:53 docker/api/daemon.py                     39      4     14      4    85%
14:54:53 docker/api/exec_api.py                   45     11     22      9    67%
14:54:53 docker/api/image.py                     159     43     60     14    70%
14:54:53 docker/api/network.py                    90     35     48     11    51%
14:54:53 docker/api/plugin.py                     89     68     14      0    20%
14:54:53 docker/api/secret.py                     34     22      8      0    29%
14:54:53 docker/api/service.py                   200    176    149      0     7%
14:54:53 docker/api/swarm.py                     106     67     38      1    28%
14:54:53 docker/api/volume.py                     38      9     14      2    71%
14:54:53 docker/auth.py                          197     16     74     16    88%
14:54:53 docker/client.py                         69      9      2      0    87%
14:54:53 docker/constants.py                      21      0      0      0   100%
14:54:53 docker/context/__init__.py                2      0      0      0   100%
14:54:53 docker/context/api.py                    78     41     38      8    39%
14:54:53 docker/context/config.py                 61     33     16      2    42%
14:54:53 docker/context/context.py               154     96     64      6    29%
14:54:53 docker/credentials/__init__.py            3      0      0      0   100%
14:54:53 docker/credentials/constants.py           4      0      0      0   100%
14:54:53 docker/credentials/errors.py             11      4      2      0    54%
14:54:53 docker/credentials/store.py              44     30     12      0    25%
14:54:53 docker/credentials/utils.py              23     18     12      0    14%
14:54:53 docker/errors.py                        110     26     20      4    71%
14:54:53 docker/models/__init__.py                 0      0      0      0   100%
14:54:53 docker/models/configs.py                 21      8      2      0    57%
14:54:53 docker/models/containers.py             183     11     70      9    91%
14:54:53 docker/models/images.py                 136     55     56      4    52%
14:54:53 docker/models/networks.py                37      7     12      3    71%
14:54:53 docker/models/nodes.py                   15      5      2      0    59%
14:54:53 docker/models/plugins.py                 48     29      8      0    34%
14:54:53 docker/models/resource.py                41     10      6      3    72%
14:54:53 docker/models/secrets.py                 22      4      2      0    75%
14:54:53 docker/models/services.py                87     35     36      4    59%
14:54:53 docker/models/swarm.py                   39     21      6      0    40%
14:54:53 docker/models/volumes.py                 23     10      4      0    48%
14:54:53 docker/tls.py                            37      6     14      6    76%
14:54:53 docker/transport/__init__.py             11      3      0      0    73%
14:54:53 docker/transport/basehttpadapter.py       6      0      2      1    88%
14:54:53 docker/transport/npipeconn.py            57     52      8      0     8%
14:54:53 docker/transport/npipesocket.py         134    130     20      0     3%
14:54:53 docker/transport/sshconn.py             162    105     54      3    30%
14:54:53 docker/transport/ssladapter.py           36     10     10      4    65%
14:54:53 docker/transport/unixconn.py             54      3      6      1    93%
14:54:53 docker/types/__init__.py                  6      0      0      0   100%
14:54:53 docker/types/base.py                      4      0      2      0   100%
14:54:53 docker/types/containers.py              419     79    326     43    81%
14:54:53 docker/types/daemon.py                   36     24     14      0    24%
14:54:53 docker/types/healthcheck.py              33     20      4      0    35%
14:54:53 docker/types/networks.py                 41     11     28      9    65%
14:54:53 docker/types/services.py                321    146    216     41    50%
14:54:53 docker/types/swarm.py                    51     45     40      0     7%
14:54:53 docker/utils/__init__.py                  3      0      0      0   100%
14:54:53 docker/utils/build.py                   150     24     72     10    83%
14:54:53 docker/utils/config.py                   36      1     10      1    96%
14:54:53 docker/utils/decorators.py               32      1     12      1    95%
14:54:53 docker/utils/fnmatch.py                  55     18     28      2    61%
14:54:53 docker/utils/json_stream.py              40      8     14      2    78%
14:54:53 docker/utils/ports.py                    50      3     32      2    91%
14:54:53 docker/utils/proxy.py                    32      1     12      0    98%
14:54:53 docker/utils/socket.py                   85     10     40      8    84%
14:54:53 docker/utils/utils.py                   278     18    171     13    92%
14:54:53 docker/version.py                         2      0      2      0   100%
14:54:53 -----------------------------------------------------------------------
14:54:53 TOTAL                                  5094   1818   2244    305    60%
14:54:53 
14:54:53 =========================== short test summary info ============================
14:54:53 XFAIL tests/unit/dockertypes_test.py::MountTest::test_parse_mount_bind_windows
14:54:53 SKIPPED [1] tests/unit/api_build_test.py:169: Windows-specific syntax
14:54:53 SKIPPED [1] tests/unit/client_test.py:99: Npipe Connection Pool only on Windows
14:54:53 SKIPPED [1] tests/unit/client_test.py:138: Npipe Connection Pool only on Windows
14:54:53 SKIPPED [1] tests/unit/client_test.py:212: Npipe Connection Pool only on Windows
14:54:53 SKIPPED [1] tests/unit/client_test.py:249: Npipe Connection Pool only on Windows
14:54:53 SKIPPED [1] tests/unit/context_test.py:18: Windows specific path check
14:54:53 SKIPPED [1] tests/unit/utils_build_test.py:230: Backslash patterns only on Windows
14:54:53 SKIPPED [1] tests/unit/utils_build_test.py:252: Backslash patterns only on Windows
14:54:53 SKIPPED [1] tests/unit/utils_build_test.py:400: root user always has access ; no chmod on Windows
14:54:53 SKIPPED [1] tests/unit/utils_config_test.py:54: condition: sys.platform != 'win32'
14:54:53 ============= 1 failed, 560 passed, 10 skipped, 1 xfailed in 6.29s =============
[Pipeline] sh
14:54:54 + docker stop dpy-dind-2-0-py3.7-20.10.12
14:54:54 Error response from daemon: No such container: dpy-dind-2-0-py3.7-20.10.12
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // wrap
[Pipeline] }
[Pipeline] // withDockerRegistry
[Pipeline] }
[Pipeline] // node
[Pipeline] }
Failed in branch py3.7_20.10.12
[Pipeline] // parallel
[Pipeline] End of Pipeline

GitHub has been notified of this commit’s build result

ERROR: script returned exit code 1
Finished: FAILURE