Push event to branch mac-bootstrap-python3 Connecting to https://api.github.com using docker-jenkins/****** (docker-jenkins GitHub credentials) Obtained Jenkinsfile from b4d39eb81ceb5bf1993e5a9e92716770426f34e4 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 26028d2ce48352c9b2c3f496e963b79a4944a426 using credential jps-reader Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository https://github.com/docker/jps.git > git init /var/cloudbees-jenkins-distribution/workspace/compose_mac-bootstrap-python3@libs/jps # timeout=10 Fetching upstream changes from https://github.com/docker/jps.git > git --version # timeout=10 using GIT_ASKPASS to set credentials GitHub credentials for docker/jps > git fetch --no-tags --progress -- https://github.com/docker/jps.git +refs/heads/master:refs/remotes/origin/master > git config remote.origin.url https://github.com/docker/jps.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/master:refs/remotes/origin/master # timeout=10 > 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 using GIT_ASKPASS to set credentials GitHub credentials for docker/jps > git fetch --no-tags --progress -- https://github.com/docker/jps.git +refs/heads/master:refs/remotes/origin/master Checking out Revision 26028d2ce48352c9b2c3f496e963b79a4944a426 (master) > git config core.sparsecheckout # timeout=10 > git checkout -f 26028d2ce48352c9b2c3f496e963b79a4944a426 Commit message: "[TAR-1227] Run the sonar container as the current user (#17)" First time build. Skipping changelog. [Pipeline] Start of Pipeline [Pipeline] node Running on ubuntu-1804-overlay2 (i-03954ce678b581cb1) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [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/compose_mac-bootstrap-python3@tmp/1d2a2f4a-c9e6-44c9-963d-d01f524d21a0/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh + uname -m [Pipeline] sh + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq + docker container rm -vf 992571d85241 992571d85241 [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (build image for "alpine") [Pipeline] checkout using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Fetching without tags Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) Commit message: "Use Python3 for macOS build environment" First time build. Skipping changelog. > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 [Pipeline] sh fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 + git rev-parse HEAD [Pipeline] sh + docker pull dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 Error response from daemon: manifest for dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 not found: manifest unknown: manifest unknown [Pipeline] sh + script/build/write-git-sha + GIT_COMMIT=b4d39eb8 + docker build -t dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --target build --build-arg BUILD_PLATFORM=alpine --build-arg GIT_COMMIT=b4d39eb81ceb5bf1993e5a9e92716770426f34e4 . Sending build context to Docker daemon 1.874MB Step 1/32 : ARG DOCKER_VERSION=18.09.7 Step 2/32 : ARG PYTHON_VERSION=3.7.4 Step 3/32 : ARG BUILD_ALPINE_VERSION=3.10 Step 4/32 : ARG BUILD_DEBIAN_VERSION=slim-stretch Step 5/32 : ARG RUNTIME_ALPINE_VERSION=3.10.1 Step 6/32 : ARG RUNTIME_DEBIAN_VERSION=stretch-20190812-slim Step 7/32 : ARG BUILD_PLATFORM=alpine Step 8/32 : FROM docker:${DOCKER_VERSION} AS docker-cli 18.09.7: Pulling from library/docker 050382585609: Already exists 0bb4ee3360d7: Pulling fs layer 893f09c2afb0: Pulling fs layer 3204ba24bdf5: Pulling fs layer c7a4c34d84a5: Pulling fs layer 758ee1f25c37: Pulling fs layer c7a4c34d84a5: Waiting 758ee1f25c37: Waiting 893f09c2afb0: Verifying Checksum 893f09c2afb0: Download complete 0bb4ee3360d7: Verifying Checksum 0bb4ee3360d7: Download complete c7a4c34d84a5: Verifying Checksum c7a4c34d84a5: Download complete 758ee1f25c37: Verifying Checksum 758ee1f25c37: Download complete 0bb4ee3360d7: Pull complete 893f09c2afb0: Pull complete 3204ba24bdf5: Verifying Checksum 3204ba24bdf5: Download complete 3204ba24bdf5: Pull complete c7a4c34d84a5: Pull complete 758ee1f25c37: Pull complete Digest: sha256:310156c95007d6cca1417d0692786fe4da816b886a08bc7de97edf02cab4db31 Status: Downloaded newer image for docker:18.09.7 ---> 108a4437ed8c Step 9/32 : FROM python:${PYTHON_VERSION}-alpine${BUILD_ALPINE_VERSION} AS build-alpine 3.7.4-alpine3.10: Pulling from library/python 9d48c3bd43c5: Already exists c0ea575d71b9: Already exists 0f535eceebd5: Already exists 8a30f5893bea: Already exists 287089fe229e: Already exists Digest: sha256:6673d8ce9610d166b6d7d6abda21537ddcf30e6bc8c20ca86f17f1085e20ac95 Status: Downloaded newer image for python:3.7.4-alpine3.10 ---> f309434dea3a Step 10/32 : RUN apk add --no-cache bash build-base ca-certificates curl gcc git libc-dev libffi-dev libgcc make musl-dev openssl openssl-dev python2 python2-dev zlib-dev ---> Running in 85f0b67c6308 fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/community/x86_64/APKINDEX.tar.gz (1/34) Upgrading libcrypto1.1 (1.1.1c-r0 -> 1.1.1d-r0) (2/34) Upgrading libssl1.1 (1.1.1c-r0 -> 1.1.1d-r0) (3/34) Installing bash (5.0.0-r0) Executing bash-5.0.0-r0.post-install (4/34) Installing binutils (2.32-r0) (5/34) Installing libmagic (5.37-r1) (6/34) Installing file (5.37-r1) (7/34) Installing gmp (6.1.2-r1) (8/34) Installing isl (0.18-r0) (9/34) Installing libgomp (8.3.0-r0) (10/34) Installing libatomic (8.3.0-r0) (11/34) Installing libgcc (8.3.0-r0) (12/34) Installing mpfr3 (3.1.5-r1) (13/34) Installing mpc1 (1.1.0-r0) (14/34) Installing libstdc++ (8.3.0-r0) (15/34) Installing gcc (8.3.0-r0) (16/34) Installing musl-dev (1.1.22-r3) (17/34) Installing libc-dev (0.7.1-r0) (18/34) Installing g++ (8.3.0-r0) (19/34) Installing make (4.2.1-r2) (20/34) Installing fortify-headers (1.1-r0) (21/34) Installing build-base (0.5-r1) (22/34) Installing nghttp2-libs (1.39.2-r0) (23/34) Installing libcurl (7.66.0-r0) (24/34) Installing curl (7.66.0-r0) (25/34) Installing pcre2 (10.33-r0) (26/34) Installing git (2.22.0-r0) (27/34) Installing linux-headers (4.19.36-r0) (28/34) Installing pkgconf (1.6.1-r1) (29/34) Installing libffi-dev (3.2.1-r6) (30/34) Installing openssl (1.1.1d-r0) (31/34) Installing openssl-dev (1.1.1d-r0) (32/34) Installing python2 (2.7.16-r1) (33/34) Installing python2-dev (2.7.16-r1) (34/34) Installing zlib-dev (1.2.11-r1) Executing busybox-1.30.1-r2.trigger Executing ca-certificates-20190108-r0.trigger OK: 266 MiB in 67 packages Removing intermediate container 85f0b67c6308 ---> 56c0f5c3eafd Step 11/32 : ENV BUILD_BOOTLOADER=1 ---> Running in b0ae0e0d5a4a Removing intermediate container b0ae0e0d5a4a ---> c2caf02512cf Step 12/32 : FROM python:${PYTHON_VERSION}-${BUILD_DEBIAN_VERSION} AS build-debian 3.7.4-slim-stretch: Pulling from library/python 80369df48736: Pulling fs layer aaba0609d543: Pulling fs layer 33536ac8210e: Pulling fs layer 35aa8bff600e: Pulling fs layer 6e4c9666aa4e: Pulling fs layer 35aa8bff600e: Waiting 6e4c9666aa4e: Waiting aaba0609d543: Verifying Checksum aaba0609d543: Download complete 80369df48736: Verifying Checksum 80369df48736: Download complete 35aa8bff600e: Verifying Checksum 35aa8bff600e: Download complete 33536ac8210e: Verifying Checksum 33536ac8210e: Download complete 6e4c9666aa4e: Verifying Checksum 6e4c9666aa4e: Download complete 80369df48736: Pull complete aaba0609d543: Pull complete 33536ac8210e: Pull complete 35aa8bff600e: Pull complete 6e4c9666aa4e: Pull complete Digest: sha256:34a714dec6e3387e964350dc09d9db95f16df3720d018c9ca024c1e4e20c118b Status: Downloaded newer image for python:3.7.4-slim-stretch ---> fad2b9f06d3b Step 13/32 : RUN apt-get update && apt-get install --no-install-recommends -y curl gcc git libc-dev libffi-dev libgcc-6-dev libssl-dev make openssl python2.7-dev zlib1g-dev ---> Running in 5c95dcaa11b4 Get:1 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB] Get:2 http://security.debian.org/debian-security stretch/updates/main amd64 Packages [508 kB] Ign:3 http://deb.debian.org/debian stretch InRelease Get:4 http://deb.debian.org/debian stretch-updates InRelease [91.0 kB] Get:5 http://deb.debian.org/debian stretch Release [118 kB] Get:6 http://deb.debian.org/debian stretch Release.gpg [2365 B] Get:7 http://deb.debian.org/debian stretch-updates/main amd64 Packages [27.9 kB] Get:8 http://deb.debian.org/debian stretch/main amd64 Packages [7086 kB] Fetched 7927 kB in 2s (3323 kB/s) Reading package lists... Reading package lists... Building dependency tree... Reading state information... openssl is already the newest version (1.1.0l-1~deb9u1). openssl set to manually installed. The following additional packages will be installed: binutils cpp cpp-6 gcc-6 git-man libasan3 libatomic1 libc-dev-bin libcc1-0 libcilkrts5 libcurl3 libcurl3-gnutls liberror-perl libexpat1-dev libgmp10 libgnutls30 libgomp1 libgssapi-krb5-2 libhogweed4 libidn11 libidn2-0 libisl15 libitm1 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 libldap-common liblsan0 libmpc3 libmpfr4 libmpx2 libnettle6 libnghttp2-14 libp11-kit0 libperl5.24 libpsl5 libpython2.7 libpython2.7-dev libpython2.7-minimal libpython2.7-stdlib libquadmath0 librtmp1 libsasl2-2 libsasl2-modules-db libssh2-1 libssl1.0.2 libtasn1-6 libtsan0 libubsan0 libunistring0 linux-libc-dev mime-support perl perl-modules-5.24 python2.7 python2.7-minimal Suggested packages: binutils-doc cpp-doc gcc-6-locales gcc-multilib manpages-dev autoconf automake libtool flex bison gdb gcc-doc gcc-6-multilib gcc-6-doc libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan3-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg libcilkrts5-dbg libmpx2-dbg libquadmath0-dbg gettext-base git-daemon-run | git-daemon-sysvinit git-doc git-el git-email git-gui gitk gitweb git-arch git-cvs git-mediawiki git-svn glibc-doc gnutls-bin krb5-doc krb5-user make-doc perl-doc libterm-readline-gnu-perl | libterm-readline-perl-perl python2.7-doc binfmt-support Recommended packages: patch less rsync ssh-client manpages manpages-dev krb5-locales publicsuffix libsasl2-modules libssl-doc bzip2 file xz-utils rename The following NEW packages will be installed: binutils cpp cpp-6 curl gcc gcc-6 git git-man libasan3 libatomic1 libc-dev-bin libc6-dev libcc1-0 libcilkrts5 libcurl3 libcurl3-gnutls liberror-perl libexpat1-dev libffi-dev libgcc-6-dev libgmp10 libgnutls30 libgomp1 libgssapi-krb5-2 libhogweed4 libidn11 libidn2-0 libisl15 libitm1 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 libldap-common liblsan0 libmpc3 libmpfr4 libmpx2 libnettle6 libnghttp2-14 libp11-kit0 libperl5.24 libpsl5 libpython2.7 libpython2.7-dev libpython2.7-minimal libpython2.7-stdlib libquadmath0 librtmp1 libsasl2-2 libsasl2-modules-db libssh2-1 libssl-dev libssl1.0.2 libtasn1-6 libtsan0 libubsan0 libunistring0 linux-libc-dev make mime-support perl perl-modules-5.24 python2.7 python2.7-dev python2.7-minimal zlib1g-dev 0 upgraded, 68 newly installed, 0 to remove and 0 not upgraded. Need to get 79.6 MB of archives. After this operation, 271 MB of additional disk space will be used. Get:1 http://security.debian.org/debian-security stretch/updates/main amd64 libnghttp2-14 amd64 1.18.1-1+deb9u1 [79.2 kB] Get:2 http://security.debian.org/debian-security stretch/updates/main amd64 libssl1.0.2 amd64 1.0.2t-1~deb9u1 [1304 kB] Get:3 http://security.debian.org/debian-security stretch/updates/main amd64 linux-libc-dev amd64 4.9.189-3+deb9u2 [1447 kB] Get:4 http://security.debian.org/debian-security stretch/updates/main amd64 libexpat1-dev amd64 2.2.0-2+deb9u3 [134 kB] Get:5 http://security.debian.org/debian-security stretch/updates/main amd64 libssl-dev amd64 1.1.0l-1~deb9u1 [1594 kB] Get:6 http://deb.debian.org/debian stretch/main amd64 perl-modules-5.24 all 5.24.1-3+deb9u5 [2722 kB] Get:7 http://deb.debian.org/debian stretch/main amd64 libperl5.24 amd64 5.24.1-3+deb9u5 [3501 kB] Get:8 http://deb.debian.org/debian stretch/main amd64 perl amd64 5.24.1-3+deb9u5 [219 kB] Get:9 http://deb.debian.org/debian stretch/main amd64 libgmp10 amd64 2:6.1.2+dfsg-1 [253 kB] Get:10 http://deb.debian.org/debian stretch/main amd64 libnettle6 amd64 3.3-1+b2 [192 kB] Get:11 http://deb.debian.org/debian stretch/main amd64 libhogweed4 amd64 3.3-1+b2 [136 kB] Get:12 http://deb.debian.org/debian stretch/main amd64 libidn11 amd64 1.33-1 [115 kB] Get:13 http://deb.debian.org/debian stretch/main amd64 libp11-kit0 amd64 0.23.3-2 [111 kB] Get:14 http://deb.debian.org/debian stretch/main amd64 libtasn1-6 amd64 4.10-1.1+deb9u1 [50.6 kB] Get:15 http://deb.debian.org/debian stretch/main amd64 libgnutls30 amd64 3.5.8-5+deb9u4 [896 kB] Get:16 http://deb.debian.org/debian stretch/main amd64 libkeyutils1 amd64 1.5.9-9 [12.4 kB] Get:17 http://deb.debian.org/debian stretch/main amd64 libkrb5support0 amd64 1.15-1+deb9u1 [61.9 kB] Get:18 http://deb.debian.org/debian stretch/main amd64 libk5crypto3 amd64 1.15-1+deb9u1 [119 kB] Get:19 http://deb.debian.org/debian stretch/main amd64 libkrb5-3 amd64 1.15-1+deb9u1 [311 kB] Get:20 http://deb.debian.org/debian stretch/main amd64 libgssapi-krb5-2 amd64 1.15-1+deb9u1 [155 kB] Get:21 http://deb.debian.org/debian stretch/main amd64 libunistring0 amd64 0.9.6+really0.9.3-0.1 [279 kB] Get:22 http://deb.debian.org/debian stretch/main amd64 libidn2-0 amd64 0.16-1+deb9u1 [60.7 kB] Get:23 http://deb.debian.org/debian stretch/main amd64 libsasl2-modules-db amd64 2.1.27~101-g0780600+dfsg-3 [68.2 kB] Get:24 http://deb.debian.org/debian stretch/main amd64 libsasl2-2 amd64 2.1.27~101-g0780600+dfsg-3 [105 kB] Get:25 http://deb.debian.org/debian stretch/main amd64 libldap-common all 2.4.44+dfsg-5+deb9u3 [85.7 kB] Get:26 http://deb.debian.org/debian stretch/main amd64 libldap-2.4-2 amd64 2.4.44+dfsg-5+deb9u3 [220 kB] Get:27 http://deb.debian.org/debian stretch/main amd64 libpsl5 amd64 0.17.0-3 [41.8 kB] Get:28 http://deb.debian.org/debian stretch/main amd64 librtmp1 amd64 2.4+20151223.gitfa8646d.1-1+b1 [60.4 kB] Get:29 http://deb.debian.org/debian stretch/main amd64 libssh2-1 amd64 1.7.0-1+deb9u1 [139 kB] Get:30 http://deb.debian.org/debian stretch/main amd64 libcurl3-gnutls amd64 7.52.1-5+deb9u9 [290 kB] Get:31 http://deb.debian.org/debian stretch/main amd64 liberror-perl all 0.17024-1 [26.9 kB] Get:32 http://deb.debian.org/debian stretch/main amd64 git-man all 1:2.11.0-3+deb9u4 [1433 kB] Get:33 http://deb.debian.org/debian stretch/main amd64 git amd64 1:2.11.0-3+deb9u4 [4167 kB] Get:34 http://deb.debian.org/debian stretch/main amd64 libpython2.7-minimal amd64 2.7.13-2+deb9u3 [389 kB] Get:35 http://deb.debian.org/debian stretch/main amd64 python2.7-minimal amd64 2.7.13-2+deb9u3 [1382 kB] Get:36 http://deb.debian.org/debian stretch/main amd64 mime-support all 3.60 [36.7 kB] Get:37 http://deb.debian.org/debian stretch/main amd64 libpython2.7-stdlib amd64 2.7.13-2+deb9u3 [1897 kB] Get:38 http://deb.debian.org/debian stretch/main amd64 python2.7 amd64 2.7.13-2+deb9u3 [285 kB] Get:39 http://deb.debian.org/debian stretch/main amd64 binutils amd64 2.28-5 [3770 kB] Get:40 http://deb.debian.org/debian stretch/main amd64 libisl15 amd64 0.18-1 [564 kB] Get:41 http://deb.debian.org/debian stretch/main amd64 libmpfr4 amd64 3.1.5-1 [556 kB] Get:42 http://deb.debian.org/debian stretch/main amd64 libmpc3 amd64 1.0.3-1+b2 [39.9 kB] Get:43 http://deb.debian.org/debian stretch/main amd64 cpp-6 amd64 6.3.0-18+deb9u1 [6584 kB] Get:44 http://deb.debian.org/debian stretch/main amd64 cpp amd64 4:6.3.0-4 [18.7 kB] Get:45 http://deb.debian.org/debian stretch/main amd64 libcurl3 amd64 7.52.1-5+deb9u9 [292 kB] Get:46 http://deb.debian.org/debian stretch/main amd64 curl amd64 7.52.1-5+deb9u9 [227 kB] Get:47 http://deb.debian.org/debian stretch/main amd64 libcc1-0 amd64 6.3.0-18+deb9u1 [30.6 kB] Get:48 http://deb.debian.org/debian stretch/main amd64 libgomp1 amd64 6.3.0-18+deb9u1 [73.3 kB] Get:49 http://deb.debian.org/debian stretch/main amd64 libitm1 amd64 6.3.0-18+deb9u1 [27.3 kB] Get:50 http://deb.debian.org/debian stretch/main amd64 libatomic1 amd64 6.3.0-18+deb9u1 [8966 B] Get:51 http://deb.debian.org/debian stretch/main amd64 libasan3 amd64 6.3.0-18+deb9u1 [311 kB] Get:52 http://deb.debian.org/debian stretch/main amd64 liblsan0 amd64 6.3.0-18+deb9u1 [115 kB] Get:53 http://deb.debian.org/debian stretch/main amd64 libtsan0 amd64 6.3.0-18+deb9u1 [257 kB] Get:54 http://deb.debian.org/debian stretch/main amd64 libubsan0 amd64 6.3.0-18+deb9u1 [107 kB] Get:55 http://deb.debian.org/debian stretch/main amd64 libcilkrts5 amd64 6.3.0-18+deb9u1 [40.5 kB] Get:56 http://deb.debian.org/debian stretch/main amd64 libmpx2 amd64 6.3.0-18+deb9u1 [11.2 kB] Get:57 http://deb.debian.org/debian stretch/main amd64 libquadmath0 amd64 6.3.0-18+deb9u1 [131 kB] Get:58 http://deb.debian.org/debian stretch/main amd64 libgcc-6-dev amd64 6.3.0-18+deb9u1 [2296 kB] Get:59 http://deb.debian.org/debian stretch/main amd64 gcc-6 amd64 6.3.0-18+deb9u1 [6900 kB] Get:60 http://deb.debian.org/debian stretch/main amd64 gcc amd64 4:6.3.0-4 [5196 B] Get:61 http://deb.debian.org/debian stretch/main amd64 libc-dev-bin amd64 2.24-11+deb9u4 [259 kB] Get:62 http://deb.debian.org/debian stretch/main amd64 libc6-dev amd64 2.24-11+deb9u4 [2364 kB] Get:63 http://deb.debian.org/debian stretch/main amd64 libffi-dev amd64 3.2.1-6 [161 kB] Get:64 http://deb.debian.org/debian stretch/main amd64 libpython2.7 amd64 2.7.13-2+deb9u3 [1071 kB] Get:65 http://deb.debian.org/debian stretch/main amd64 libpython2.7-dev amd64 2.7.13-2+deb9u3 [28.2 MB] Get:66 http://deb.debian.org/debian stretch/main amd64 make amd64 4.1-9.1 [302 kB] Get:67 http://deb.debian.org/debian stretch/main amd64 python2.7-dev amd64 2.7.13-2+deb9u3 [290 kB] Get:68 http://deb.debian.org/debian stretch/main amd64 zlib1g-dev amd64 1:1.2.8.dfsg-5 [205 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 79.6 MB in 2s (35.0 MB/s) Selecting previously unselected package perl-modules-5.24. (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 ... 6710 files and directories currently installed.) Preparing to unpack .../00-perl-modules-5.24_5.24.1-3+deb9u5_all.deb ... Unpacking perl-modules-5.24 (5.24.1-3+deb9u5) ... Selecting previously unselected package libperl5.24:amd64. Preparing to unpack .../01-libperl5.24_5.24.1-3+deb9u5_amd64.deb ... Unpacking libperl5.24:amd64 (5.24.1-3+deb9u5) ... Selecting previously unselected package perl. Preparing to unpack .../02-perl_5.24.1-3+deb9u5_amd64.deb ... Unpacking perl (5.24.1-3+deb9u5) ... Selecting previously unselected package libgmp10:amd64. Preparing to unpack .../03-libgmp10_2%3a6.1.2+dfsg-1_amd64.deb ... Unpacking libgmp10:amd64 (2:6.1.2+dfsg-1) ... Selecting previously unselected package libnettle6:amd64. Preparing to unpack .../04-libnettle6_3.3-1+b2_amd64.deb ... Unpacking libnettle6:amd64 (3.3-1+b2) ... Selecting previously unselected package libhogweed4:amd64. Preparing to unpack .../05-libhogweed4_3.3-1+b2_amd64.deb ... Unpacking libhogweed4:amd64 (3.3-1+b2) ... Selecting previously unselected package libidn11:amd64. Preparing to unpack .../06-libidn11_1.33-1_amd64.deb ... Unpacking libidn11:amd64 (1.33-1) ... Selecting previously unselected package libp11-kit0:amd64. Preparing to unpack .../07-libp11-kit0_0.23.3-2_amd64.deb ... Unpacking libp11-kit0:amd64 (0.23.3-2) ... Selecting previously unselected package libtasn1-6:amd64. Preparing to unpack .../08-libtasn1-6_4.10-1.1+deb9u1_amd64.deb ... Unpacking libtasn1-6:amd64 (4.10-1.1+deb9u1) ... Selecting previously unselected package libgnutls30:amd64. Preparing to unpack .../09-libgnutls30_3.5.8-5+deb9u4_amd64.deb ... Unpacking libgnutls30:amd64 (3.5.8-5+deb9u4) ... Selecting previously unselected package libkeyutils1:amd64. Preparing to unpack .../10-libkeyutils1_1.5.9-9_amd64.deb ... Unpacking libkeyutils1:amd64 (1.5.9-9) ... Selecting previously unselected package libkrb5support0:amd64. Preparing to unpack .../11-libkrb5support0_1.15-1+deb9u1_amd64.deb ... Unpacking libkrb5support0:amd64 (1.15-1+deb9u1) ... Selecting previously unselected package libk5crypto3:amd64. Preparing to unpack .../12-libk5crypto3_1.15-1+deb9u1_amd64.deb ... Unpacking libk5crypto3:amd64 (1.15-1+deb9u1) ... Selecting previously unselected package libkrb5-3:amd64. Preparing to unpack .../13-libkrb5-3_1.15-1+deb9u1_amd64.deb ... Unpacking libkrb5-3:amd64 (1.15-1+deb9u1) ... Selecting previously unselected package libgssapi-krb5-2:amd64. Preparing to unpack .../14-libgssapi-krb5-2_1.15-1+deb9u1_amd64.deb ... Unpacking libgssapi-krb5-2:amd64 (1.15-1+deb9u1) ... Selecting previously unselected package libunistring0:amd64. Preparing to unpack .../15-libunistring0_0.9.6+really0.9.3-0.1_amd64.deb ... Unpacking libunistring0:amd64 (0.9.6+really0.9.3-0.1) ... Selecting previously unselected package libidn2-0:amd64. Preparing to unpack .../16-libidn2-0_0.16-1+deb9u1_amd64.deb ... Unpacking libidn2-0:amd64 (0.16-1+deb9u1) ... Selecting previously unselected package libsasl2-modules-db:amd64. Preparing to unpack .../17-libsasl2-modules-db_2.1.27~101-g0780600+dfsg-3_amd64.deb ... Unpacking libsasl2-modules-db:amd64 (2.1.27~101-g0780600+dfsg-3) ... Selecting previously unselected package libsasl2-2:amd64. Preparing to unpack .../18-libsasl2-2_2.1.27~101-g0780600+dfsg-3_amd64.deb ... Unpacking libsasl2-2:amd64 (2.1.27~101-g0780600+dfsg-3) ... Selecting previously unselected package libldap-common. Preparing to unpack .../19-libldap-common_2.4.44+dfsg-5+deb9u3_all.deb ... Unpacking libldap-common (2.4.44+dfsg-5+deb9u3) ... Selecting previously unselected package libldap-2.4-2:amd64. Preparing to unpack .../20-libldap-2.4-2_2.4.44+dfsg-5+deb9u3_amd64.deb ... Unpacking libldap-2.4-2:amd64 (2.4.44+dfsg-5+deb9u3) ... Selecting previously unselected package libnghttp2-14:amd64. Preparing to unpack .../21-libnghttp2-14_1.18.1-1+deb9u1_amd64.deb ... Unpacking libnghttp2-14:amd64 (1.18.1-1+deb9u1) ... Selecting previously unselected package libpsl5:amd64. Preparing to unpack .../22-libpsl5_0.17.0-3_amd64.deb ... Unpacking libpsl5:amd64 (0.17.0-3) ... Selecting previously unselected package librtmp1:amd64. Preparing to unpack .../23-librtmp1_2.4+20151223.gitfa8646d.1-1+b1_amd64.deb ... Unpacking librtmp1:amd64 (2.4+20151223.gitfa8646d.1-1+b1) ... Selecting previously unselected package libssh2-1:amd64. Preparing to unpack .../24-libssh2-1_1.7.0-1+deb9u1_amd64.deb ... Unpacking libssh2-1:amd64 (1.7.0-1+deb9u1) ... Selecting previously unselected package libcurl3-gnutls:amd64. Preparing to unpack .../25-libcurl3-gnutls_7.52.1-5+deb9u9_amd64.deb ... Unpacking libcurl3-gnutls:amd64 (7.52.1-5+deb9u9) ... Selecting previously unselected package liberror-perl. Preparing to unpack .../26-liberror-perl_0.17024-1_all.deb ... Unpacking liberror-perl (0.17024-1) ... Selecting previously unselected package git-man. Preparing to unpack .../27-git-man_1%3a2.11.0-3+deb9u4_all.deb ... Unpacking git-man (1:2.11.0-3+deb9u4) ... Selecting previously unselected package git. Preparing to unpack .../28-git_1%3a2.11.0-3+deb9u4_amd64.deb ... Unpacking git (1:2.11.0-3+deb9u4) ... Selecting previously unselected package libpython2.7-minimal:amd64. Preparing to unpack .../29-libpython2.7-minimal_2.7.13-2+deb9u3_amd64.deb ... Unpacking libpython2.7-minimal:amd64 (2.7.13-2+deb9u3) ... Selecting previously unselected package python2.7-minimal. Preparing to unpack .../30-python2.7-minimal_2.7.13-2+deb9u3_amd64.deb ... Unpacking python2.7-minimal (2.7.13-2+deb9u3) ... Selecting previously unselected package libssl1.0.2:amd64. Preparing to unpack .../31-libssl1.0.2_1.0.2t-1~deb9u1_amd64.deb ... Unpacking libssl1.0.2:amd64 (1.0.2t-1~deb9u1) ... Selecting previously unselected package mime-support. Preparing to unpack .../32-mime-support_3.60_all.deb ... Unpacking mime-support (3.60) ... Selecting previously unselected package libpython2.7-stdlib:amd64. Preparing to unpack .../33-libpython2.7-stdlib_2.7.13-2+deb9u3_amd64.deb ... Unpacking libpython2.7-stdlib:amd64 (2.7.13-2+deb9u3) ... Selecting previously unselected package python2.7. Preparing to unpack .../34-python2.7_2.7.13-2+deb9u3_amd64.deb ... Unpacking python2.7 (2.7.13-2+deb9u3) ... Selecting previously unselected package binutils. Preparing to unpack .../35-binutils_2.28-5_amd64.deb ... Unpacking binutils (2.28-5) ... Selecting previously unselected package libisl15:amd64. Preparing to unpack .../36-libisl15_0.18-1_amd64.deb ... Unpacking libisl15:amd64 (0.18-1) ... Selecting previously unselected package libmpfr4:amd64. Preparing to unpack .../37-libmpfr4_3.1.5-1_amd64.deb ... Unpacking libmpfr4:amd64 (3.1.5-1) ... Selecting previously unselected package libmpc3:amd64. Preparing to unpack .../38-libmpc3_1.0.3-1+b2_amd64.deb ... Unpacking libmpc3:amd64 (1.0.3-1+b2) ... Selecting previously unselected package cpp-6. Preparing to unpack .../39-cpp-6_6.3.0-18+deb9u1_amd64.deb ... Unpacking cpp-6 (6.3.0-18+deb9u1) ... Selecting previously unselected package cpp. Preparing to unpack .../40-cpp_4%3a6.3.0-4_amd64.deb ... Unpacking cpp (4:6.3.0-4) ... Selecting previously unselected package libcurl3:amd64. Preparing to unpack .../41-libcurl3_7.52.1-5+deb9u9_amd64.deb ... Unpacking libcurl3:amd64 (7.52.1-5+deb9u9) ... Selecting previously unselected package curl. Preparing to unpack .../42-curl_7.52.1-5+deb9u9_amd64.deb ... Unpacking curl (7.52.1-5+deb9u9) ... Selecting previously unselected package libcc1-0:amd64. Preparing to unpack .../43-libcc1-0_6.3.0-18+deb9u1_amd64.deb ... Unpacking libcc1-0:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libgomp1:amd64. Preparing to unpack .../44-libgomp1_6.3.0-18+deb9u1_amd64.deb ... Unpacking libgomp1:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libitm1:amd64. Preparing to unpack .../45-libitm1_6.3.0-18+deb9u1_amd64.deb ... Unpacking libitm1:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libatomic1:amd64. Preparing to unpack .../46-libatomic1_6.3.0-18+deb9u1_amd64.deb ... Unpacking libatomic1:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libasan3:amd64. Preparing to unpack .../47-libasan3_6.3.0-18+deb9u1_amd64.deb ... Unpacking libasan3:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package liblsan0:amd64. Preparing to unpack .../48-liblsan0_6.3.0-18+deb9u1_amd64.deb ... Unpacking liblsan0:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libtsan0:amd64. Preparing to unpack .../49-libtsan0_6.3.0-18+deb9u1_amd64.deb ... Unpacking libtsan0:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libubsan0:amd64. Preparing to unpack .../50-libubsan0_6.3.0-18+deb9u1_amd64.deb ... Unpacking libubsan0:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libcilkrts5:amd64. Preparing to unpack .../51-libcilkrts5_6.3.0-18+deb9u1_amd64.deb ... Unpacking libcilkrts5:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libmpx2:amd64. Preparing to unpack .../52-libmpx2_6.3.0-18+deb9u1_amd64.deb ... Unpacking libmpx2:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libquadmath0:amd64. Preparing to unpack .../53-libquadmath0_6.3.0-18+deb9u1_amd64.deb ... Unpacking libquadmath0:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package libgcc-6-dev:amd64. Preparing to unpack .../54-libgcc-6-dev_6.3.0-18+deb9u1_amd64.deb ... Unpacking libgcc-6-dev:amd64 (6.3.0-18+deb9u1) ... Selecting previously unselected package gcc-6. Preparing to unpack .../55-gcc-6_6.3.0-18+deb9u1_amd64.deb ... Unpacking gcc-6 (6.3.0-18+deb9u1) ... Selecting previously unselected package gcc. Preparing to unpack .../56-gcc_4%3a6.3.0-4_amd64.deb ... Unpacking gcc (4:6.3.0-4) ... Selecting previously unselected package libc-dev-bin. Preparing to unpack .../57-libc-dev-bin_2.24-11+deb9u4_amd64.deb ... Unpacking libc-dev-bin (2.24-11+deb9u4) ... Selecting previously unselected package linux-libc-dev:amd64. Preparing to unpack .../58-linux-libc-dev_4.9.189-3+deb9u2_amd64.deb ... Unpacking linux-libc-dev:amd64 (4.9.189-3+deb9u2) ... Selecting previously unselected package libc6-dev:amd64. Preparing to unpack .../59-libc6-dev_2.24-11+deb9u4_amd64.deb ... Unpacking libc6-dev:amd64 (2.24-11+deb9u4) ... Selecting previously unselected package libexpat1-dev:amd64. Preparing to unpack .../60-libexpat1-dev_2.2.0-2+deb9u3_amd64.deb ... Unpacking libexpat1-dev:amd64 (2.2.0-2+deb9u3) ... Selecting previously unselected package libffi-dev:amd64. Preparing to unpack .../61-libffi-dev_3.2.1-6_amd64.deb ... Unpacking libffi-dev:amd64 (3.2.1-6) ... Selecting previously unselected package libpython2.7:amd64. Preparing to unpack .../62-libpython2.7_2.7.13-2+deb9u3_amd64.deb ... Unpacking libpython2.7:amd64 (2.7.13-2+deb9u3) ... Selecting previously unselected package libpython2.7-dev:amd64. Preparing to unpack .../63-libpython2.7-dev_2.7.13-2+deb9u3_amd64.deb ... Unpacking libpython2.7-dev:amd64 (2.7.13-2+deb9u3) ... Selecting previously unselected package libssl-dev:amd64. Preparing to unpack .../64-libssl-dev_1.1.0l-1~deb9u1_amd64.deb ... Unpacking libssl-dev:amd64 (1.1.0l-1~deb9u1) ... Selecting previously unselected package make. Preparing to unpack .../65-make_4.1-9.1_amd64.deb ... Unpacking make (4.1-9.1) ... Selecting previously unselected package python2.7-dev. Preparing to unpack .../66-python2.7-dev_2.7.13-2+deb9u3_amd64.deb ... Unpacking python2.7-dev (2.7.13-2+deb9u3) ... Selecting previously unselected package zlib1g-dev:amd64. Preparing to unpack .../67-zlib1g-dev_1%3a1.2.8.dfsg-5_amd64.deb ... Unpacking zlib1g-dev:amd64 (1:1.2.8.dfsg-5) ... Setting up libquadmath0:amd64 (6.3.0-18+deb9u1) ... Setting up libgomp1:amd64 (6.3.0-18+deb9u1) ... Setting up libatomic1:amd64 (6.3.0-18+deb9u1) ... Setting up perl-modules-5.24 (5.24.1-3+deb9u5) ... Setting up libperl5.24:amd64 (5.24.1-3+deb9u5) ... Setting up libnettle6:amd64 (3.3-1+b2) ... Setting up git-man (1:2.11.0-3+deb9u4) ... Setting up libcc1-0:amd64 (6.3.0-18+deb9u1) ... Setting up make (4.1-9.1) ... Setting up libasan3:amd64 (6.3.0-18+deb9u1) ... Setting up libnghttp2-14:amd64 (1.18.1-1+deb9u1) ... Setting up mime-support (3.60) ... Setting up libldap-common (2.4.44+dfsg-5+deb9u3) ... Setting up libcilkrts5:amd64 (6.3.0-18+deb9u1) ... Setting up libubsan0:amd64 (6.3.0-18+deb9u1) ... Setting up libtsan0:amd64 (6.3.0-18+deb9u1) ... Setting up libssl-dev:amd64 (1.1.0l-1~deb9u1) ... Setting up libsasl2-modules-db:amd64 (2.1.27~101-g0780600+dfsg-3) ... Setting up linux-libc-dev:amd64 (4.9.189-3+deb9u2) ... Setting up libsasl2-2:amd64 (2.1.27~101-g0780600+dfsg-3) ... Setting up libffi-dev:amd64 (3.2.1-6) ... Setting up libtasn1-6:amd64 (4.10-1.1+deb9u1) ... Setting up liblsan0:amd64 (6.3.0-18+deb9u1) ... Setting up perl (5.24.1-3+deb9u5) ... update-alternatives: using /usr/bin/prename to provide /usr/bin/rename (rename) in auto mode update-alternatives: warning: skip creation of /usr/share/man/man1/rename.1.gz because associated file /usr/share/man/man1/prename.1.gz (of link group rename) doesn't exist Setting up libssl1.0.2:amd64 (1.0.2t-1~deb9u1) ... debconf: unable to initialize frontend: Dialog debconf: (TERM is not set, so the dialog frontend is not usable.) debconf: falling back to frontend: Readline Setting up libmpx2:amd64 (6.3.0-18+deb9u1) ... Setting up libgmp10:amd64 (2:6.1.2+dfsg-1) ... Setting up libssh2-1:amd64 (1.7.0-1+deb9u1) ... Processing triggers for libc-bin (2.24-11+deb9u4) ... Setting up libunistring0:amd64 (0.9.6+really0.9.3-0.1) ... Setting up libp11-kit0:amd64 (0.23.3-2) ... Setting up libmpfr4:amd64 (3.1.5-1) ... Setting up libmpc3:amd64 (1.0.3-1+b2) ... Setting up binutils (2.28-5) ... Setting up libc-dev-bin (2.24-11+deb9u4) ... Setting up libkeyutils1:amd64 (1.5.9-9) ... Setting up libpython2.7-minimal:amd64 (2.7.13-2+deb9u3) ... Setting up libc6-dev:amd64 (2.24-11+deb9u4) ... Setting up libitm1:amd64 (6.3.0-18+deb9u1) ... Setting up libpython2.7-stdlib:amd64 (2.7.13-2+deb9u3) ... Setting up libidn11:amd64 (1.33-1) ... Setting up python2.7-minimal (2.7.13-2+deb9u3) ... Linking and byte-compiling packages for runtime python2.7... Setting up zlib1g-dev:amd64 (1:1.2.8.dfsg-5) ... Setting up libidn2-0:amd64 (0.16-1+deb9u1) ... Setting up libgcc-6-dev:amd64 (6.3.0-18+deb9u1) ... Setting up liberror-perl (0.17024-1) ... Setting up libpsl5:amd64 (0.17.0-3) ... Setting up python2.7 (2.7.13-2+deb9u3) ... Setting up libkrb5support0:amd64 (1.15-1+deb9u1) ... Setting up libhogweed4:amd64 (3.3-1+b2) ... Setting up libisl15:amd64 (0.18-1) ... Setting up libpython2.7:amd64 (2.7.13-2+deb9u3) ... Setting up libexpat1-dev:amd64 (2.2.0-2+deb9u3) ... Setting up libpython2.7-dev:amd64 (2.7.13-2+deb9u3) ... Setting up cpp-6 (6.3.0-18+deb9u1) ... Setting up python2.7-dev (2.7.13-2+deb9u3) ... Setting up cpp (4:6.3.0-4) ... Setting up libk5crypto3:amd64 (1.15-1+deb9u1) ... Setting up libgnutls30:amd64 (3.5.8-5+deb9u4) ... Setting up librtmp1:amd64 (2.4+20151223.gitfa8646d.1-1+b1) ... Setting up gcc-6 (6.3.0-18+deb9u1) ... Setting up libldap-2.4-2:amd64 (2.4.44+dfsg-5+deb9u3) ... Setting up libkrb5-3:amd64 (1.15-1+deb9u1) ... Setting up gcc (4:6.3.0-4) ... Setting up libgssapi-krb5-2:amd64 (1.15-1+deb9u1) ... Setting up libcurl3:amd64 (7.52.1-5+deb9u9) ... Setting up libcurl3-gnutls:amd64 (7.52.1-5+deb9u9) ... Setting up git (1:2.11.0-3+deb9u4) ... Setting up curl (7.52.1-5+deb9u9) ... Processing triggers for libc-bin (2.24-11+deb9u4) ... Removing intermediate container 5c95dcaa11b4 ---> 97501b2192a6 Step 14/32 : FROM build-${BUILD_PLATFORM} AS build ---> c2caf02512cf Step 15/32 : COPY docker-compose-entrypoint.sh /usr/local/bin/ ---> 56090f6fe137 Step 16/32 : ENTRYPOINT ["sh", "/usr/local/bin/docker-compose-entrypoint.sh"] ---> Running in 6a9eb3af94f1 Removing intermediate container 6a9eb3af94f1 ---> ff0ce6062c20 Step 17/32 : COPY --from=docker-cli /usr/local/bin/docker /usr/local/bin/docker ---> e93670046811 Step 18/32 : WORKDIR /code/ ---> Running in fc4edf5f8210 Removing intermediate container fc4edf5f8210 ---> 56f0d47df8dc Step 19/32 : RUN pip install virtualenv==16.2.0 ---> Running in 3f9f3ffe1792 Collecting virtualenv==16.2.0 Downloading https://files.pythonhosted.org/packages/6a/d1/e0d142ce7b8a5c76adbfad01d853bca84c7c0240e35577498e20bc2ade7d/virtualenv-16.2.0-py2.py3-none-any.whl (1.9MB) Requirement already satisfied: setuptools>=18.0.0 in /usr/local/lib/python3.7/site-packages (from virtualenv==16.2.0) (41.4.0) Installing collected packages: virtualenv Successfully installed virtualenv-16.2.0 WARNING: You are using pip version 19.3; however, version 19.3.1 is available. You should consider upgrading via the 'pip install --upgrade pip' command. Removing intermediate container 3f9f3ffe1792 ---> b8f4e4d6051b Step 20/32 : RUN pip install tox==2.9.1 ---> Running in e6ec5d53df7c Collecting tox==2.9.1 Downloading https://files.pythonhosted.org/packages/1d/4e/20c679f8c5948f7c48591fde33d442e716af66a31a88f5791850a75041eb/tox-2.9.1-py2.py3-none-any.whl (73kB) Collecting six Downloading https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl Collecting pluggy<1.0,>=0.3.0 Downloading https://files.pythonhosted.org/packages/a0/28/85c7aa31b80d150b772fbe4a229487bc6644da9ccb7e427dd8cc60cb8a62/pluggy-0.13.1-py2.py3-none-any.whl Requirement already satisfied: virtualenv>=1.11.2; python_version != "3.2" in /usr/local/lib/python3.7/site-packages (from tox==2.9.1) (16.2.0) Collecting py>=1.4.17 Downloading https://files.pythonhosted.org/packages/76/bc/394ad449851729244a97857ee14d7cba61ddb268dce3db538ba2f2ba1f0f/py-1.8.0-py2.py3-none-any.whl (83kB) Collecting importlib-metadata>=0.12; python_version < "3.8" Downloading https://files.pythonhosted.org/packages/f6/d2/40b3fa882147719744e6aa50ac39cf7a22a913cbcba86a0371176c425a3b/importlib_metadata-0.23-py2.py3-none-any.whl Requirement already satisfied: setuptools>=18.0.0 in /usr/local/lib/python3.7/site-packages (from virtualenv>=1.11.2; python_version != "3.2"->tox==2.9.1) (41.4.0) Collecting zipp>=0.5 Downloading https://files.pythonhosted.org/packages/74/3d/1ee25a26411ba0401b43c6376d2316a71addcc72ef8690b101b4ea56d76a/zipp-0.6.0-py2.py3-none-any.whl Collecting more-itertools Downloading https://files.pythonhosted.org/packages/45/dc/3241eef99eb45f1def35cf93af35d1cf9ef4c0991792583b8f33ea41b092/more_itertools-7.2.0-py3-none-any.whl (57kB) Installing collected packages: six, more-itertools, zipp, importlib-metadata, pluggy, py, tox Successfully installed importlib-metadata-0.23 more-itertools-7.2.0 pluggy-0.13.1 py-1.8.0 six-1.13.0 tox-2.9.1 zipp-0.6.0 WARNING: You are using pip version 19.3; however, version 19.3.1 is available. You should consider upgrading via the 'pip install --upgrade pip' command. Removing intermediate container e6ec5d53df7c ---> efe9729f0d44 Step 21/32 : COPY requirements.txt . ---> b92ab01bcaa9 Step 22/32 : COPY requirements-dev.txt . ---> 9d63bcb8e422 Step 23/32 : COPY .pre-commit-config.yaml . ---> af49531935ba Step 24/32 : COPY tox.ini . ---> 165d26170c45 Step 25/32 : COPY setup.py . ---> bf7826eccba5 Step 26/32 : COPY README.md . ---> 230d731d20f1 Step 27/32 : COPY compose compose/ ---> 97e17bc198ad Step 28/32 : RUN tox --notest ---> Running in 46c470531c36 py27 create: /code/.tox/py27 py27 installdeps: -rrequirements.txt, -rrequirements-dev.txt py27 develop-inst: /code py27 installed: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,enum34==1.1.6,flake8==3.5.0,funcsigs==1.0.2,functools32==3.2.3.post2,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==5.0.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,subprocess32==3.5.4,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py37 create: /code/.tox/py37 py37 installdeps: -rrequirements.txt, -rrequirements-dev.txt py37 develop-inst: /code py37 installed: atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,flake8==3.5.0,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==7.2.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 pre-commit create: /code/.tox/pre-commit pre-commit installdeps: pre-commit pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 ___________________________________ summary ____________________________________ py27: skipped tests py37: skipped tests pre-commit: skipped tests congratulations :) Removing intermediate container 46c470531c36 ---> 61fe74d2c2f9 Step 29/32 : COPY . . ---> 4dde215e6750 Step 30/32 : ARG GIT_COMMIT=unknown ---> Running in ee0c041690a8 Removing intermediate container ee0c041690a8 ---> 1180c14ca90f Step 31/32 : ENV DOCKER_COMPOSE_GITSHA=$GIT_COMMIT ---> Running in 8855068cb066 Removing intermediate container 8855068cb066 ---> 3340734f2ac3 Step 32/32 : RUN script/build/linux-entrypoint ---> Running in de73533318fc + CODE_PATH=/code + VENV=/code/.tox/py37 + cd /code + mkdir -p dist + chmod 777 dist + /code/.tox/py37/bin/pip3 install -q -r requirements-build.txt + '[' -z b4d39eb81ceb5bf1993e5a9e92716770426f34e4 ']' + echo b4d39eb81ceb5bf1993e5a9e92716770426f34e4 + export PATH=/code/pyinstaller:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + PATH=/code/pyinstaller:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + '[' '!' -z 1 ']' + git clone --single-branch --branch develop https://github.com/pyinstaller/pyinstaller.git /tmp/pyinstaller Cloning into '/tmp/pyinstaller'... + cd /tmp/pyinstaller/bootloader + git checkout v3.5 Note: checking out 'v3.5'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b HEAD is now at 498e6ee0 Release 3.5. + /code/.tox/py37/bin/python3 ./waf configure --no-lsb all Setting top to : /tmp/pyinstaller/bootloader Setting out to : /tmp/pyinstaller/bootloader/build Python Version : 3.7.4 (default, Aug 21 2019, 00:19:59) [GCC 8.3.0] Checking for 'gcc' (C compiler) : /usr/bin/gcc Checking size of pointer : 8 Platform : Linux-64bit detected based on compiler Checking for flags -m64 : yes Checking for program '/usr/bin/strip' : /usr/bin/strip Checking for program 'strip' : /usr/bin/strip Checking for library dl : yes Checking for library m : yes Checking for library z : yes Checking for function unsetenv : yes Checking for function mkdtemp : yes Checking for flags -Wl,--as-needed : yes 'configure' finished successfully (0.339s) 'all' finished successfully (0.000s) 'distclean' finished successfully (0.001s) Setting top to : /tmp/pyinstaller/bootloader Setting out to : /tmp/pyinstaller/bootloader/build Python Version : 3.7.4 (default, Aug 21 2019, 00:19:59) [GCC 8.3.0] Checking for 'gcc' (C compiler) : /usr/bin/gcc Checking size of pointer : 8 Platform : Linux-64bit detected based on compiler Checking for flags -m64 : yes Checking for program '/usr/bin/strip' : /usr/bin/strip Checking for program 'strip' : /usr/bin/strip Checking for library dl : yes Checking for library m : yes Checking for library z : yes Checking for function unsetenv : yes Checking for function mkdtemp : yes Checking for flags -Wl,--as-needed : yes 'configure' finished successfully (0.308s) 'make_all' finished successfully (0.003s) Waf: Entering directory `/tmp/pyinstaller/bootloader/build/debug' [ 1/13] Compiling src/pyi_python.c [ 2/13] Compiling src/pyi_global.c [ 3/13] Compiling src/pyi_archive.c [ 4/13] Compiling src/pyi_python27_compat.c [ 5/13] Compiling src/pyi_main.c [ 6/13] Compiling src/pyi_pythonlib.c [ 7/13] Compiling src/pyi_path.c [ 8/13] Compiling src/pyi_win32_utils.c [ 9/13] Compiling src/pyi_launch.c [10/13] Compiling src/main.c [11/13] Compiling src/pyi_utils.c [12/13] Linking build/debug/run_d [13/13] Processing build/debug/run_d Waf: Leaving directory `/tmp/pyinstaller/bootloader/build/debug' 'build_debug' finished successfully (0.732s) Waf: Entering directory `/tmp/pyinstaller/bootloader/build/release' [ 1/13] Compiling src/pyi_python.c [ 2/13] Compiling src/pyi_global.c [ 3/13] Compiling src/main.c [ 4/13] Compiling src/pyi_utils.c [ 5/13] Compiling src/pyi_python27_compat.c [ 6/13] Compiling src/pyi_win32_utils.c [ 7/13] Compiling src/pyi_main.c [ 8/13] Compiling src/pyi_pythonlib.c [ 9/13] Compiling src/pyi_path.c [10/13] Compiling src/pyi_archive.c [11/13] Compiling src/pyi_launch.c [12/13] Linking build/release/run [13/13] Processing build/release/run Waf: Leaving directory `/tmp/pyinstaller/bootloader/build/release' 'build_release' finished successfully (0.700s) Waf: Entering directory `/tmp/pyinstaller/bootloader/build/debug' [13/14] Processing build/debug/run_d + install /tmp/pyinstaller/PyInstaller/bootloader/Linux-64bit/run_d (from build/debug/run_d) Waf: Leaving directory `/tmp/pyinstaller/bootloader/build/debug' 'install_debug' finished successfully (0.013s) Waf: Entering directory `/tmp/pyinstaller/bootloader/build/release' [13/14] Processing build/release/run + install /tmp/pyinstaller/PyInstaller/bootloader/Linux-64bit/run (from build/release/run) Waf: Leaving directory `/tmp/pyinstaller/bootloader/build/release' 'install_release' finished successfully (0.011s) + /code/.tox/py37/bin/pip3 install .. Processing /tmp/pyinstaller Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing wheel metadata: started Preparing wheel metadata: finished with status 'done' Requirement already satisfied: setuptools in /code/.tox/py37/lib/python3.7/site-packages (from PyInstaller==3.5) (42.0.1) Requirement already satisfied: altgraph in /code/.tox/py37/lib/python3.7/site-packages (from PyInstaller==3.5) (0.16.1) Building wheels for collected packages: PyInstaller Building wheel for PyInstaller (PEP 517): started Building wheel for PyInstaller (PEP 517): finished with status 'done' Created wheel for PyInstaller: filename=PyInstaller-3.5-cp37-none-any.whl size=2879088 sha256=da58c43f2f0fea5ef2f8cbb49d755e0ecaaaf655d0890413250e3d6daf2b2dc4 Stored in directory: /tmp/pip-ephem-wheel-cache-3brhvj3b/wheels/87/26/52/6e71dbb2b6d73f545e70263c3d348435a974f03b1e9c578887 Successfully built PyInstaller Installing collected packages: PyInstaller Found existing installation: PyInstaller 3.5 Uninstalling PyInstaller-3.5: Successfully uninstalled PyInstaller-3.5 Successfully installed PyInstaller-3.5 + cd /code + rm -Rf /tmp/pyinstaller + /code/.tox/py37/bin/pyinstaller --exclude-module pycrypto --exclude-module PyInstaller docker-compose.spec 42 INFO: PyInstaller: 3.5 42 INFO: Python: 3.7.4 45 INFO: Platform: Linux-4.15.0-1048-aws-x86_64-with 47 INFO: UPX is not available. 48 INFO: Extending PYTHONPATH with paths ['/code/bin', '/code'] 48 INFO: checking Analysis 48 INFO: Building Analysis because Analysis-00.toc is non existent 48 INFO: Initializing module dependency graph... 50 INFO: Initializing module graph hooks... 51 INFO: Analyzing base_library.zip ... 2674 INFO: running Analysis Analysis-00.toc 2686 INFO: Caching module hooks... 2690 INFO: Analyzing bin/docker-compose 2775 INFO: Processing pre-find module path hook distutils 2775 INFO: distutils: retargeting to non-venv dir '/usr/local/lib/python3.7/distutils' 2948 INFO: Processing pre-safe import module hook urllib3.packages.six.moves 3801 INFO: Processing pre-safe import module hook six.moves 6172 INFO: Loading module hooks... 6172 INFO: Loading module hook "hook-certifi.py"... 6173 INFO: Loading module hook "hook-jsonschema.py"... 6175 INFO: Loading module hook "hook-xml.py"... 6214 INFO: Loading module hook "hook-nacl.py"... 6215 INFO: Loading module hook "hook-distutils.py"... 6217 INFO: Loading module hook "hook-pkg_resources.py"... 6413 INFO: Processing pre-safe import module hook win32com 6555 INFO: Loading module hook "hook-pydoc.py"... 6555 INFO: Loading module hook "hook-sysconfig.py"... 6562 INFO: Loading module hook "hook-encodings.py"... 6599 INFO: Loading module hook "hook-cryptography.py"... 6748 INFO: Looking for ctypes DLLs Illegal option -p 6776 INFO: Analyzing run-time hooks ... 6784 INFO: Including run-time hook 'pyi_rth_certifi.py' 6785 INFO: Including run-time hook 'pyi_rth_pkgres.py' 6795 INFO: Looking for dynamic libraries 7021 INFO: Looking for eggs 7022 INFO: Using Python library /usr/local/lib/libpython3.7m.so.1.0 7031 INFO: Warnings written to /code/build/docker-compose/warn-docker-compose.txt 7082 INFO: Graph cross-reference written to /code/build/docker-compose/xref-docker-compose.html 7104 INFO: checking PYZ 7104 INFO: Building PYZ because PYZ-00.toc is non existent 7104 INFO: Building PYZ (ZlibArchive) /code/build/docker-compose/PYZ-00.pyz 7809 INFO: Building PYZ (ZlibArchive) /code/build/docker-compose/PYZ-00.pyz completed successfully. 7820 INFO: checking PKG 7820 INFO: Building PKG because PKG-00.toc is non existent 7820 INFO: Building PKG (CArchive) PKG-00.pkg 18875 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully. 18878 INFO: Bootloader /code/.tox/py37/lib/python3.7/site-packages/PyInstaller/bootloader/Linux-64bit/run 18878 INFO: checking EXE 18878 INFO: Building EXE because EXE-00.toc is non existent 18879 INFO: Building EXE from EXE-00.toc 18879 INFO: Appending archive to ELF section in EXE /code/dist/docker-compose 19204 INFO: Building EXE from EXE-00.toc completed successfully. + ls -la dist/ total 17120 drwxrwxrwx 2 root root 4096 Nov 28 16:30 . drwxr-xr-x 1 root root 4096 Nov 28 16:30 .. -rwxr-xr-x 1 root root 17516856 Nov 28 16:30 docker-compose + ldd dist/docker-compose  /lib/ld-musl-x86_64.so.1 (0x7f05d12b6000) libz.so.1 => /lib/libz.so.1 (0x7f05d1280000) libc.musl-x86_64.so.1 => /lib/ld-musl-x86_64.so.1 (0x7f05d12b6000) + mv dist/docker-compose /usr/local/bin + docker-compose version docker-compose version 1.26.0dev, build b4d39eb81ceb5bf1993e5a9e92716770426f34e4 docker-py version: 4.1.0 CPython version: 3.7.4 OpenSSL version: OpenSSL 1.1.1d 10 Sep 2019 Removing intermediate container de73533318fc ---> 50204c741109 Successfully built 50204c741109 Successfully tagged dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 [Pipeline] sh + docker push dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 The push refers to repository [docker.io/dockerbuildbot/compose] 0a7834ab2df9: Preparing 7af111468f00: Preparing 141b4555c5ed: Preparing 380f4c46c07b: Preparing 573ec0f161de: Preparing 3f45a47ad7af: Preparing d2ac9a002433: Preparing 5104485ac84a: Preparing 9e6a13e03405: Preparing 773826d878bf: Preparing f95f55853230: Preparing 104188ebf419: Preparing fad8a2bfee6c: Preparing ca844f0bb2b9: Preparing 7e2049cf03e1: Preparing bf2ea0dfed24: Preparing 2a8b7fd42278: Preparing 6a1aa47d6606: Preparing 7b66164940a3: Preparing c5728f2d608b: Preparing 03901b4a2ea8: Preparing f95f55853230: Waiting 104188ebf419: Waiting fad8a2bfee6c: Waiting ca844f0bb2b9: Waiting 7e2049cf03e1: Waiting bf2ea0dfed24: Waiting 2a8b7fd42278: Waiting 6a1aa47d6606: Waiting 7b66164940a3: Waiting c5728f2d608b: Waiting 03901b4a2ea8: Waiting 3f45a47ad7af: Waiting 9e6a13e03405: Waiting d2ac9a002433: Waiting 773826d878bf: Waiting 5104485ac84a: Waiting 380f4c46c07b: Pushed 7af111468f00: Pushed 573ec0f161de: Pushed 3f45a47ad7af: Pushed d2ac9a002433: Pushed 5104485ac84a: Pushed 9e6a13e03405: Pushed 773826d878bf: Pushed f95f55853230: Pushed fad8a2bfee6c: Pushed 0a7834ab2df9: Pushed 104188ebf419: Pushed 7e2049cf03e1: Pushed 2a8b7fd42278: Layer already exists 6a1aa47d6606: Layer already exists 7b66164940a3: Layer already exists c5728f2d608b: Layer already exists 03901b4a2ea8: Layer already exists ca844f0bb2b9: Pushed 141b4555c5ed: Pushed bf2ea0dfed24: Pushed alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: digest: sha256:33acd9dd5229f3512c6d51858964efe4f934e577ffb9a4bc7dee4eceaa37dcb9 size: 4715 [Pipeline] echo dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] echo image.id: dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 [Pipeline] node Running on ubuntu-1804-overlay2 (i-03954ce678b581cb1) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [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/compose_mac-bootstrap-python3@tmp/280b7575-c214-4f0e-b446-5b66eea41902/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] sh + docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py -n 2 docker/docker-ce recent [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] node Running on ubuntu-1804-overlay2 (i-03954ce678b581cb1) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [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/compose_mac-bootstrap-python3@tmp/37e38202-28ac-44f9-a49a-f2c3984cf4f5/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh + uname -m [Pipeline] sh + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (build image for "debian") [Pipeline] checkout using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Fetching without tags > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) Commit message: "Use Python3 for macOS build environment" [Pipeline] sh > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 + docker pull dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 Error response from daemon: manifest for dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 not found: manifest unknown: manifest unknown [Pipeline] sh + script/build/write-git-sha + GIT_COMMIT=b4d39eb8 + docker build -t dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --target build --build-arg BUILD_PLATFORM=debian --build-arg GIT_COMMIT=b4d39eb81ceb5bf1993e5a9e92716770426f34e4 . Sending build context to Docker daemon 1.874MB Step 1/32 : ARG DOCKER_VERSION=18.09.7 Step 2/32 : ARG PYTHON_VERSION=3.7.4 Step 3/32 : ARG BUILD_ALPINE_VERSION=3.10 Step 4/32 : ARG BUILD_DEBIAN_VERSION=slim-stretch Step 5/32 : ARG RUNTIME_ALPINE_VERSION=3.10.1 Step 6/32 : ARG RUNTIME_DEBIAN_VERSION=stretch-20190812-slim Step 7/32 : ARG BUILD_PLATFORM=alpine Step 8/32 : FROM docker:${DOCKER_VERSION} AS docker-cli ---> 108a4437ed8c Step 9/32 : FROM python:${PYTHON_VERSION}-alpine${BUILD_ALPINE_VERSION} AS build-alpine ---> f309434dea3a Step 10/32 : RUN apk add --no-cache bash build-base ca-certificates curl gcc git libc-dev libffi-dev libgcc make musl-dev openssl openssl-dev python2 python2-dev zlib-dev ---> Using cache ---> 56c0f5c3eafd Step 11/32 : ENV BUILD_BOOTLOADER=1 ---> Using cache ---> c2caf02512cf Step 12/32 : FROM python:${PYTHON_VERSION}-${BUILD_DEBIAN_VERSION} AS build-debian ---> fad2b9f06d3b Step 13/32 : RUN apt-get update && apt-get install --no-install-recommends -y curl gcc git libc-dev libffi-dev libgcc-6-dev libssl-dev make openssl python2.7-dev zlib1g-dev ---> Using cache ---> 97501b2192a6 Step 14/32 : FROM build-${BUILD_PLATFORM} AS build ---> 97501b2192a6 Step 15/32 : COPY docker-compose-entrypoint.sh /usr/local/bin/ ---> 719a124f4260 Step 16/32 : ENTRYPOINT ["sh", "/usr/local/bin/docker-compose-entrypoint.sh"] ---> Running in 3616e64f23f6 Removing intermediate container 3616e64f23f6 ---> 680720a897f2 Step 17/32 : COPY --from=docker-cli /usr/local/bin/docker /usr/local/bin/docker ---> 4303f9ff4dcd Step 18/32 : WORKDIR /code/ ---> Running in a8194ff6a4e0 Removing intermediate container a8194ff6a4e0 ---> be180914aee5 Step 19/32 : RUN pip install virtualenv==16.2.0 ---> Running in 1dbd056e25b5 Collecting virtualenv==16.2.0 Downloading https://files.pythonhosted.org/packages/6a/d1/e0d142ce7b8a5c76adbfad01d853bca84c7c0240e35577498e20bc2ade7d/virtualenv-16.2.0-py2.py3-none-any.whl (1.9MB) Requirement already satisfied: setuptools>=18.0.0 in /usr/local/lib/python3.7/site-packages (from virtualenv==16.2.0) (41.4.0) Installing collected packages: virtualenv Successfully installed virtualenv-16.2.0 WARNING: You are using pip version 19.3; however, version 19.3.1 is available. You should consider upgrading via the 'pip install --upgrade pip' command. Removing intermediate container 1dbd056e25b5 ---> b8d27bf735ae Step 20/32 : RUN pip install tox==2.9.1 ---> Running in 96c7ec6d668a Collecting tox==2.9.1 Downloading https://files.pythonhosted.org/packages/1d/4e/20c679f8c5948f7c48591fde33d442e716af66a31a88f5791850a75041eb/tox-2.9.1-py2.py3-none-any.whl (73kB) Requirement already satisfied: virtualenv>=1.11.2; python_version != "3.2" in /usr/local/lib/python3.7/site-packages (from tox==2.9.1) (16.2.0) Collecting six Downloading https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl Collecting py>=1.4.17 Downloading https://files.pythonhosted.org/packages/76/bc/394ad449851729244a97857ee14d7cba61ddb268dce3db538ba2f2ba1f0f/py-1.8.0-py2.py3-none-any.whl (83kB) Collecting pluggy<1.0,>=0.3.0 Downloading https://files.pythonhosted.org/packages/a0/28/85c7aa31b80d150b772fbe4a229487bc6644da9ccb7e427dd8cc60cb8a62/pluggy-0.13.1-py2.py3-none-any.whl Requirement already satisfied: setuptools>=18.0.0 in /usr/local/lib/python3.7/site-packages (from virtualenv>=1.11.2; python_version != "3.2"->tox==2.9.1) (41.4.0) Collecting importlib-metadata>=0.12; python_version < "3.8" Downloading https://files.pythonhosted.org/packages/f6/d2/40b3fa882147719744e6aa50ac39cf7a22a913cbcba86a0371176c425a3b/importlib_metadata-0.23-py2.py3-none-any.whl Collecting zipp>=0.5 Downloading https://files.pythonhosted.org/packages/74/3d/1ee25a26411ba0401b43c6376d2316a71addcc72ef8690b101b4ea56d76a/zipp-0.6.0-py2.py3-none-any.whl Collecting more-itertools Downloading https://files.pythonhosted.org/packages/45/dc/3241eef99eb45f1def35cf93af35d1cf9ef4c0991792583b8f33ea41b092/more_itertools-7.2.0-py3-none-any.whl (57kB) Installing collected packages: six, py, more-itertools, zipp, importlib-metadata, pluggy, tox Successfully installed importlib-metadata-0.23 more-itertools-7.2.0 pluggy-0.13.1 py-1.8.0 six-1.13.0 tox-2.9.1 zipp-0.6.0 WARNING: You are using pip version 19.3; however, version 19.3.1 is available. You should consider upgrading via the 'pip install --upgrade pip' command. Removing intermediate container 96c7ec6d668a ---> b7bc2d32499c Step 21/32 : COPY requirements.txt . ---> 1efcfae073a1 Step 22/32 : COPY requirements-dev.txt . ---> eda28d5163a1 Step 23/32 : COPY .pre-commit-config.yaml . ---> 4274863a9c31 Step 24/32 : COPY tox.ini . ---> 2918eba604dd Step 25/32 : COPY setup.py . ---> fd7509b3d59f Step 26/32 : COPY README.md . ---> ea57cadba93d Step 27/32 : COPY compose compose/ ---> 9e56d81587fb Step 28/32 : RUN tox --notest ---> Running in 53b0f5c43cfd py27 create: /code/.tox/py27 py27 installdeps: -rrequirements.txt, -rrequirements-dev.txt py27 develop-inst: /code py27 installed: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,enum34==1.1.6,flake8==3.5.0,funcsigs==1.0.2,functools32==3.2.3.post2,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==5.0.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,subprocess32==3.5.4,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py37 create: /code/.tox/py37 py37 installdeps: -rrequirements.txt, -rrequirements-dev.txt py37 develop-inst: /code py37 installed: atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,flake8==3.5.0,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==7.2.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 pre-commit create: /code/.tox/pre-commit pre-commit installdeps: pre-commit pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 ___________________________________ summary ____________________________________ py27: skipped tests py37: skipped tests pre-commit: skipped tests congratulations :) Removing intermediate container 53b0f5c43cfd ---> 8182825aa047 Step 29/32 : COPY . . ---> affee0df26c7 Step 30/32 : ARG GIT_COMMIT=unknown ---> Running in 99f68e97598b Removing intermediate container 99f68e97598b ---> cd1e4c30de47 Step 31/32 : ENV DOCKER_COMPOSE_GITSHA=$GIT_COMMIT ---> Running in 98f4424dd43a Removing intermediate container 98f4424dd43a ---> a361d79e87c6 Step 32/32 : RUN script/build/linux-entrypoint ---> Running in fc69a5c96721 + CODE_PATH=/code + VENV=/code/.tox/py37 + cd /code + mkdir -p dist + chmod 777 dist + /code/.tox/py37/bin/pip3 install -q -r requirements-build.txt + '[' -z b4d39eb81ceb5bf1993e5a9e92716770426f34e4 ']' + echo b4d39eb81ceb5bf1993e5a9e92716770426f34e4 + export PATH=/code/pyinstaller:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + PATH=/code/pyinstaller:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin NOT compiling bootloader!!! + '[' '!' -z '' ']' + echo 'NOT compiling bootloader!!!' + /code/.tox/py37/bin/pyinstaller --exclude-module pycrypto --exclude-module PyInstaller docker-compose.spec 37 INFO: PyInstaller: 3.5 37 INFO: Python: 3.7.4 38 INFO: Platform: Linux-4.15.0-1048-aws-x86_64-with-debian-9.11 40 INFO: UPX is not available. 41 INFO: Extending PYTHONPATH with paths ['/code/bin', '/code'] 41 INFO: checking Analysis 41 INFO: Building Analysis because Analysis-00.toc is non existent 41 INFO: Initializing module dependency graph... 43 INFO: Initializing module graph hooks... 44 INFO: Analyzing base_library.zip ... 2536 INFO: running Analysis Analysis-00.toc 2553 INFO: Caching module hooks... 2557 INFO: Analyzing bin/docker-compose 2639 INFO: Processing pre-find module path hook distutils 2640 INFO: distutils: retargeting to non-venv dir '/usr/local/lib/python3.7/distutils' 2816 INFO: Processing pre-safe import module hook urllib3.packages.six.moves 3669 INFO: Processing pre-safe import module hook six.moves 6049 INFO: Loading module hooks... 6049 INFO: Loading module hook "hook-certifi.py"... 6050 INFO: Loading module hook "hook-jsonschema.py"... 6051 INFO: Loading module hook "hook-xml.py"... 6090 INFO: Loading module hook "hook-nacl.py"... 6092 INFO: Loading module hook "hook-distutils.py"... 6093 INFO: Loading module hook "hook-pkg_resources.py"... 6358 INFO: Processing pre-safe import module hook win32com 6512 INFO: Loading module hook "hook-pydoc.py"... 6513 INFO: Loading module hook "hook-sysconfig.py"... 6519 INFO: Loading module hook "hook-encodings.py"... 6558 INFO: Loading module hook "hook-cryptography.py"... 6719 INFO: Looking for ctypes DLLs 6753 INFO: Analyzing run-time hooks ... 6762 INFO: Including run-time hook 'pyi_rth_certifi.py' 6763 INFO: Including run-time hook 'pyi_rth_pkgres.py' 6774 INFO: Looking for dynamic libraries 7301 INFO: Looking for eggs 7301 INFO: Using Python library /usr/local/lib/libpython3.7m.so.1.0 7310 INFO: Warnings written to /code/build/docker-compose/warn-docker-compose.txt 7363 INFO: Graph cross-reference written to /code/build/docker-compose/xref-docker-compose.html 7385 INFO: checking PYZ 7385 INFO: Building PYZ because PYZ-00.toc is non existent 7385 INFO: Building PYZ (ZlibArchive) /code/build/docker-compose/PYZ-00.pyz 8076 INFO: Building PYZ (ZlibArchive) /code/build/docker-compose/PYZ-00.pyz completed successfully. 8091 INFO: checking PKG 8091 INFO: Building PKG because PKG-00.toc is non existent 8092 INFO: Building PKG (CArchive) PKG-00.pkg 17819 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully. 17823 INFO: Bootloader /code/.tox/py37/lib/python3.7/site-packages/PyInstaller/bootloader/Linux-64bit/run 17823 INFO: checking EXE 17823 INFO: Building EXE because EXE-00.toc is non existent 17823 INFO: Building EXE from EXE-00.toc 17823 INFO: Appending archive to ELF section in EXE /code/dist/docker-compose 18070 INFO: Building EXE from EXE-00.toc completed successfully. + ls -la dist/ total 16648 drwxrwxrwx 2 root root 4096 Nov 28 16:33 . drwxr-xr-x 1 root root 4096 Nov 28 16:33 .. -rwxr-xr-x 1 root root 17032176 Nov 28 16:33 docker-compose + ldd dist/docker-compose  linux-vdso.so.1 (0x00007ffda910f000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f00ece4c000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f00ecc32000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f00ec893000) /lib64/ld-linux-x86-64.so.2 (0x00007f00ed050000) + mv dist/docker-compose /usr/local/bin + docker-compose version docker-compose version 1.26.0dev, build b4d39eb81ceb5bf1993e5a9e92716770426f34e4 docker-py version: 4.1.0 CPython version: 3.7.4 OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019 Removing intermediate container fc69a5c96721 ---> 4a46884d458b Successfully built 4a46884d458b Successfully tagged dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 [Pipeline] sh + docker push dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 The push refers to repository [docker.io/dockerbuildbot/compose] ddccbdcada05: Preparing 9341c42476de: Preparing cf869ee80450: Preparing ec0f79e12b4c: Preparing b904ea8228a5: Preparing 01de40537954: Preparing 6e22df93f88b: Preparing 238e8f815de0: Preparing 68ddac1d0a6c: Preparing 33c6f553cf07: Preparing 4dea1c0f9309: Preparing 9c853c032ab4: Preparing c57d5da68e83: Preparing 7ba8e80f2d54: Preparing e7944d5e21db: Preparing f6e88c8186e5: Preparing 99a2e7cd1f0d: Preparing a8f0218d77da: Preparing b3edacbcd846: Preparing 896510bee743: Preparing 67ecfc9591c8: Preparing 01de40537954: Waiting 6e22df93f88b: Waiting 238e8f815de0: Waiting 68ddac1d0a6c: Waiting 33c6f553cf07: Waiting 4dea1c0f9309: Waiting 9c853c032ab4: Waiting c57d5da68e83: Waiting 7ba8e80f2d54: Waiting e7944d5e21db: Waiting f6e88c8186e5: Waiting 99a2e7cd1f0d: Waiting a8f0218d77da: Waiting b3edacbcd846: Waiting 896510bee743: Waiting 67ecfc9591c8: Waiting ec0f79e12b4c: Pushed b904ea8228a5: Pushed 9341c42476de: Pushed 01de40537954: Pushed 238e8f815de0: Pushed 6e22df93f88b: Pushed 68ddac1d0a6c: Pushed 33c6f553cf07: Pushed 4dea1c0f9309: Pushed 9c853c032ab4: Pushed c57d5da68e83: Pushed ddccbdcada05: Pushed 99a2e7cd1f0d: Layer already exists a8f0218d77da: Layer already exists b3edacbcd846: Layer already exists 896510bee743: Layer already exists 67ecfc9591c8: Layer already exists e7944d5e21db: Pushed 7ba8e80f2d54: Pushed cf869ee80450: Pushed f6e88c8186e5: Pushed debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: digest: sha256:51efd6f7abd8d73c320bbef9efe836f75941a4864697cb672c18644982485b96 size: 4718 [Pipeline] echo dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] echo image.id: dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 [Pipeline] node Running on ubuntu-1804-overlay2 (i-03954ce678b581cb1) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [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/compose_mac-bootstrap-python3@tmp/75849805-417f-407b-8f07-49072d982f1b/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] sh + docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py -n 2 docker/docker-ce recent [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] parallel [Pipeline] { (Branch: alpine_19.03.5_py27) [Pipeline] { (Branch: alpine_19.03.5_py37) [Pipeline] { (Branch: alpine_18.09.9_py27) [Pipeline] { (Branch: alpine_18.09.9_py37) [Pipeline] { (Branch: debian_19.03.5_py27) [Pipeline] { (Branch: debian_19.03.5_py37) [Pipeline] { (Branch: debian_18.09.9_py27) [Pipeline] { (Branch: debian_18.09.9_py37) [Pipeline] node [Pipeline] node Running on ubuntu-1804-overlay2 (i-03954ce678b581cb1) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [Pipeline] node [Pipeline] node [Pipeline] node [Pipeline] node [Pipeline] node [Pipeline] node [Pipeline] { [Pipeline] withDockerRegistry $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_mac-bootstrap-python3@tmp/da231247-201d-4743-a188-db16572221ef/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh + uname -m [Pipeline] sh + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py27 / docker=19.03.5 / baseImage=alpine) [Pipeline] checkout using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Fetching without tags Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) Commit message: "Use Python3 for macOS build environment" > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 [Pipeline] sh fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 + docker info + awk -F : $1 == "Storage Driver" { print $2; exit } WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_mac-bootstrap-python3/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=19.03.5 -e BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 -e PY_TEST_VERSIONS=py27 --entrypoint=script/test/ci dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --verbose + docker version Client: Docker Engine - Community Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:54:15 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.2 API version: 1.40 (minimum version 1.12) Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:27:45 2019 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683 + export DOCKER_VERSIONS=19.03.5 + DOCKER_VERSIONS=19.03.5 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=a4f73cd09f55 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=a4f73cd09f55 dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tox -e pre-commit pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='2823684913' pre-commit runtests: commands[0] | pre-commit install pre-commit installed at .git/hooks/pre-commit pre-commit runtests: commands[1] | pre-commit run --all-files [WARNING] Unexpected key(s) present on git://github.com/pre-commit/pre-commit-hooks: sha [WARNING] Unexpected key(s) present on git://github.com/asottile/reorder_python_imports: sha [INFO] Initializing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. [INFO] Installing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... Running on ubuntu-1804-overlay2 (i-05ee72c02b2491052) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [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/compose_mac-bootstrap-python3@tmp/1128094b-6640-439b-b640-6e5b80e3ef2a/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh + uname -m [Pipeline] sh Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&amd64&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&amd64&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&amd64&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&amd64&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&amd64&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&amd64&&!zfs’ + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq + docker container rm -vf 4a391e8b920a 4a391e8b920a [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py37 / docker=19.03.5 / baseImage=alpine) [Pipeline] checkout using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Fetching without tags > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) Commit message: "Use Python3 for macOS build environment" [Pipeline] sh + docker info + awk -F : $1 == "Storage Driver" { print $2; exit } > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 [INFO] Installing environment for git://github.com/asottile/reorder_python_imports. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_mac-bootstrap-python3/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=19.03.5 -e BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 -e PY_TEST_VERSIONS=py37 --entrypoint=script/test/ci dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --verbose Unable to find image 'dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4' locally alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: Pulling from dockerbuildbot/compose 9d48c3bd43c5: Already exists c0ea575d71b9: Pulling fs layer 0f535eceebd5: Pulling fs layer 8a30f5893bea: Pulling fs layer 287089fe229e: Pulling fs layer cb94f67fb7d6: Pulling fs layer 2794c601221e: Pulling fs layer 43934bc66d7f: Pulling fs layer 4d716d20fd42: Pulling fs layer 38aadf80ccbf: Pulling fs layer 8f1be648d404: Pulling fs layer 44173d82bf29: Pulling fs layer 4e1e723afd5f: Pulling fs layer d9d7ca1a3599: Pulling fs layer 075771ee96fd: Pulling fs layer df038e6f1d7c: Pulling fs layer 72e2c6c3275c: Pulling fs layer 579d3079ca19: Pulling fs layer 1a5a621dd121: Pulling fs layer 25d24ffca9e7: Pulling fs layer da40aa404c9e: Pulling fs layer 287089fe229e: Waiting cb94f67fb7d6: Waiting 2794c601221e: Waiting 43934bc66d7f: Waiting 4d716d20fd42: Waiting 38aadf80ccbf: Waiting 8f1be648d404: Waiting 44173d82bf29: Waiting 4e1e723afd5f: Waiting d9d7ca1a3599: Waiting 075771ee96fd: Waiting df038e6f1d7c: Waiting 72e2c6c3275c: Waiting 579d3079ca19: Waiting 1a5a621dd121: Waiting 25d24ffca9e7: Waiting da40aa404c9e: Waiting 8a30f5893bea: Download complete c0ea575d71b9: Verifying Checksum c0ea575d71b9: Download complete 287089fe229e: Verifying Checksum 287089fe229e: Download complete 0f535eceebd5: Verifying Checksum 0f535eceebd5: Download complete 2794c601221e: Verifying Checksum 2794c601221e: Download complete c0ea575d71b9: Pull complete 4d716d20fd42: Verifying Checksum 4d716d20fd42: Download complete 38aadf80ccbf: Verifying Checksum 38aadf80ccbf: Download complete 43934bc66d7f: Verifying Checksum 43934bc66d7f: Download complete 44173d82bf29: Verifying Checksum 44173d82bf29: Download complete 8f1be648d404: Verifying Checksum 8f1be648d404: Download complete 4e1e723afd5f: Verifying Checksum 4e1e723afd5f: Download complete d9d7ca1a3599: Verifying Checksum d9d7ca1a3599: Download complete 075771ee96fd: Verifying Checksum 075771ee96fd: Download complete df038e6f1d7c: Verifying Checksum df038e6f1d7c: Download complete 72e2c6c3275c: Verifying Checksum 72e2c6c3275c: Download complete 579d3079ca19: Verifying Checksum 579d3079ca19: Download complete 25d24ffca9e7: Verifying Checksum 25d24ffca9e7: Download complete cb94f67fb7d6: Verifying Checksum cb94f67fb7d6: Download complete 1a5a621dd121: Verifying Checksum 1a5a621dd121: Download complete da40aa404c9e: Verifying Checksum da40aa404c9e: Download complete 0f535eceebd5: Pull complete 8a30f5893bea: Pull complete 287089fe229e: Pull complete cb94f67fb7d6: Pull complete 2794c601221e: Pull complete 43934bc66d7f: Pull complete 4d716d20fd42: Pull complete 38aadf80ccbf: Pull complete 8f1be648d404: Pull complete 44173d82bf29: Pull complete 4e1e723afd5f: Pull complete d9d7ca1a3599: Pull complete 075771ee96fd: Pull complete df038e6f1d7c: Pull complete 72e2c6c3275c: Pull complete 579d3079ca19: Pull complete 1a5a621dd121: Pull complete 25d24ffca9e7: Pull complete da40aa404c9e: Pull complete Digest: sha256:55fa24c486fda340266cf2474c1d6346b55ad21ee5b9b79b0598e18ceef3cc3a Status: Downloaded newer image for dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 Check for added large files..............................................Passed Check docstring is first.................................................Passed Check for merge conflicts................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed Debug Statements (Python)................................................Passed Fix End of Files.........................................................Passed + docker version Client: Docker Engine - Community Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:54:15 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.2 API version: 1.40 (minimum version 1.12) Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:27:45 2019 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683 + export DOCKER_VERSIONS=19.03.5 + DOCKER_VERSIONS=19.03.5 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=e64be331bf56 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=e64be331bf56 dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tox -e pre-commit pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='3139300072' pre-commit runtests: commands[0] | pre-commit install pre-commit installed at .git/hooks/pre-commit pre-commit runtests: commands[1] | pre-commit run --all-files [WARNING] Unexpected key(s) present on git://github.com/pre-commit/pre-commit-hooks: sha [WARNING] Unexpected key(s) present on git://github.com/asottile/reorder_python_imports: sha [INFO] Initializing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. [INFO] Installing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 19.03.5 == '' ']' ++ '[' 19.03.5 == all ']' ++ BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 ++ PY_TEST_VERSIONS=py27 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 19.03.5' Running tests against Docker 19.03.5 ++ daemon_container=compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ tail -n 10 ++ docker run -d --name compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 --privileged --volume=/var/lib/docker dockerswarm/dind:19.03.5 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay 2e2737f8aa12: Verifying Checksum 2e2737f8aa12: Download complete 779c3a25c03c: Pull complete 0f66cb6cb217: Pull complete e244bd7d4480: Pull complete 2e2737f8aa12: Pull complete 4ac8ca253a47: Pull complete Digest: sha256:8e1fd4e4546bd9e8d8194471d10fce55a570c05221110e00908e111e8ce38b7f Status: Downloaded newer image for dockerswarm/dind:19.03.5 452f89a2db7ba0bde4e0d1e691cad88a5bf5a5a56c662ed5fec1386f727fb8ab ++ docker run --rm --tty --link=compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=19.03.5 --entrypoint=tox dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e py27 -- --verbose py27 develop-inst-nodeps: /code py27 installed: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,enum34==1.1.6,flake8==3.5.0,funcsigs==1.0.2,functools32==3.2.3.post2,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==5.0.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,subprocess32==3.5.4,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py27 runtests: PYTHONHASHSEED='2699657712' py27 runtests: commands[0] | mkdir -p .coverage-binfiles [INFO] Installing environment for git://github.com/asottile/reorder_python_imports. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... py27 runtests: commands[1] | py.test -v --cov=compose --cov-report html --cov-report term --cov-config=tox.ini --verbose ============================= test session starts ============================== platform linux2 -- Python 2.7.16, pytest-3.6.3, py-1.8.0, pluggy-0.6.0 -- /code/.tox/py27/bin/python2.7 cachedir: .pytest_cache rootdir: /code, inifile: tox.ini plugins: cov-2.5.1  collecting 0 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 197 items  collecting 197 items  collecting 197 items  collecting 200 items  collecting 200 items  collecting 200 items  collecting 268 items  collecting 268 items  collecting 268 items  collecting 271 items  collecting 271 items  collecting 271 items  collecting 400 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 407 items  collecting 416 items  collecting 427 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 446 items  collecting 446 items  collecting 463 items  collecting 476 items  collecting 476 items  collecting 494 items  collecting 495 items  collecting 495 items  collecting 503 items  collecting 503 items  collecting 508 items  collecting 511 items  collecting 520 items  collecting 520 items  collecting 551 items  collecting 551 items  collecting 625 items  collecting 626 items  collecting 629 items  collecting 633 items  collecting 634 items  collecting 644 items  collecting 647 items  collecting 650 items  collecting 650 items  collecting 655 items  collecting 655 items  collecting 668 items  collecting 671 items  collecting 671 items  collecting 673 items  collecting 673 items  collecting 675 items  collecting 675 items  collecting 676 items  collecting 676 items  collecting 677 items  collecting 677 items  collecting 677 items  collecting 679 items  collecting 679 items  collecting 679 items  collecting 687 items  collecting 687 items  collecting 687 items  collecting 691 items  collecting 707 items  collecting 710 items  collecting 710 items  collecting 710 items  collecting 718 items  collecting 718 items  collecting 718 items  collecting 724 items  collecting 724 items  collecting 726 items  collecting 726 items  collecting 729 items  collecting 729 items  collecting 733 items  collecting 733 items  collecting 737 items  collecting 737 items  collecting 740 items  collecting 745 items  collecting 745 items  collecting 748 items  collecting 748 items  collecting 752 items  collecting 752 items  collecting 759 items  collecting 759 items  collecting 759 items  collecting 763 items  collecting 768 items  collecting 768 items  collecting 772 items  collecting 772 items  collecting 916 items  collecting 924 items  collecting 932 items  collecting 935 items  collecting 945 items  collecting 956 items  collecting 962 items  collecting 968 items  collecting 971 items  collecting 976 items  collecting 984 items  collecting 988 items  collecting 994 items  collecting 997 items  collecting 1000 items  collecting 1012 items  collecting 1043 items  collecting 1046 items  collecting 1049 items  collecting 1056 items  collecting 1060 items  collecting 1062 items  collecting 1077 items  collecting 1077 items  collecting 1082 items  collecting 1082 items  collecting 1103 items  collecting 1115 items  collecting 1115 items  collecting 1115 items  collecting 1124 items  collecting 1124 items  collecting 1136 items  collecting 1136 items  collecting 1145 items  collecting 1145 items  collecting 1147 items  collected 1147 items  Running on ubuntu-1804-overlay2 (i-06de5a6c4d4afabdb) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [Pipeline] { [Pipeline] withDockerRegistry Running on ubuntu-1804-overlay2 (i-039301c54e7f7783b) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [Pipeline] { [Pipeline] withDockerRegistry Running on ubuntu-1804-overlay2 (i-0a973546ea3e0cb72) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [Pipeline] { [Pipeline] withDockerRegistry Running on ubuntu-1804-overlay2 (i-05461ebe3a0298f74) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [Pipeline] { [Pipeline] withDockerRegistry Running on ubuntu-1804-overlay2 (i-0b4dc77f2c0e12ba7) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [Pipeline] { [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/ $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] Check for added large files..............................................Passed Running on ubuntu-1804-overlay2 (i-025a1da9dbeab6f51) in /home/ubuntu/workspace/compose_mac-bootstrap-python3 [Pipeline] { [Pipeline] withDockerRegistry Check docstring is first.................................................Passed Check for merge conflicts................................................Passed Check Yaml...............................................................Passed $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ Check JSON...............................................................Passed Debug Statements (Python)................................................Passed Fix End of Files.........................................................Passed WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_mac-bootstrap-python3@tmp/80275bde-2ad8-4ec7-a53d-37bcede8b321/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_mac-bootstrap-python3@tmp/601e6533-ac36-4739-b0ae-db64e929f778/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/compose_mac-bootstrap-python3@tmp/bcfc4867-4331-4a23-8510-5197c9549ee0/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 cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo 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/compose_mac-bootstrap-python3@tmp/62493679-a7c2-4544-97b9-27b913ae4762/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/compose_mac-bootstrap-python3@tmp/bc879caf-d84e-4858-bf94-031b50d75b3e/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded + uname -m [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] [Pipeline] { [Pipeline] { [Pipeline] sh [Pipeline] wrap [Pipeline] wrap [Pipeline] { [Pipeline] { [Pipeline] wrap [Pipeline] wrap [Pipeline] { [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh + uname -m [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally [Pipeline] sh + uname -m [Pipeline] sh latest: Pulling from library/busybox [Pipeline] sh + uname -m [Pipeline] sh 0f8c40e1270f: Pulling fs layer 0f8c40e1270f: Verifying Checksum 0f8c40e1270f: Download complete + uname -m + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally [Pipeline] sh + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally latest: Pulling from library/busybox 0f8c40e1270f: Pulling fs layer 0f8c40e1270f: Verifying Checksum 0f8c40e1270f: Download complete latest: Pulling from library/busybox 0f8c40e1270f: Pulling fs layer + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally latest: Pulling from library/busybox 0f8c40e1270f: Pulling fs layer 0f8c40e1270f: Pull complete Digest: sha256:1303dbf110c57f3edf68d9f5a16c082ec06c4cf7604831669faf2c712260b5a0 Status: Downloaded newer image for busybox:latest WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_mac-bootstrap-python3@tmp/d1486e7e-1c6d-438f-819d-e613a0be0c1b/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [Pipeline] { 0f8c40e1270f: Verifying Checksum 0f8c40e1270f: Download complete [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh latest: Pulling from library/busybox 0f8c40e1270f: Pulling fs layer 0f8c40e1270f: Verifying Checksum 0f8c40e1270f: Download complete 0f8c40e1270f: Pull complete Digest: sha256:1303dbf110c57f3edf68d9f5a16c082ec06c4cf7604831669faf2c712260b5a0 Status: Downloaded newer image for busybox:latest 0f8c40e1270f: Pull complete 0f8c40e1270f: Verifying Checksum 0f8c40e1270f: Download complete Digest: sha256:1303dbf110c57f3edf68d9f5a16c082ec06c4cf7604831669faf2c712260b5a0 Status: Downloaded newer image for busybox:latest + uname -m 0f8c40e1270f: Pull complete [Pipeline] sh Digest: sha256:1303dbf110c57f3edf68d9f5a16c082ec06c4cf7604831669faf2c712260b5a0 Status: Downloaded newer image for busybox:latest 0f8c40e1270f: Pull complete Digest: sha256:1303dbf110c57f3edf68d9f5a16c082ec06c4cf7604831669faf2c712260b5a0 Status: Downloaded newer image for busybox:latest + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_mac-bootstrap-python3:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally latest: Pulling from library/busybox 0f8c40e1270f: Pulling fs layer 0f8c40e1270f: Verifying Checksum 0f8c40e1270f: Download complete 0f8c40e1270f: Pull complete Digest: sha256:1303dbf110c57f3edf68d9f5a16c082ec06c4cf7604831669faf2c712260b5a0 Status: Downloaded newer image for busybox:latest [Pipeline] echo Removing all docker containers [Pipeline] sh [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py27 / docker=18.09.9 / baseImage=alpine) [Pipeline] checkout + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py37 / docker=19.03.5 / baseImage=debian) [Pipeline] checkout [Pipeline] echo Removing all docker containers [Pipeline] sh [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py27 / docker=18.09.9 / baseImage=debian) [Pipeline] checkout [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py37 / docker=18.09.9 / baseImage=alpine) [Pipeline] checkout + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py27 / docker=19.03.5 / baseImage=debian) [Pipeline] checkout Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py37 / docker=18.09.9 / baseImage=debian) [Pipeline] checkout Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 19.03.5 == '' ']' ++ '[' 19.03.5 == all ']' ++ BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 ++ PY_TEST_VERSIONS=py37 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 19.03.5' Running tests against Docker 19.03.5 ++ daemon_container=compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 --privileged --volume=/var/lib/docker dockerswarm/dind:19.03.5 dockerd -H ++ tcp://0.0.0.0:2375 --storage-driver=overlay tail -n 10 using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 using credential sf-release-bot.github.ssh Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Cloning the remote Git repository Cloning with configured refspecs honoured and without tags tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_mac-bootstrap-python3 # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git > git --version # timeout=10 using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] Fetching without tags Fetching without tags Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) Fetching without tags Fetching without tags > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 Commit message: "Use Python3 for macOS build environment" > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) Commit message: "Use Python3 for macOS build environment" fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 Fetching without tags Commit message: "Use Python3 for macOS build environment" Commit message: "Use Python3 for macOS build environment" Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) [Pipeline] sh + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 Fetching without tags [Pipeline] sh Commit message: "Use Python3 for macOS build environment" Checking out Revision b4d39eb81ceb5bf1993e5a9e92716770426f34e4 (mac-bootstrap-python3) + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 [Pipeline] sh + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info [Pipeline] sh Commit message: "Use Python3 for macOS build environment" [Pipeline] sh fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 > git config --add remote.origin.fetch +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 Fetching upstream changes from git@github.com:docker/compose.git using GIT_SSH to set credentials docker-jenkins user on github.com > git fetch --no-tags --progress -- git@github.com:docker/compose.git +refs/heads/mac-bootstrap-python3:refs/remotes/origin/mac-bootstrap-python3 > git config core.sparsecheckout # timeout=10 > git checkout -f b4d39eb81ceb5bf1993e5a9e92716770426f34e4 + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info [Pipeline] sh fatal: bad object 26028d2ce48352c9b2c3f496e963b79a4944a426 + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] 2e2737f8aa12: Verifying Checksum 2e2737f8aa12: Download complete 779c3a25c03c: Pull complete 0f66cb6cb217: Pull complete e244bd7d4480: Pull complete 2e2737f8aa12: Pull complete 4ac8ca253a47: Pull complete Digest: sha256:8e1fd4e4546bd9e8d8194471d10fce55a570c05221110e00908e111e8ce38b7f Status: Downloaded newer image for dockerswarm/dind:19.03.5 05c602ed4ee61d40ca2dea56415078eb9b70596849c81dfd5e2611fd6e2589ec ++ docker run --rm --tty --link=compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=19.03.5 --entrypoint=tox dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e py37 -- --verbose py37 develop-inst-nodeps: /code py37 installed: altgraph==0.16.1,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,flake8==3.5.0,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==7.2.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyInstaller==3.5,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py37 runtests: PYTHONHASHSEED='3823681457' py37 runtests: commands[0] | mkdir -p .coverage-binfiles py37 runtests: commands[1] | py.test -v --cov=compose --cov-report html --cov-report term --cov-config=tox.ini --verbose ============================= test session starts ============================== platform linux -- Python 3.7.4, pytest-3.6.3, py-1.8.0, pluggy-0.6.0 -- /code/.tox/py37/bin/python3.7 cachedir: .pytest_cache rootdir: /code, inifile: tox.ini plugins: cov-2.5.1 WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh WARNING: No swap limit support + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_mac-bootstrap-python3/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=18.09.9 -e BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 -e PY_TEST_VERSIONS=py37 --entrypoint=script/test/ci dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --verbose Unable to find image 'dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4' locally [Pipeline] echo Using local system's storage driver: [Pipeline] sh + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_mac-bootstrap-python3/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=18.09.9 -e BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 -e PY_TEST_VERSIONS=py27 --entrypoint=script/test/ci dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --verbose Unable to find image 'dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4' locally + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_mac-bootstrap-python3/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=18.09.9 -e BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 -e PY_TEST_VERSIONS=py37 --entrypoint=script/test/ci dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --verbose Unable to find image 'dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4' locally debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: Pulling from dockerbuildbot/compose 80369df48736: Pulling fs layer aaba0609d543: Pulling fs layer 33536ac8210e: Pulling fs layer 35aa8bff600e: Pulling fs layer 6e4c9666aa4e: Pulling fs layer 7eae0e21fba7: Pulling fs layer ec40a44dce2e: Pulling fs layer 09bebf24fc45: Pulling fs layer 7bee99f179df: Pulling fs layer 1340f56fbdf7: Pulling fs layer 92cb8a05227e: Pulling fs layer e22be876b5b2: Pulling fs layer 637343fef6b4: Pulling fs layer fae7e9719c53: Pulling fs layer aea1c19c5823: Pulling fs layer e53a45cdfb18: Pulling fs layer fdd8bdfa7c8e: Pulling fs layer 0055650dcfab: Pulling fs layer a5cb80d0f2ca: Pulling fs layer 50500aa513dc: Pulling fs layer 258f1970aff3: Pulling fs layer 92cb8a05227e: Waiting e22be876b5b2: Waiting 637343fef6b4: Waiting fae7e9719c53: Waiting aea1c19c5823: Waiting e53a45cdfb18: Waiting fdd8bdfa7c8e: Waiting 0055650dcfab: Waiting a5cb80d0f2ca: Waiting 50500aa513dc: Waiting 258f1970aff3: Waiting 35aa8bff600e: Waiting 6e4c9666aa4e: Waiting 7eae0e21fba7: Waiting ec40a44dce2e: Waiting 09bebf24fc45: Waiting 7bee99f179df: Waiting 1340f56fbdf7: Waiting alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: Pulling from dockerbuildbot/compose 9d48c3bd43c5: Pulling fs layer c0ea575d71b9: Pulling fs layer 0f535eceebd5: Pulling fs layer 8a30f5893bea: Pulling fs layer 287089fe229e: Pulling fs layer cb94f67fb7d6: Pulling fs layer 2794c601221e: Pulling fs layer 43934bc66d7f: Pulling fs layer 4d716d20fd42: Pulling fs layer 38aadf80ccbf: Pulling fs layer 8f1be648d404: Pulling fs layer 44173d82bf29: Pulling fs layer 4e1e723afd5f: Pulling fs layer d9d7ca1a3599: Pulling fs layer 075771ee96fd: Pulling fs layer df038e6f1d7c: Pulling fs layer 72e2c6c3275c: Pulling fs layer 579d3079ca19: Pulling fs layer 1a5a621dd121: Pulling fs layer 25d24ffca9e7: Pulling fs layer da40aa404c9e: Pulling fs layer 8a30f5893bea: Waiting 287089fe229e: Waiting cb94f67fb7d6: Waiting 2794c601221e: Waiting 43934bc66d7f: Waiting 4d716d20fd42: Waiting 38aadf80ccbf: Waiting 8f1be648d404: Waiting 44173d82bf29: Waiting 4e1e723afd5f: Waiting d9d7ca1a3599: Waiting 075771ee96fd: Waiting df038e6f1d7c: Waiting 72e2c6c3275c: Waiting 579d3079ca19: Waiting 1a5a621dd121: Waiting 25d24ffca9e7: Waiting da40aa404c9e: Waiting c0ea575d71b9: Verifying Checksum c0ea575d71b9: Download complete 8a30f5893bea: Verifying Checksum 8a30f5893bea: Download complete 9d48c3bd43c5: Verifying Checksum WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_mac-bootstrap-python3/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=18.09.9 -e BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 -e PY_TEST_VERSIONS=py27 --entrypoint=script/test/ci dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --verbose Unable to find image 'dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4' locally debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: Pulling from dockerbuildbot/compose 80369df48736: Pulling fs layer aaba0609d543: Pulling fs layer 33536ac8210e: Pulling fs layer 35aa8bff600e: Pulling fs layer 6e4c9666aa4e: Pulling fs layer 7eae0e21fba7: Pulling fs layer ec40a44dce2e: Pulling fs layer 09bebf24fc45: Pulling fs layer 7bee99f179df: Pulling fs layer 1340f56fbdf7: Pulling fs layer 92cb8a05227e: Pulling fs layer e22be876b5b2: Pulling fs layer 637343fef6b4: Pulling fs layer fae7e9719c53: Pulling fs layer 35aa8bff600e: Waiting 6e4c9666aa4e: Waiting 7eae0e21fba7: Waiting ec40a44dce2e: Waiting 09bebf24fc45: Waiting 7bee99f179df: Waiting 1340f56fbdf7: Waiting 92cb8a05227e: Waiting e22be876b5b2: Waiting 637343fef6b4: Waiting aea1c19c5823: Pulling fs layer e53a45cdfb18: Pulling fs layer fdd8bdfa7c8e: Pulling fs layer fae7e9719c53: Waiting aea1c19c5823: Waiting 0055650dcfab: Pulling fs layer a5cb80d0f2ca: Pulling fs layer 50500aa513dc: Pulling fs layer 258f1970aff3: Pulling fs layer e53a45cdfb18: Waiting fdd8bdfa7c8e: Waiting 0055650dcfab: Waiting a5cb80d0f2ca: Waiting 50500aa513dc: Waiting 258f1970aff3: Waiting alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: Pulling from dockerbuildbot/compose 9d48c3bd43c5: Pulling fs layer c0ea575d71b9: Pulling fs layer 0f535eceebd5: Pulling fs layer 8a30f5893bea: Pulling fs layer 287089fe229e: Pulling fs layer cb94f67fb7d6: Pulling fs layer 2794c601221e: Pulling fs layer 43934bc66d7f: Pulling fs layer 4d716d20fd42: Pulling fs layer 38aadf80ccbf: Pulling fs layer 8f1be648d404: Pulling fs layer 44173d82bf29: Pulling fs layer 4e1e723afd5f: Pulling fs layer d9d7ca1a3599: Pulling fs layer 075771ee96fd: Pulling fs layer df038e6f1d7c: Pulling fs layer 72e2c6c3275c: Pulling fs layer 579d3079ca19: Pulling fs layer 1a5a621dd121: Pulling fs layer 25d24ffca9e7: Pulling fs layer da40aa404c9e: Pulling fs layer 44173d82bf29: Waiting 4e1e723afd5f: Waiting d9d7ca1a3599: Waiting 075771ee96fd: Waiting df038e6f1d7c: Waiting 72e2c6c3275c: Waiting 579d3079ca19: Waiting 1a5a621dd121: Waiting 25d24ffca9e7: Waiting 8a30f5893bea: Waiting 287089fe229e: Waiting cb94f67fb7d6: Waiting 2794c601221e: Waiting 43934bc66d7f: Waiting 4d716d20fd42: Waiting 38aadf80ccbf: Waiting 8f1be648d404: Waiting da40aa404c9e: Waiting c0ea575d71b9: Verifying Checksum c0ea575d71b9: Download complete 8a30f5893bea: Verifying Checksum 8a30f5893bea: Download complete 9d48c3bd43c5: Verifying Checksum 9d48c3bd43c5: Download complete aaba0609d543: Verifying Checksum aaba0609d543: Download complete + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_mac-bootstrap-python3/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=19.03.5 -e BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 -e PY_TEST_VERSIONS=py37 --entrypoint=script/test/ci dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --verbose Unable to find image 'dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4' locally debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: Pulling from dockerbuildbot/compose 80369df48736: Pulling fs layer aaba0609d543: Pulling fs layer 33536ac8210e: Pulling fs layer 35aa8bff600e: Pulling fs layer 6e4c9666aa4e: Pulling fs layer 7eae0e21fba7: Pulling fs layer ec40a44dce2e: Pulling fs layer 35aa8bff600e: Waiting 6e4c9666aa4e: Waiting 7eae0e21fba7: Waiting ec40a44dce2e: Waiting 09bebf24fc45: Pulling fs layer 7bee99f179df: Pulling fs layer 09bebf24fc45: Waiting 1340f56fbdf7: Pulling fs layer 92cb8a05227e: Pulling fs layer e22be876b5b2: Pulling fs layer 7bee99f179df: Waiting 1340f56fbdf7: Waiting 637343fef6b4: Pulling fs layer fae7e9719c53: Pulling fs layer aea1c19c5823: Pulling fs layer e53a45cdfb18: Pulling fs layer fdd8bdfa7c8e: Pulling fs layer 0055650dcfab: Pulling fs layer a5cb80d0f2ca: Pulling fs layer 50500aa513dc: Pulling fs layer 258f1970aff3: Pulling fs layer 92cb8a05227e: Waiting e22be876b5b2: Waiting 637343fef6b4: Waiting fae7e9719c53: Waiting aea1c19c5823: Waiting e53a45cdfb18: Waiting fdd8bdfa7c8e: Waiting 0055650dcfab: Waiting a5cb80d0f2ca: Waiting 50500aa513dc: Waiting 258f1970aff3: Waiting aaba0609d543: Verifying Checksum aaba0609d543: Download complete WARNING: No swap limit support 287089fe229e: Verifying Checksum 287089fe229e: Download complete [Pipeline] echo Using local system's storage driver: [Pipeline] sh 35aa8bff600e: Verifying Checksum 35aa8bff600e: Download complete 80369df48736: Verifying Checksum 80369df48736: Download complete 33536ac8210e: Verifying Checksum 33536ac8210e: Download complete ec40a44dce2e: Verifying Checksum ec40a44dce2e: Download complete 6e4c9666aa4e: Verifying Checksum 6e4c9666aa4e: Download complete 287089fe229e: Verifying Checksum 287089fe229e: Download complete 2794c601221e: Verifying Checksum 2794c601221e: Download complete aaba0609d543: Verifying Checksum aaba0609d543: Download complete 35aa8bff600e: Verifying Checksum 35aa8bff600e: Download complete 80369df48736: Verifying Checksum 80369df48736: Download complete 2794c601221e: Verifying Checksum 2794c601221e: Download complete 7bee99f179df: Verifying Checksum 7bee99f179df: Download complete 09bebf24fc45: Verifying Checksum 09bebf24fc45: Download complete + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_mac-bootstrap-python3/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=19.03.5 -e BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 -e PY_TEST_VERSIONS=py27 --entrypoint=script/test/ci dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 --verbose Unable to find image 'dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4' locally debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4: Pulling from dockerbuildbot/compose 80369df48736: Pulling fs layer aaba0609d543: Pulling fs layer 33536ac8210e: Pulling fs layer 35aa8bff600e: Pulling fs layer 0f535eceebd5: Verifying Checksum 0f535eceebd5: Download complete 4d716d20fd42: Verifying Checksum 4d716d20fd42: Download complete 35aa8bff600e: Verifying Checksum 35aa8bff600e: Download complete 33536ac8210e: Verifying Checksum 33536ac8210e: Download complete ec40a44dce2e: Verifying Checksum ec40a44dce2e: Download complete 6e4c9666aa4e: Verifying Checksum 6e4c9666aa4e: Download complete 7bee99f179df: Verifying Checksum 7bee99f179df: Download complete 92cb8a05227e: Verifying Checksum 92cb8a05227e: Download complete  collecting 0 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 197 items  collecting 197 items  collecting 197 items  collecting 200 items  collecting 200 items  collecting 200 items  collecting 268 items  collecting 268 items  collecting 268 items  collecting 271 items  collecting 271 items  collecting 271 items  collecting 400 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 407 items  collecting 416 items  collecting 427 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 446 items  collecting 446 items  collecting 463 items  collecting 476 items  collecting 476 items  collecting 494 items  collecting 495 items  collecting 495 items  collecting 503 items  collecting 503 items  collecting 508 items  collecting 511 items  collecting 520 items  collecting 520 items  collecting 551 items  collecting 551 items  collecting 625 items  collecting 626 items  collecting 629 items  collecting 633 items  collecting 634 items  collecting 644 items  collecting 647 items  collecting 650 items  collecting 650 items  collecting 655 items  collecting 655 items  collecting 668 items  collecting 671 items  collecting 671 items  collecting 673 items  collecting 673 items  collecting 675 items  collecting 675 items  collecting 676 items  collecting 676 items  collecting 677 items  collecting 677 items  collecting 677 items  collecting 679 items  collecting 679 items  collecting 679 items  collecting 687 items  collecting 687 items  collecting 687 items  collecting 691 items  collecting 707 items  collecting 710 items  collecting 710 items  collecting 710 items  collecting 718 items  collecting 718 items  collecting 718 items  collecting 724 items  collecting 724 items  collecting 726 items  collecting 726 items  collecting 729 items  collecting 729 items  collecting 733 items  collecting 733 items  collecting 737 items  collecting 737 items  collecting 740 items  collecting 745 items  collecting 745 items  collecting 748 items  collecting 748 items  collecting 752 items  collecting 752 items  collecting 759 items  collecting 759 items  collecting 759 items  collecting 763 items  collecting 768 items  collecting 768 items  collecting 772 items  collecting 772 items  collecting 916 items  collecting 924 items  collecting 932 items  collecting 935 items  collecting 945 items  collecting 956 items  collecting 962 items  collecting 968 items  collecting 971 items  collecting 976 items  collecting 984 items  collecting 988 items  collecting 994 items  collecting 997 items  collecting 1000 items  collecting 1012 items  collecting 1043 items  collecting 1046 items  collecting 1049 items  collecting 1056 items  collecting 1060 items  collecting 1062 items  collecting 1077 items  collecting 1077 items  collecting 1082 items  collecting 1082 items  collecting 1103 items  collecting 1115 items  collecting 1115 items  collecting 1115 items  collecting 1124 items  collecting 1124 items  collecting 1136 items  collecting 1136 items  collecting 1145 items  collecting 1145 items  collecting 1147 items  collected 1147 items  6e4c9666aa4e: Pulling fs layer 7eae0e21fba7: Pulling fs layer ec40a44dce2e: Pulling fs layer 09bebf24fc45: Pulling fs layer 7bee99f179df: Pulling fs layer 1340f56fbdf7: Pulling fs layer 92cb8a05227e: Pulling fs layer e22be876b5b2: Pulling fs layer 637343fef6b4: Pulling fs layer fae7e9719c53: Pulling fs layer aea1c19c5823: Pulling fs layer e53a45cdfb18: Pulling fs layer fdd8bdfa7c8e: Pulling fs layer 0055650dcfab: Pulling fs layer a5cb80d0f2ca: Pulling fs layer 50500aa513dc: Pulling fs layer 258f1970aff3: Pulling fs layer 35aa8bff600e: Waiting 6e4c9666aa4e: Waiting 7eae0e21fba7: Waiting ec40a44dce2e: Waiting 09bebf24fc45: Waiting 7bee99f179df: Waiting 1340f56fbdf7: Waiting 92cb8a05227e: Waiting e22be876b5b2: Waiting 637343fef6b4: Waiting fae7e9719c53: Waiting aea1c19c5823: Waiting e53a45cdfb18: Waiting fdd8bdfa7c8e: Waiting 0055650dcfab: Waiting a5cb80d0f2ca: Waiting 50500aa513dc: Waiting 258f1970aff3: Waiting aaba0609d543: Verifying Checksum aaba0609d543: Download complete 35aa8bff600e: Verifying Checksum 35aa8bff600e: Download complete 33536ac8210e: Verifying Checksum 33536ac8210e: Download complete 6e4c9666aa4e: Verifying Checksum 6e4c9666aa4e: Download complete 80369df48736: Verifying Checksum 80369df48736: Download complete ec40a44dce2e: Verifying Checksum ec40a44dce2e: Download complete 1340f56fbdf7: Verifying Checksum 1340f56fbdf7: Download complete e22be876b5b2: Verifying Checksum e22be876b5b2: Download complete 637343fef6b4: Verifying Checksum 637343fef6b4: Download complete fae7e9719c53: Verifying Checksum fae7e9719c53: Download complete aea1c19c5823: Verifying Checksum aea1c19c5823: Download complete 6e4c9666aa4e: Verifying Checksum 6e4c9666aa4e: Download complete 0f535eceebd5: Verifying Checksum 0f535eceebd5: Download complete 43934bc66d7f: Verifying Checksum 43934bc66d7f: Download complete 4d716d20fd42: Verifying Checksum 4d716d20fd42: Download complete 7bee99f179df: Verifying Checksum 7bee99f179df: Download complete 38aadf80ccbf: Verifying Checksum 38aadf80ccbf: Download complete 43934bc66d7f: Verifying Checksum 43934bc66d7f: Download complete 8f1be648d404: Verifying Checksum 8f1be648d404: Download complete 9d48c3bd43c5: Pull complete 09bebf24fc45: Verifying Checksum 09bebf24fc45: Download complete 1340f56fbdf7: Verifying Checksum 1340f56fbdf7: Download complete 92cb8a05227e: Verifying Checksum 92cb8a05227e: Download complete e53a45cdfb18: Verifying Checksum e53a45cdfb18: Download complete fdd8bdfa7c8e: Verifying Checksum fdd8bdfa7c8e: Download complete 0055650dcfab: Verifying Checksum 0055650dcfab: Download complete 33536ac8210e: Verifying Checksum 33536ac8210e: Download complete ec40a44dce2e: Verifying Checksum ec40a44dce2e: Download complete 80369df48736: Verifying Checksum 80369df48736: Download complete 7bee99f179df: Verifying Checksum 7bee99f179df: Download complete 9d48c3bd43c5: Pull complete 38aadf80ccbf: Verifying Checksum 38aadf80ccbf: Download complete 8f1be648d404: Verifying Checksum 8f1be648d404: Download complete 4e1e723afd5f: Verifying Checksum 4e1e723afd5f: Download complete 44173d82bf29: Verifying Checksum 44173d82bf29: Download complete d9d7ca1a3599: Verifying Checksum d9d7ca1a3599: Download complete 075771ee96fd: Verifying Checksum 075771ee96fd: Download complete 09bebf24fc45: Verifying Checksum 09bebf24fc45: Download complete 1340f56fbdf7: Verifying Checksum 1340f56fbdf7: Download complete 44173d82bf29: Verifying Checksum 44173d82bf29: Download complete 4e1e723afd5f: Verifying Checksum 4e1e723afd5f: Download complete d9d7ca1a3599: Verifying Checksum d9d7ca1a3599: Download complete 075771ee96fd: Verifying Checksum 075771ee96fd: Download complete df038e6f1d7c: Verifying Checksum df038e6f1d7c: Download complete 72e2c6c3275c: Verifying Checksum 72e2c6c3275c: Download complete 579d3079ca19: Verifying Checksum 579d3079ca19: Download complete e22be876b5b2: Verifying Checksum e22be876b5b2: Download complete 637343fef6b4: Verifying Checksum 637343fef6b4: Download complete fae7e9719c53: Verifying Checksum fae7e9719c53: Download complete aea1c19c5823: Verifying Checksum aea1c19c5823: Download complete e53a45cdfb18: Verifying Checksum e53a45cdfb18: Download complete 50500aa513dc: Verifying Checksum 50500aa513dc: Download complete df038e6f1d7c: Verifying Checksum df038e6f1d7c: Download complete 72e2c6c3275c: Verifying Checksum 72e2c6c3275c: Download complete 579d3079ca19: Verifying Checksum 579d3079ca19: Download complete c0ea575d71b9: Pull complete 92cb8a05227e: Verifying Checksum 92cb8a05227e: Download complete e22be876b5b2: Verifying Checksum e22be876b5b2: Download complete 637343fef6b4: Verifying Checksum 637343fef6b4: Download complete fae7e9719c53: Verifying Checksum fae7e9719c53: Download complete 25d24ffca9e7: Verifying Checksum 25d24ffca9e7: Download complete c0ea575d71b9: Pull complete fdd8bdfa7c8e: Verifying Checksum fdd8bdfa7c8e: Download complete 0055650dcfab: Verifying Checksum 0055650dcfab: Download complete 50500aa513dc: Verifying Checksum 50500aa513dc: Download complete 25d24ffca9e7: Verifying Checksum 25d24ffca9e7: Download complete 1340f56fbdf7: Verifying Checksum 1340f56fbdf7: Download complete 09bebf24fc45: Verifying Checksum 09bebf24fc45: Download complete aea1c19c5823: Verifying Checksum aea1c19c5823: Download complete e53a45cdfb18: Verifying Checksum e53a45cdfb18: Download complete fdd8bdfa7c8e: Verifying Checksum fdd8bdfa7c8e: Download complete 0055650dcfab: Verifying Checksum 0055650dcfab: Download complete tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull PASSED [ 0%] 92cb8a05227e: Verifying Checksum 92cb8a05227e: Download complete e22be876b5b2: Verifying Checksum e22be876b5b2: Download complete 637343fef6b4: Verifying Checksum 637343fef6b4: Download complete fae7e9719c53: Verifying Checksum fae7e9719c53: Download complete 50500aa513dc: Verifying Checksum 50500aa513dc: Download complete e53a45cdfb18: Verifying Checksum e53a45cdfb18: Download complete aea1c19c5823: Verifying Checksum aea1c19c5823: Download complete fdd8bdfa7c8e: Verifying Checksum fdd8bdfa7c8e: Download complete 0055650dcfab: Verifying Checksum 0055650dcfab: Download complete cb94f67fb7d6: Verifying Checksum cb94f67fb7d6: Download complete 50500aa513dc: Verifying Checksum 50500aa513dc: Download complete a5cb80d0f2ca: Verifying Checksum a5cb80d0f2ca: Download complete 1a5a621dd121: Verifying Checksum 1a5a621dd121: Download complete da40aa404c9e: Verifying Checksum 1a5a621dd121: Verifying Checksum 1a5a621dd121: Download complete cb94f67fb7d6: Verifying Checksum cb94f67fb7d6: Download complete da40aa404c9e: Verifying Checksum da40aa404c9e: Download complete tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] 258f1970aff3: Verifying Checksum 258f1970aff3: Download complete a5cb80d0f2ca: Verifying Checksum a5cb80d0f2ca: Download complete 258f1970aff3: Verifying Checksum 258f1970aff3: Download complete a5cb80d0f2ca: Verifying Checksum a5cb80d0f2ca: Download complete 7eae0e21fba7: Verifying Checksum 7eae0e21fba7: Download complete 7eae0e21fba7: Verifying Checksum 7eae0e21fba7: Download complete tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] 7eae0e21fba7: Verifying Checksum 7eae0e21fba7: Download complete tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] 258f1970aff3: Verifying Checksum 258f1970aff3: Download complete 80369df48736: Pull complete a5cb80d0f2ca: Verifying Checksum a5cb80d0f2ca: Download complete 258f1970aff3: Verifying Checksum 258f1970aff3: Download complete 7eae0e21fba7: Verifying Checksum 7eae0e21fba7: Download complete 80369df48736: Pull complete aaba0609d543: Pull complete aaba0609d543: Pull complete 80369df48736: Pull complete 0f535eceebd5: Pull complete 8a30f5893bea: Pull complete 0f535eceebd5: Pull complete 8a30f5893bea: Pull complete aaba0609d543: Pull complete 80369df48736: Pull complete 287089fe229e: Pull complete 287089fe229e: Pull complete aaba0609d543: Pull complete 33536ac8210e: Pull complete 33536ac8210e: Pull complete 35aa8bff600e: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] 35aa8bff600e: Pull complete 33536ac8210e: Pull complete 35aa8bff600e: Pull complete 6e4c9666aa4e: Pull complete 6e4c9666aa4e: Pull complete 6e4c9666aa4e: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] 33536ac8210e: Pull complete 35aa8bff600e: Pull complete 6e4c9666aa4e: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] cb94f67fb7d6: Pull complete 2794c601221e: Pull complete cb94f67fb7d6: Pull complete 2794c601221e: Pull complete 43934bc66d7f: Pull complete 4d716d20fd42: Pull complete 43934bc66d7f: Pull complete 4d716d20fd42: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] 38aadf80ccbf: Pull complete 38aadf80ccbf: Pull complete 8f1be648d404: Pull complete 44173d82bf29: Pull complete 8f1be648d404: Pull complete 44173d82bf29: Pull complete 7eae0e21fba7: Pull complete 7eae0e21fba7: Pull complete ec40a44dce2e: Pull complete 4e1e723afd5f: Pull complete 4e1e723afd5f: Pull complete ec40a44dce2e: Pull complete d9d7ca1a3599: Pull complete 075771ee96fd: Pull complete d9d7ca1a3599: Pull complete 09bebf24fc45: Pull complete df038e6f1d7c: Pull complete 075771ee96fd: Pull complete 7bee99f179df: Pull complete 72e2c6c3275c: Pull complete df038e6f1d7c: Pull complete 579d3079ca19: Pull complete 09bebf24fc45: Pull complete 72e2c6c3275c: Pull complete 579d3079ca19: Pull complete 7eae0e21fba7: Pull complete ec40a44dce2e: Pull complete 7bee99f179df: Pull complete 1340f56fbdf7: Pull complete 92cb8a05227e: Pull complete e22be876b5b2: Pull complete 637343fef6b4: Pull complete 1340f56fbdf7: Pull complete 7eae0e21fba7: Pull complete ec40a44dce2e: Pull complete 09bebf24fc45: Pull complete fae7e9719c53: Pull complete 92cb8a05227e: Pull complete 7bee99f179df: Pull complete aea1c19c5823: Pull complete e53a45cdfb18: Pull complete e22be876b5b2: Pull complete 637343fef6b4: Pull complete 09bebf24fc45: Pull complete 7bee99f179df: Pull complete fdd8bdfa7c8e: Pull complete fae7e9719c53: Pull complete aea1c19c5823: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] 1340f56fbdf7: Pull complete 1340f56fbdf7: Pull complete 0055650dcfab: Pull complete e53a45cdfb18: Pull complete 92cb8a05227e: Pull complete e22be876b5b2: Pull complete fdd8bdfa7c8e: Pull complete 0055650dcfab: Pull complete 637343fef6b4: Pull complete 92cb8a05227e: Pull complete e22be876b5b2: Pull complete fae7e9719c53: Pull complete 637343fef6b4: Pull complete fae7e9719c53: Pull complete aea1c19c5823: Pull complete e53a45cdfb18: Pull complete aea1c19c5823: Pull complete fdd8bdfa7c8e: Pull complete 0055650dcfab: Pull complete e53a45cdfb18: Pull complete fdd8bdfa7c8e: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] 0055650dcfab: Pull complete 1a5a621dd121: Pull complete 25d24ffca9e7: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] 1a5a621dd121: Pull complete 25d24ffca9e7: Pull complete da40aa404c9e: Pull complete Digest: sha256:55fa24c486fda340266cf2474c1d6346b55ad21ee5b9b79b0598e18ceef3cc3a Status: Downloaded newer image for dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 a5cb80d0f2ca: Pull complete 50500aa513dc: Pull complete da40aa404c9e: Pull complete Digest: sha256:55fa24c486fda340266cf2474c1d6346b55ad21ee5b9b79b0598e18ceef3cc3a Status: Downloaded newer image for dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 a5cb80d0f2ca: Pull complete 50500aa513dc: Pull complete 258f1970aff3: Pull complete Digest: sha256:aa73de7e2cb3aea97efb1e42efb0ddfad0e519b3a711fbc538041f4641cb28ce Status: Downloaded newer image for dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 a5cb80d0f2ca: Pull complete 258f1970aff3: Pull complete Digest: sha256:aa73de7e2cb3aea97efb1e42efb0ddfad0e519b3a711fbc538041f4641cb28ce Status: Downloaded newer image for dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 50500aa513dc: Pull complete a5cb80d0f2ca: Pull complete 50500aa513dc: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] 258f1970aff3: Pull complete Digest: sha256:aa73de7e2cb3aea97efb1e42efb0ddfad0e519b3a711fbc538041f4641cb28ce Status: Downloaded newer image for dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] 258f1970aff3: Pull complete Digest: sha256:aa73de7e2cb3aea97efb1e42efb0ddfad0e519b3a711fbc538041f4641cb28ce Status: Downloaded newer image for dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 + docker version Client: Docker Engine - Community Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:54:15 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.2 API version: 1.40 (minimum version 1.12) Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:27:45 2019 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683 + export DOCKER_VERSIONS=18.09.9 + DOCKER_VERSIONS=18.09.9 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=b65f52921e09 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=b65f52921e09 dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tox -e pre-commit + docker version Client: Docker Engine - Community Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:54:15 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.2 API version: 1.40 (minimum version 1.12) Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:27:45 2019 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683 + export DOCKER_VERSIONS=19.03.5 + DOCKER_VERSIONS=19.03.5 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=81ae630e7fcc + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=81ae630e7fcc dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tox -e pre-commit + docker version Client: Docker Engine - Community Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:54:15 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.2 API version: 1.40 (minimum version 1.12) Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:27:45 2019 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683 + export DOCKER_VERSIONS=18.09.9 + DOCKER_VERSIONS=18.09.9 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=c7eaa230e11c + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=c7eaa230e11c dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tox -e pre-commit tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] + docker version Client: Docker Engine - Community Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:54:15 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.2 API version: 1.40 (minimum version 1.12) Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:27:45 2019 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683 + export DOCKER_VERSIONS=18.09.9 + DOCKER_VERSIONS=18.09.9 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=57fd52bd30eb + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=57fd52bd30eb dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tox -e pre-commit pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='2662548512' pre-commit runtests: commands[0] | pre-commit install pre-commit installed at .git/hooks/pre-commit pre-commit runtests: commands[1] | pre-commit run --all-files [WARNING] Unexpected key(s) present on git://github.com/pre-commit/pre-commit-hooks: sha [WARNING] Unexpected key(s) present on git://github.com/asottile/reorder_python_imports: sha [INFO] Initializing environment for git://github.com/pre-commit/pre-commit-hooks. + docker version Client: Docker Engine - Community Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:54:15 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.2 API version: 1.40 (minimum version 1.12) Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:27:45 2019 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683 + export DOCKER_VERSIONS=19.03.5 + DOCKER_VERSIONS=19.03.5 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=a2abc3e167e5 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=a2abc3e167e5 dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tox -e pre-commit [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. [INFO] Installing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull PASSED [ 0%] pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='1278467699' pre-commit runtests: commands[0] | pre-commit install pre-commit installed at .git/hooks/pre-commit pre-commit runtests: commands[1] | pre-commit run --all-files [WARNING] Unexpected key(s) present on git://github.com/pre-commit/pre-commit-hooks: sha [WARNING] Unexpected key(s) present on git://github.com/asottile/reorder_python_imports: sha [INFO] Initializing environment for git://github.com/pre-commit/pre-commit-hooks. + docker version Client: Docker Engine - Community Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:54:15 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.2 API version: 1.40 (minimum version 1.12) Go version: go1.12.8 Git commit: 6a30dfc Built: Thu Aug 29 05:27:45 2019 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683 + export DOCKER_VERSIONS=18.09.9 + DOCKER_VERSIONS=18.09.9 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=9dc909b2644f + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=9dc909b2644f dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 tox -e pre-commit [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='880589719' pre-commit runtests: commands[0] | pre-commit install [INFO] Installing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... pre-commit installed at .git/hooks/pre-commit pre-commit runtests: commands[1] | pre-commit run --all-files [WARNING] Unexpected key(s) present on git://github.com/pre-commit/pre-commit-hooks: sha [WARNING] Unexpected key(s) present on git://github.com/asottile/reorder_python_imports: sha [INFO] Initializing environment for git://github.com/pre-commit/pre-commit-hooks. pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='511126133' pre-commit runtests: commands[0] | pre-commit install pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='2099596443' pre-commit runtests: commands[0] | pre-commit install pre-commit installed at .git/hooks/pre-commit pre-commit runtests: commands[1] | pre-commit run --all-files [WARNING] Unexpected key(s) present on git://github.com/pre-commit/pre-commit-hooks: sha [WARNING] Unexpected key(s) present on git://github.com/asottile/reorder_python_imports: sha [INFO] Initializing environment for git://github.com/pre-commit/pre-commit-hooks. tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] pre-commit installed at .git/hooks/pre-commit pre-commit runtests: commands[1] | pre-commit run --all-files [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. [INFO] Installing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [WARNING] Unexpected key(s) present on git://github.com/pre-commit/pre-commit-hooks: sha [WARNING] Unexpected key(s) present on git://github.com/asottile/reorder_python_imports: sha [INFO] Initializing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Installing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] [INFO] Installing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... pre-commit installed: aspy.yaml==1.3.0,cfgv==2.0.1,identify==1.4.7,importlib-metadata==0.23,more-itertools==7.2.0,nodeenv==1.3.3,pre-commit==1.20.0,PyYAML==5.1.2,six==1.13.0,toml==0.10.0,virtualenv==16.7.8,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='2961146523' pre-commit runtests: commands[0] | pre-commit install tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] pre-commit installed at .git/hooks/pre-commit pre-commit runtests: commands[1] | pre-commit run --all-files [WARNING] Unexpected key(s) present on git://github.com/pre-commit/pre-commit-hooks: sha [WARNING] Unexpected key(s) present on git://github.com/asottile/reorder_python_imports: sha [INFO] Initializing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. [INFO] Installing environment for git://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_stdin PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] [INFO] Installing environment for git://github.com/asottile/reorder_python_imports. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] [INFO] Installing environment for git://github.com/asottile/reorder_python_imports. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for git://github.com/asottile/reorder_python_imports. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for git://github.com/asottile/reorder_python_imports. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for git://github.com/asottile/reorder_python_imports. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] [INFO] Installing environment for git://github.com/asottile/reorder_python_imports. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] Check for added large files..............................................Passed tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] Check for added large files..............................................Passed Check for added large files..............................................Passed Check for added large files..............................................Passed Check for added large files..............................................Passed Check docstring is first.................................................Passed Check for merge conflicts................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] Check docstring is first.................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed Check for merge conflicts................................................Passed Check docstring is first.................................................Passed Check for merge conflicts................................................Passed Check Yaml...............................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed Check JSON...............................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] Check for added large files..............................................Passed Check docstring is first.................................................Passed Check docstring is first.................................................Passed Debug Statements (Python)................................................Passed Check for merge conflicts................................................Passed Check for merge conflicts................................................Passed Debug Statements (Python)................................................Passed Check docstring is first.................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed Debug Statements (Python)................................................Passed Fix End of Files.........................................................Passed Check for merge conflicts................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] Check Yaml...............................................................Passed Debug Statements (Python)................................................Passed Fix End of Files.........................................................Passed Check JSON...............................................................Passed Fix End of Files.........................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] Debug Statements (Python)................................................Passed Fix End of Files.........................................................Passed Fix End of Files.........................................................Passed Debug Statements (Python)................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] Fix End of Files.........................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_stdin PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] Trim Trailing Whitespace.................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%] Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 19.03.5 == '' ']' ++ '[' 19.03.5 == all ']' ++ BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 ++ PY_TEST_VERSIONS=py37 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 19.03.5' Running tests against Docker 19.03.5 ++ daemon_container=compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ tail -n 10 ++ docker run -d --name compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 --privileged --volume=/var/lib/docker dockerswarm/dind:19.03.5 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 19.03.5 == '' ']' ++ '[' 19.03.5 == all ']' ++ BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 ++ PY_TEST_VERSIONS=py27 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 19.03.5' Running tests against Docker 19.03.5 ++ daemon_container=compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 --privileged --volume=/var/lib/docker dockerswarm/dind:19.03.5 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 18.09.9 == '' ']' ++ '[' 18.09.9 == all ']' ++ BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 ++ PY_TEST_VERSIONS=py27 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 18.09.9' Running tests against Docker 18.09.9 ++ daemon_container=compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 --privileged --volume=/var/lib/docker dockerswarm/dind:18.09.9 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 18.09.9 == '' ']' ++ '[' 18.09.9 == all ']' ++ BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 ++ PY_TEST_VERSIONS=py37 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 18.09.9' Running tests against Docker 18.09.9 ++ daemon_container=compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ tail -n 10 ++ docker run -d --name compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 --privileged --volume=/var/lib/docker dockerswarm/dind:18.09.9 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 18.09.9 == '' ']' ++ '[' 18.09.9 == all ']' ++ BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 ++ PY_TEST_VERSIONS=py27 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 18.09.9' Running tests against Docker 18.09.9 ++ daemon_container=compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 --privileged --volume=/var/lib/docker dockerswarm/dind:18.09.9 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 18.09.9 == '' ']' ++ '[' 18.09.9 == all ']' ++ BUILD_NUMBER=jenkins-compose-mac-bootstrap-python3-1 ++ PY_TEST_VERSIONS=py37 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 18.09.9' Running tests against Docker 18.09.9 ++ daemon_container=compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 --privileged --volume=/var/lib/docker dockerswarm/dind:18.09.9 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] 2e2737f8aa12: Verifying Checksum 2e2737f8aa12: Download complete 779c3a25c03c: Pull complete 0f66cb6cb217: Pull complete e244bd7d4480: Pull complete 2e2737f8aa12: Pull complete 4ac8ca253a47: Pull complete Digest: sha256:8e1fd4e4546bd9e8d8194471d10fce55a570c05221110e00908e111e8ce38b7f Status: Downloaded newer image for dockerswarm/dind:19.03.5 df8a56ffe80fe937aff84123bf8100bf832a5b87249783c48b2ad11d0dc61168 ++ docker run --rm --tty --link=compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=19.03.5 --entrypoint=tox dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e py27 -- --verbose 2e2737f8aa12: Verifying Checksum 2e2737f8aa12: Download complete 779c3a25c03c: Pull complete 0f66cb6cb217: Pull complete e244bd7d4480: Pull complete 2e2737f8aa12: Pull complete 4ac8ca253a47: Pull complete Digest: sha256:8e1fd4e4546bd9e8d8194471d10fce55a570c05221110e00908e111e8ce38b7f Status: Downloaded newer image for dockerswarm/dind:19.03.5 c2f6047d780c279f7e1f1d89a55022c991a77ce51000f222fa7ea370c8e3176e ++ docker run --rm --tty --link=compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=19.03.5 --entrypoint=tox dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e py37 -- --verbose 52af2c2d2f0f: Verifying Checksum 52af2c2d2f0f: Download complete b0b8081c21b9: Pull complete fe627842e5f0: Pull complete 7cf61dda384e: Pull complete 52af2c2d2f0f: Pull complete 2c69fa696ee3: Pull complete Digest: sha256:f9012abb64524df1272f4818244593fb94db77467be591bbbad032402d80242d Status: Downloaded newer image for dockerswarm/dind:18.09.9 7362b67f1d3bcddcb6cdeb8e525d140df6184dd45e27674bd12b712dca5c52fd ++ docker run --rm --tty --link=compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=18.09.9 --entrypoint=tox dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e py27 -- --verbose 52af2c2d2f0f: Verifying Checksum 52af2c2d2f0f: Download complete b0b8081c21b9: Pull complete fe627842e5f0: Pull complete 7cf61dda384e: Pull complete 52af2c2d2f0f: Pull complete 2c69fa696ee3: Pull complete Digest: sha256:f9012abb64524df1272f4818244593fb94db77467be591bbbad032402d80242d Status: Downloaded newer image for dockerswarm/dind:18.09.9 d1b7c88149881545933d29618e92573510ccfd5328b6dfa444a0b4341ea34b16 ++ docker run --rm --tty --link=compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=18.09.9 --entrypoint=tox dockerbuildbot/compose:alpine-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e py37 -- --verbose py27 develop-inst-nodeps: /code 52af2c2d2f0f: Verifying Checksum 52af2c2d2f0f: Download complete b0b8081c21b9: Pull complete fe627842e5f0: Pull complete 7cf61dda384e: Pull complete 52af2c2d2f0f: Pull complete 2c69fa696ee3: Pull complete Digest: sha256:f9012abb64524df1272f4818244593fb94db77467be591bbbad032402d80242d Status: Downloaded newer image for dockerswarm/dind:18.09.9 887a3a7c852278968b1b423d51a5435b168c1f3c7b1c12f7e49652114d603694 ++ docker run --rm --tty --link=compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=18.09.9 --entrypoint=tox dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e py27 -- --verbose tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] py27 develop-inst-nodeps: /code py37 develop-inst-nodeps: /code py37 develop-inst-nodeps: /code 52af2c2d2f0f: Verifying Checksum 52af2c2d2f0f: Download complete b0b8081c21b9: Pull complete fe627842e5f0: Pull complete 7cf61dda384e: Pull complete 52af2c2d2f0f: Pull complete 2c69fa696ee3: Pull complete Digest: sha256:f9012abb64524df1272f4818244593fb94db77467be591bbbad032402d80242d Status: Downloaded newer image for dockerswarm/dind:18.09.9 9113e930edf04359b9f41511d90a7a7a95fc9518b12250c888f7dec8105b9b06 ++ docker run --rm --tty --link=compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=18.09.9 --entrypoint=tox dockerbuildbot/compose:debian-b4d39eb81ceb5bf1993e5a9e92716770426f34e4 -e py37 -- --verbose py27 develop-inst-nodeps: /code py27 installed: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,enum34==1.1.6,flake8==3.5.0,funcsigs==1.0.2,functools32==3.2.3.post2,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==5.0.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,subprocess32==3.5.4,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py27 runtests: PYTHONHASHSEED='66469120' py27 runtests: commands[0] | mkdir -p .coverage-binfiles py27 runtests: commands[1] | py.test -v --cov=compose --cov-report html --cov-report term --cov-config=tox.ini --verbose ============================= test session starts ============================== platform linux2 -- Python 2.7.13, pytest-3.6.3, py-1.8.0, pluggy-0.6.0 -- /code/.tox/py27/bin/python2.7 cachedir: .pytest_cache rootdir: /code, inifile: tox.ini plugins: cov-2.5.1 py27 installed: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,enum34==1.1.6,flake8==3.5.0,funcsigs==1.0.2,functools32==3.2.3.post2,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==5.0.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,subprocess32==3.5.4,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py27 runtests: PYTHONHASHSEED='3823828410' py27 runtests: commands[0] | mkdir -p .coverage-binfiles py27 runtests: commands[1] | py.test -v --cov=compose --cov-report html --cov-report term --cov-config=tox.ini --verbose py37 installed: altgraph==0.16.1,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,flake8==3.5.0,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==7.2.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyInstaller==3.5,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py37 runtests: PYTHONHASHSEED='1099191852' py37 runtests: commands[0] | mkdir -p .coverage-binfiles py37 runtests: commands[1] | py.test -v --cov=compose --cov-report html --cov-report term --cov-config=tox.ini --verbose py37 develop-inst-nodeps: /code ============================= test session starts ============================== platform linux2 -- Python 2.7.16, pytest-3.6.3, py-1.8.0, pluggy-0.6.0 -- /code/.tox/py27/bin/python2.7 cachedir: .pytest_cache rootdir: /code, inifile: tox.ini plugins: cov-2.5.1 py37 installed: altgraph==0.16.1,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,flake8==3.5.0,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==7.2.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyInstaller==3.5,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py37 runtests: PYTHONHASHSEED='3705508959' py37 runtests: commands[0] | mkdir -p .coverage-binfiles py37 runtests: commands[1] | py.test -v --cov=compose --cov-report html --cov-report term --cov-config=tox.ini --verbose ============================= test session starts ============================== platform linux -- Python 3.7.4, pytest-3.6.3, py-1.8.0, pluggy-0.6.0 -- /code/.tox/py37/bin/python3.7 cachedir: .pytest_cache rootdir: /code, inifile: tox.ini plugins: cov-2.5.1 ============================= test session starts ============================== platform linux -- Python 3.7.4, pytest-3.6.3, py-1.8.0, pluggy-0.6.0 -- /code/.tox/py37/bin/python3.7 cachedir: .pytest_cache rootdir: /code, inifile: tox.ini plugins: cov-2.5.1 py27 installed: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,enum34==1.1.6,flake8==3.5.0,funcsigs==1.0.2,functools32==3.2.3.post2,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==5.0.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,subprocess32==3.5.4,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py27 runtests: PYTHONHASHSEED='3006292842' py27 runtests: commands[0] | mkdir -p .coverage-binfiles py27 runtests: commands[1] | py.test -v --cov=compose --cov-report html --cov-report term --cov-config=tox.ini --verbose tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] ============================= test session starts ============================== platform linux2 -- Python 2.7.13, pytest-3.6.3, py-1.8.0, pluggy-0.6.0 -- /code/.tox/py27/bin/python2.7 cachedir: .pytest_cache rootdir: /code, inifile: tox.ini plugins: cov-2.5.1 py37 installed: altgraph==0.16.1,atomicwrites==1.3.0,attrs==19.3.0,backports.shutil-get-terminal-size==1.0.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.13.2,chardet==3.0.4,coverage==4.4.2,cryptography==2.8,ddt==1.2.0,docker==4.1.0,# Editable install with no version control (docker-compose==1.26.0.dev0),-e /code,docker-pycreds==0.4.0,dockerpty==0.4.1,docopt==0.6.2,flake8==3.5.0,idna==2.5,ipaddress==1.0.18,jsonschema==3.0.1,mccabe==0.6.1,mock==3.0.5,more-itertools==7.2.0,paramiko==2.6.0,pluggy==0.6.0,py==1.8.0,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyInstaller==3.5,PyNaCl==1.3.0,pyrsistent==0.15.6,PySocks==1.6.7,pytest==3.6.3,pytest-cov==2.5.1,PyYAML==4.2b1,requests==2.22.0,six==1.12.0,texttable==1.6.2,urllib3==1.25.7,websocket-client==0.32.0 py37 runtests: PYTHONHASHSEED='74870963' py37 runtests: commands[0] | mkdir -p .coverage-binfiles py37 runtests: commands[1] | py.test -v --cov=compose --cov-report html --cov-report term --cov-config=tox.ini --verbose ============================= test session starts ============================== platform linux -- Python 3.7.4, pytest-3.6.3, py-1.8.0, pluggy-0.6.0 -- /code/.tox/py37/bin/python3.7 cachedir: .pytest_cache rootdir: /code, inifile: tox.ini plugins: cov-2.5.1 tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%]  collecting 0 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 197 items  collecting 197 items  collecting 197 items  collecting 200 items  collecting 200 items  collecting 200 items  collecting 268 items  collecting 268 items  collecting 268 items  collecting 271 items  collecting 271 items  collecting 271 items  collecting 400 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 407 items  collecting 416 items  collecting 427 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 446 items  collecting 446 items  collecting 463 items  collecting 476 items  collecting 476 items  collecting 494 items  collecting 495 items  collecting 495 items  collecting 503 items  collecting 503 items  collecting 508 items  collecting 511 items  collecting 520 items  collecting 520 items  collecting 551 items  collecting 551 items  collecting 625 items  collecting 626 items  collecting 629 items  collecting 633 items  collecting 634 items  collecting 644 items  collecting 647 items  collecting 650 items  collecting 650 items  collecting 655 items  collecting 655 items  collecting 668 items  collecting 671 items  collecting 671 items  collecting 673 items  collecting 673 items  collecting 675 items  collecting 675 items  collecting 676 items  collecting 676 items  collecting 677 items  collecting 677 items  collecting 677 items  collecting 679 items  collecting 679 items  collecting 679 items  collecting 687 items  collecting 687 items  collecting 687 items  collecting 691 items  collecting 707 items  collecting 710 items  collecting 710 items  collecting 710 items  collecting 718 items  collecting 718 items  collecting 718 items  collecting 724 items  collecting 724 items  collecting 726 items  collecting 726 items  collecting 729 items  collecting 729 items  collecting 733 items  collecting 733 items  collecting 737 items  collecting 737 items  collecting 740 items  collecting 745 items  collecting 745 items  collecting 748 items  collecting 748 items  collecting 752 items  collecting 752 items  collecting 759 items  collecting 759 items  collecting 759 items  collecting 763 items  collecting 768 items  collecting 768 items  collecting 772 items  collecting 772 items  collecting 916 items  collecting 924 items  collecting 932 items  collecting 935 items  collecting 945 items  collecting 956 items  collecting 962 items  collecting 968 items  collecting 971 items  collecting 976 items  collecting 984 items  collecting 988 items  collecting 994 items  collecting 997 items  collecting 1000 items  collecting 1012 items  collecting 1043 items  collecting 1046 items  collecting 1049 items  collecting 1056 items  collecting 1060 items  collecting 1062 items  collecting 1077 items  collecting 1077 items  collecting 1082 items  collecting 1082 items  collecting 1103 items  collecting 1115 items  collecting 1115 items  collecting 1115 items  collecting 1124 items  collecting 1124 items  collecting 1136 items  collecting 1136 items  collecting 1145 items  collecting 1145 items  collecting 1147 items  collected 1147 items   collecting 0 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 197 items  collecting 197 items  collecting 197 items  collecting 200 items  collecting 200 items  collecting 200 items  collecting 268 items  collecting 268 items  collecting 268 items  collecting 271 items  collecting 271 items  collecting 271 items  collecting 400 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 407 items  collecting 416 items  collecting 427 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 446 items  collecting 446 items  collecting 463 items  collecting 476 items  collecting 476 items  collecting 494 items  collecting 495 items  collecting 495 items  collecting 503 items  collecting 503 items  collecting 508 items  collecting 511 items  collecting 520 items  collecting 520 items  collecting 551 items  collecting 551 items  collecting 625 items  collecting 626 items  collecting 629 items  collecting 633 items  collecting 634 items  collecting 644 items  collecting 647 items  collecting 650 items  collecting 650 items  collecting 655 items  collecting 655 items  collecting 668 items  collecting 671 items  collecting 671 items  collecting 673 items  collecting 673 items  collecting 675 items  collecting 675 items  collecting 676 items  collecting 676 items  collecting 677 items  collecting 677 items  collecting 677 items  collecting 679 items  collecting 679 items  collecting 679 items  collecting 687 items  collecting 687 items  collecting 687 items  collecting 691 items  collecting 707 items  collecting 710 items  collecting 710 items  collecting 710 items  collecting 718 items  collecting 718 items  collecting 718 items  collecting 724 items  collecting 724 items  collecting 726 items  collecting 726 items  collecting 729 items  collecting 729 items  collecting 733 items  collecting 733 items  collecting 737 items  collecting 737 items  collecting 740 items  collecting 745 items  collecting 745 items  collecting 748 items  collecting 748 items  collecting 752 items  collecting 752 items  collecting 759 items  collecting 759 items  collecting 759 items  collecting 763 items  collecting 768 items  collecting 768 items  collecting 772 items  collecting 772 items  collecting 916 items  collecting 924 items  collecting 932 items  collecting 935 items  collecting 945 items  collecting 956 items  collecting 962 items  collecting 968 items  collecting 971 items  collecting 976 items  collecting 984 items  collecting 988 items  collecting 994 items  collecting 997 items  collecting 1000 items  collecting 1012 items  collecting 1043 items  collecting 1046 items  collecting 1049 items  collecting 1056 items  collecting 1060 items  collecting 1062 items  collecting 1077 items  collecting 1077 items  collecting 1082 items  collecting 1082 items  collecting 1103 items  collecting 1115 items  collecting 1115 items  collecting 1115 items  collecting 1124 items  collecting 1124 items  collecting 1136 items  collecting 1136 items  collecting 1145 items  collecting 1145 items  collecting 1147 items  collected 1147 items   collecting 0 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 197 items  collecting 197 items  collecting 197 items  collecting 200 items  collecting 200 items  collecting 200 items  collecting 268 items  collecting 268 items  collecting 268 items  collecting 271 items  collecting 271 items  collecting 271 items  collecting 400 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 407 items  collecting 416 items  collecting 427 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 446 items  collecting 446 items  collecting 463 items  collecting 476 items  collecting 476 items  collecting 494 items  collecting 495 items  collecting 495 items  collecting 503 items  collecting 503 items  collecting 508 items  collecting 511 items  collecting 520 items  collecting 520 items  collecting 551 items  collecting 551 items  collecting 625 items  collecting 626 items  collecting 629 items  collecting 633 items  collecting 634 items  collecting 644 items  collecting 647 items  collecting 650 items  collecting 650 items  collecting 655 items  collecting 655 items  collecting 668 items  collecting 671 items  collecting 671 items  collecting 673 items  collecting 673 items  collecting 675 items  collecting 675 items  collecting 676 items  collecting 676 items  collecting 677 items  collecting 677 items  collecting 677 items  collecting 679 items  collecting 679 items  collecting 679 items  collecting 687 items  collecting 687 items  collecting 687 items  collecting 691 items  collecting 707 items  collecting 710 items  collecting 710 items  collecting 710 items  collecting 718 items  collecting 718 items  collecting 718 items  collecting 724 items  collecting 724 items  collecting 726 items  collecting 726 items  collecting 729 items  collecting 729 items  collecting 733 items  collecting 733 items  collecting 737 items  collecting 737 items  collecting 740 items  collecting 745 items  collecting 745 items  collecting 748 items  collecting 748 items  collecting 752 items  collecting 752 items  collecting 759 items  collecting 759 items  collecting 759 items  collecting 763 items  collecting 768 items  collecting 768 items  collecting 772 items  collecting 772 items  collecting 916 items  collecting 924 items  collecting 932 items  collecting 935 items  collecting 945 items  collecting 956 items  collecting 962 items  collecting 968 items  collecting 971 items  collecting 976 items  collecting 984 items  collecting 988 items  collecting 994 items  collecting 997 items  collecting 1000 items  collecting 1012 items  collecting 1043 items  collecting 1046 items  collecting 1049 items  collecting 1056 items  collecting 1060 items  collecting 1062 items  collecting 1077 items  collecting 1077 items  collecting 1082 items  collecting 1082 items  collecting 1103 items  collecting 1115 items  collecting 1115 items  collecting 1115 items  collecting 1124 items  collecting 1124 items  collecting 1136 items  collecting 1136 items  collecting 1145 items  collecting 1145 items  collecting 1147 items  collected 1147 items  tests/acceptance/cli_test.py::CLITestCase::test_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%]  collecting 0 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 197 items  collecting 197 items  collecting 197 items  collecting 200 items  collecting 200 items  collecting 200 items  collecting 268 items  collecting 268 items  collecting 268 items  collecting 271 items  collecting 271 items  collecting 271 items  collecting 400 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 407 items  collecting 416 items  collecting 427 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 446 items  collecting 446 items  collecting 463 items  collecting 476 items  collecting 476 items  collecting 494 items  collecting 495 items  collecting 495 items  collecting 503 items  collecting 503 items  collecting 508 items  collecting 511 items  collecting 520 items  collecting 520 items  collecting 551 items  collecting 551 items  collecting 625 items  collecting 626 items  collecting 629 items  collecting 633 items  collecting 634 items  collecting 644 items  collecting 647 items  collecting 650 items  collecting 650 items  collecting 655 items  collecting 655 items  collecting 668 items  collecting 671 items  collecting 671 items  collecting 673 items  collecting 673 items  collecting 675 items  collecting 675 items  collecting 676 items  collecting 676 items  collecting 677 items  collecting 677 items  collecting 677 items  collecting 679 items  collecting 679 items  collecting 679 items  collecting 687 items  collecting 687 items  collecting 687 items  collecting 691 items  collecting 707 items  collecting 710 items  collecting 710 items  collecting 710 items  collecting 718 items  collecting 718 items  collecting 718 items  collecting 724 items  collecting 724 items  collecting 726 items  collecting 726 items  collecting 729 items  collecting 729 items  collecting 733 items  collecting 733 items  collecting 737 items  collecting 737 items  collecting 740 items  collecting 745 items  collecting 745 items  collecting 748 items  collecting 748 items  collecting 752 items  collecting 752 items  collecting 759 items  collecting 759 items  collecting 759 items  collecting 763 items  collecting 768 items  collecting 768 items  collecting 772 items  collecting 772 items  collecting 916 items  collecting 924 items  collecting 932 items  collecting 935 items  collecting 945 items  collecting 956 items  collecting 962 items  collecting 968 items  collecting 971 items  collecting 976 items  collecting 984 items  collecting 988 items  collecting 994 items  collecting 997 items  collecting 1000 items  collecting 1012 items  collecting 1043 items  collecting 1046 items  collecting 1049 items  collecting 1056 items  collecting 1060 items  collecting 1062 items  collecting 1077 items  collecting 1077 items  collecting 1082 items  collecting 1082 items  collecting 1103 items  collecting 1115 items  collecting 1115 items  collecting 1115 items  collecting 1124 items  collecting 1124 items  collecting 1136 items  collecting 1136 items  collecting 1145 items  collecting 1145 items  collecting 1147 items  collected 1147 items   collecting 0 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 197 items  collecting 197 items  collecting 197 items  collecting 200 items  collecting 200 items  collecting 200 items  collecting 268 items  collecting 268 items  collecting 268 items  collecting 271 items  collecting 271 items  collecting 271 items  collecting 400 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 407 items  collecting 416 items  collecting 427 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 446 items  collecting 446 items  collecting 463 items  collecting 476 items  collecting 476 items  collecting 494 items  collecting 495 items  collecting 495 items  collecting 503 items  collecting 503 items  collecting 508 items  collecting 511 items  collecting 520 items  collecting 520 items  collecting 551 items  collecting 551 items  collecting 625 items  collecting 626 items  collecting 629 items  collecting 633 items  collecting 634 items  collecting 644 items  collecting 647 items  collecting 650 items  collecting 650 items  collecting 655 items  collecting 655 items  collecting 668 items  collecting 671 items  collecting 671 items  collecting 673 items  collecting 673 items  collecting 675 items  collecting 675 items  collecting 676 items  collecting 676 items  collecting 677 items  collecting 677 items  collecting 677 items  collecting 679 items  collecting 679 items  collecting 679 items  collecting 687 items  collecting 687 items  collecting 687 items  collecting 691 items  collecting 707 items  collecting 710 items  collecting 710 items  collecting 710 items  collecting 718 items  collecting 718 items  collecting 718 items  collecting 724 items  collecting 724 items  collecting 726 items  collecting 726 items  collecting 729 items  collecting 729 items  collecting 733 items  collecting 733 items  collecting 737 items  collecting 737 items  collecting 740 items  collecting 745 items  collecting 745 items  collecting 748 items  collecting 748 items  collecting 752 items  collecting 752 items  collecting 759 items  collecting 759 items  collecting 759 items  collecting 763 items  collecting 768 items  collecting 768 items  collecting 772 items  collecting 772 items  collecting 916 items  collecting 924 items  collecting 932 items  collecting 935 items  collecting 945 items  collecting 956 items  collecting 962 items  collecting 968 items  collecting 971 items  collecting 976 items  collecting 984 items  collecting 988 items  collecting 994 items  collecting 997 items  collecting 1000 items  collecting 1012 items  collecting 1043 items  collecting 1046 items  collecting 1049 items  collecting 1056 items  collecting 1060 items  collecting 1062 items  collecting 1077 items  collecting 1077 items  collecting 1082 items  collecting 1082 items  collecting 1103 items  collecting 1115 items  collecting 1115 items  collecting 1115 items  collecting 1124 items  collecting 1124 items  collecting 1136 items  collecting 1136 items  collecting 1145 items  collecting 1145 items  collecting 1147 items  collected 1147 items  tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%]  collecting 0 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 196 items  collecting 197 items  collecting 197 items  collecting 197 items  collecting 200 items  collecting 200 items  collecting 200 items  collecting 268 items  collecting 268 items  collecting 268 items  collecting 271 items  collecting 271 items  collecting 271 items  collecting 400 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 404 items  collecting 407 items  collecting 416 items  collecting 427 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 435 items  collecting 446 items  collecting 446 items  collecting 463 items  collecting 476 items  collecting 476 items  collecting 494 items  collecting 495 items  collecting 495 items  collecting 503 items  collecting 503 items  collecting 508 items  collecting 511 items  collecting 520 items  collecting 520 items  collecting 551 items  collecting 551 items  collecting 625 items  collecting 626 items  collecting 629 items  collecting 633 items  collecting 634 items  collecting 644 items  collecting 647 items  collecting 650 items  collecting 650 items  collecting 655 items  collecting 655 items  collecting 668 items  collecting 671 items  collecting 671 items  collecting 673 items  collecting 673 items  collecting 675 items  collecting 675 items  collecting 676 items  collecting 676 items  collecting 677 items  collecting 677 items  collecting 677 items  collecting 679 items  collecting 679 items  collecting 679 items  collecting 687 items  collecting 687 items  collecting 687 items  collecting 691 items  collecting 707 items  collecting 710 items  collecting 710 items  collecting 710 items  collecting 718 items  collecting 718 items  collecting 718 items  collecting 724 items  collecting 724 items  collecting 726 items  collecting 726 items  collecting 729 items  collecting 729 items  collecting 733 items  collecting 733 items  collecting 737 items  collecting 737 items  collecting 740 items  collecting 745 items  collecting 745 items  collecting 748 items  collecting 748 items  collecting 752 items  collecting 752 items  collecting 759 items  collecting 759 items  collecting 759 items  collecting 763 items  collecting 768 items  collecting 768 items  collecting 772 items  collecting 772 items  collecting 916 items  collecting 924 items  collecting 932 items  collecting 935 items  collecting 945 items  collecting 956 items  collecting 962 items  collecting 968 items  collecting 971 items  collecting 976 items  collecting 984 items  collecting 988 items  collecting 994 items  collecting 997 items  collecting 1000 items  collecting 1012 items  collecting 1043 items  collecting 1046 items  collecting 1049 items  collecting 1056 items  collecting 1060 items  collecting 1062 items  collecting 1077 items  collecting 1077 items  collecting 1082 items  collecting 1082 items  collecting 1103 items  collecting 1115 items  collecting 1115 items  collecting 1115 items  collecting 1124 items  collecting 1124 items  collecting 1136 items  collecting 1136 items  collecting 1145 items  collecting 1145 items  collecting 1147 items  collected 1147 items  tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_home_and_env_var_in_volume_path PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_home_and_env_var_in_volume_path PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_new_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_restarted_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_new_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_restarted_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_stdin PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_stdin PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_stdin PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_stdin PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_stdin PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_ignore_pull_failures PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_stdin PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_ignore_pull_failures PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_command_overridden PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_home_and_env_var_in_volume_path PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_home_and_env_var_in_volume_path PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_home_and_env_var_in_volume_path PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_home_and_env_var_in_volume_path PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_home_and_env_var_in_volume_path PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_command_overridden PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_home_and_env_var_in_volume_path PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_new_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_restarted_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_new_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_restarted_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_new_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_restarted_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_new_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_restarted_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_new_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_restarted_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_new_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_follow_logs_from_restarted_containers SKIPPED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_ignore_pull_failures PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_ignore_pull_failures PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_ignore_pull_failures PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_ignore_pull_failures PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_ignore_pull_failures PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_ignore_pull_failures PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_command_overridden PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_command_overridden PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_command_overridden PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_command_overridden PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_command_overridden PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_command_overridden PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate_and_no_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate_and_no_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 <- tests/integration/testcases.py PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode <- tests/integration/testcases.py PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode <- tests/integration/testcases.py PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] tests/integration/environment_test.py::EnvironmentOverrideFileTest::test_env_file_override PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_default_labels PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_default_ensure PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_overlay_ensure PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_external_volumes <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_inexistent_external_volume PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/integration/environment_test.py::EnvironmentOverrideFileTest::test_env_file_override PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_default_labels PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_default_ensure PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_overlay_ensure PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_external_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_inexistent_external_volume PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_invalid_volume_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_blank_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver_opts <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_container_v1 <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_service_v1 <- tests/integration/testcases.py PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container <- tests/integration/testcases.py PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_service <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_parallel_pull_with_no_image PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_invalid_volume_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_blank_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver_opts PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_container_v1 PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_service_v1 PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_service PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_parallel_pull_with_no_image PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char <- tests/integration/testcases.py PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate_and_no_recreate PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_recreate_with_tmpfs_volume PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate_and_no_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate_and_no_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate_and_no_recreate PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_recreate_with_tmpfs_volume PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 <- tests/integration/testcases.py PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate_and_no_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate_and_no_recreate PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode <- tests/integration/testcases.py PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 <- tests/integration/testcases.py PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 <- tests/integration/testcases.py PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/environment_test.py::EnvironmentOverrideFileTest::test_env_file_override PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_default_labels PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/network_test.py::NetworkTest::test_network_external_default_ensure PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_overlay_ensure PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode <- tests/integration/testcases.py PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode <- tests/integration/testcases.py PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_external_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_inexistent_external_volume PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/integration/environment_test.py::EnvironmentOverrideFileTest::test_env_file_override PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_default_labels PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_default_ensure PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_overlay_ensure PASSED [ 17%] tests/integration/environment_test.py::EnvironmentOverrideFileTest::test_env_file_override PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_default_labels PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_default_ensure PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_overlay_ensure PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/environment_test.py::EnvironmentOverrideFileTest::test_env_file_override PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_default_labels PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_default_ensure PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_overlay_ensure PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode <- tests/integration/testcases.py PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses_missing_subnet PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_up_with_nvidia_runtime <- tests/integration/testcases.py SKIPPED [ 23%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_external_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_inexistent_external_volume PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_external_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_inexistent_external_volume PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_external_volumes <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_inexistent_external_volume PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime <- tests/integration/testcases.py PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_container PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_service PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses_missing_subnet PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_nvidia_runtime SKIPPED [ 23%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_container PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_service PASSED [ 23%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_cli PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 23%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_cli PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode <- tests/integration/testcases.py PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_invalid_volume_driver PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_blank_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver_opts PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_container_v1 PASSED [ 18%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 23%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_net_from_service_v1 PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_service PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_parallel_pull_with_no_image PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode <- tests/integration/testcases.py PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/environment_test.py::EnvironmentOverrideFileTest::test_env_file_override PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_default_labels PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_default_ensure PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_overlay_ensure PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_invalid_volume_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_invalid_volume_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_blank_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_blank_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver_opts PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver_opts <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_net_from_container_v1 PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_container_v1 <- tests/integration/testcases.py PASSED [ 18%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_net_from_service_v1 PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_image_name PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_net_from_service_v1 <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_invalid_volume_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_blank_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver_opts PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_container_v1 PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_service_v1 PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_build_with_isolation PASSED [ 24%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_image_name PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_isolation PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_external_volumes <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_inexistent_external_volume PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_service PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_parallel_pull_with_no_image PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_build_with_network <- tests/integration/testcases.py PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_service PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_parallel_pull_with_no_image PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_service <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_parallel_pull_with_no_image PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_build_with_network PASSED [ 24%] tests/integration/environment_test.py::EnvironmentOverrideFileTest::test_env_file_override PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_default_labels PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_default_ensure PASSED [ 17%] tests/integration/network_test.py::NetworkTest::test_network_external_overlay_ensure PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_build_with_target <- tests/integration/testcases.py PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_target PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] tests/integration/service_test.py::ServiceTest::test_containers PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_containers_one_off PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_external_volumes <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_inexistent_external_volume PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_containers PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_containers_one_off PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_count PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_percent SKIPPED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_count PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_percent SKIPPED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_recreate_with_tmpfs_volume PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char <- tests/integration/testcases.py PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_invalid_volume_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_blank_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver_opts <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_container_v1 <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_net_from_service_v1 <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container <- tests/integration/testcases.py PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off_when_existing_container_is_running PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off_when_existing_container_is_running PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_service <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_parallel_pull_with_no_image PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_invalid_volume_driver PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_blank_driver PASSED [ 18%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_initialize_volumes_updated_driver_opts <- tests/integration/testcases.py PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_net_from_container_v1 <- tests/integration/testcases.py PASSED [ 18%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_recreate_with_tmpfs_volume PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_recreate_with_tmpfs_volume PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_net_from_service_v1 <- tests/integration/testcases.py PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_recreate_with_tmpfs_volume PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_service <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_parallel_pull_with_no_image PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char <- tests/integration/testcases.py PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_recreate_with_tmpfs_volume PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_recreate_with_tmpfs_volume PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses_missing_subnet PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_nvidia_runtime SKIPPED [ 23%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_container PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_service PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_cli PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses_missing_subnet PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_nvidia_runtime SKIPPED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_volumes_from_container PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_service PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses_missing_subnet PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_nvidia_runtime SKIPPED [ 23%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_container PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_service PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 29%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 29%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses_missing_subnet PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_nvidia_runtime <- tests/integration/testcases.py SKIPPED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_cli PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime <- tests/integration/testcases.py PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_container PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_service PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_cli PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_image_name PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_isolation PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_cli PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_build_with_network PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_build_with_target PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_containers PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_containers_one_off PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_count PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_percent SKIPPED [ 25%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_image_name PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_isolation PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_image_name PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_isolation PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_log_drive_empty_default_jsonfile PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_invalid SKIPPED [ 30%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_log_drive_empty_default_jsonfile PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_invalid SKIPPED [ 30%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_network PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_network PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_image_name PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_isolation PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_build_with_target PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_build_with_target PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses_missing_subnet PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_nvidia_runtime <- tests/integration/testcases.py SKIPPED [ 23%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_build_with_network <- tests/integration/testcases.py PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_containers PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_containers_one_off PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime <- tests/integration/testcases.py PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_container PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_service PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_count PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_percent SKIPPED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_target <- tests/integration/testcases.py PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_containers PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_containers_one_off PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off_when_existing_container_is_running PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_count PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_percent SKIPPED [ 25%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_containers PASSED [ 25%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_containers_one_off PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_cli PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_count PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_percent SKIPPED [ 25%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses_missing_subnet PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_nvidia_runtime <- tests/integration/testcases.py SKIPPED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off_when_existing_container_is_running PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off_when_existing_container_is_running PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime <- tests/integration/testcases.py PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_volumes_from_container PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_volumes_from_service PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off PASSED [ 26%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off_when_existing_container_is_running PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_build_cli PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_image_name PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_isolation PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_build_with_network <- tests/integration/testcases.py PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_build_with_target <- tests/integration/testcases.py PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_containers PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_containers_one_off PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_count PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_percent SKIPPED [ 25%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_build_with_image_name PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_isolation PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_build_with_network <- tests/integration/testcases.py PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_build_with_target <- tests/integration/testcases.py PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off_when_existing_container_is_running PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/service_test.py::ServiceTest::test_containers PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_containers_one_off PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_count PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_percent SKIPPED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links <- tests/integration/testcases.py PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_one_off_when_existing_container_is_running PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_with_high_enough_api_version_we_get_default_network_mode PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_with_high_enough_api_version_we_get_default_network_mode PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_empty_default_jsonfile PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_invalid SKIPPED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_one_off PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_one_off PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_log_drive_empty_default_jsonfile PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_invalid SKIPPED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_empty_default_jsonfile PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_invalid SKIPPED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_log_drive_empty_default_jsonfile PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_invalid SKIPPED [ 30%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_log_drive_empty_default_jsonfile PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_invalid SKIPPED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_with_high_enough_api_version_we_get_default_network_mode PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_one_off PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_log_drive_empty_default_jsonfile PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_invalid SKIPPED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links <- tests/integration/testcases.py PASSED [ 34%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_with_high_enough_api_version_we_get_default_network_mode PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_with_high_enough_api_version_we_get_default_network_mode PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 34%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_one_off PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_one_off PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_with_high_enough_api_version_we_get_default_network_mode PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_one_off PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 31%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names <- tests/integration/testcases.py PASSED [ 33%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links <- tests/integration/testcases.py PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_with_high_enough_api_version_we_get_default_network_mode PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_one_off PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names <- tests/integration/testcases.py PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links <- tests/integration/testcases.py PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_with_high_enough_api_version_we_get_default_network_mode PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 34%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_one_off PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build <- tests/integration/testcases.py PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_start PASSED [ 37%] tests/integration/volume_test.py::VolumeTest::test_create_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_create_volume_custom_name PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external_aliased PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_aliased_volume PASSED [ 38%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/volume_test.py::VolumeTest::test_external_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_inspect_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_recreate_existing_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_remove_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels PASSED [ 38%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 38%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/unit/bundle_test.py::test_push_image PASSED [ 39%] tests/unit/bundle_test.py::test_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_convert_service_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_none PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_command PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_entrypoint PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 39%] tests/unit/bundle_test.py::test_make_service_networks_default PASSED [ 40%] tests/unit/bundle_test.py::test_make_service_networks PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_specs PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_with_protocol PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_default_protocol PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help_nonexistent PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_manual_and_service_ports_together PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_default_project_name PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_get_project PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_from_environment_new_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_empty_environment_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_environment_file PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_project_name PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_uppercase_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/integration/state_test.py::ServiceStateTest::test_trigger_start PASSED [ 37%] tests/integration/volume_test.py::VolumeTest::test_create_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_create_volume_custom_name PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists <- tests/integration/testcases.py PASSED [ 38%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/unit/cli_test.py::CLITestCase::test_run_service_with_restart_always PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_environment PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps_prefixed PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get_local_port PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_has_api_logs PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_none PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_public_and_private PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_healthy PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_no_health PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_starting PASSED [ 42%] tests/integration/volume_test.py::VolumeTest::test_exists_external <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external_aliased <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_aliased_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_inspect_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_recreate_existing_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_remove_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels <- tests/integration/testcases.py PASSED [ 38%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/unit/container_test.py::ContainerTest::test_inspect_if_not_inspected PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_custom_container_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_one_off PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_number PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_short_id PASSED [ 43%] tests/unit/container_test.py::GetContainerNameTestCase::test_get_container_name PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_driver_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote_ipam_options PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_options_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_success PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_whitelist PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_labels_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_remote_config_labels_none PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_deps PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_global_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_upstream_errors PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_alignment PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_ansi PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_noansi PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_pull PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_push PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_mismatched_encoding_stream_write PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_div_zero PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_no_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_null_total PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_tty PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 38%] tests/unit/project_test.py::ProjectTest::test_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 36%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/unit/bundle_test.py::test_push_image PASSED [ 39%] tests/unit/bundle_test.py::test_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_convert_service_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_none PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_command PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_entrypoint PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 39%] tests/unit/bundle_test.py::test_make_service_networks_default PASSED [ 40%] tests/unit/bundle_test.py::test_make_service_networks PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_specs PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_with_protocol PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_default_protocol PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help_nonexistent PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_manual_and_service_ports_together PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_default_project_name PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_get_project PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_from_environment_new_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_empty_environment_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_environment_file PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_project_name PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_uppercase_base_dir PASSED [ 41%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/unit/cli_test.py::CLITestCase::test_run_service_with_restart_always PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_environment PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps_prefixed PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get_local_port PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_has_api_logs PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_none PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_public_and_private PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_healthy PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_no_health PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_starting PASSED [ 42%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/container_test.py::ContainerTest::test_inspect_if_not_inspected PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_custom_container_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_one_off PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_number PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_short_id PASSED [ 43%] tests/unit/container_test.py::GetContainerNameTestCase::test_get_container_name PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_driver_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote_ipam_options PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_options_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_success PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_whitelist PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_labels_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_remote_config_labels_none PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_deps PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_global_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_upstream_errors PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_alignment PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_ansi PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_noansi PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_pull PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_push PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_mismatched_encoding_stream_write PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_div_zero PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_no_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_null_total PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_no_tty PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_tty PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_default_platform PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_build_with_default_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/state_test.py::ServiceStateTest::test_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/service_test.py::TestServiceNetwork::test_connect_container_to_networks_short_aliase_exists PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_dict PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_integers_and_dicts PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_ints PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/unit/service_test.py::NetTestCase::test_network_mode_service_no_containers PASSED [ 55%] tests/unit/service_test.py::ServicePortsTest::test_formatted_ports PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/integration/state_test.py::ServiceStateTest::test_trigger_start PASSED [ 37%] tests/integration/volume_test.py::VolumeTest::test_create_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_create_volume_custom_name PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external_aliased PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_aliased_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_inspect_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_recreate_existing_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_remove_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels PASSED [ 38%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 38%] tests/unit/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_no_warning_when_no_container_volumes PASSED [ 56%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/unit/bundle_test.py::test_push_image PASSED [ 39%] tests/unit/bundle_test.py::test_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_convert_service_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_none PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_command PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_entrypoint PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 39%] tests/unit/bundle_test.py::test_make_service_networks_default PASSED [ 40%] tests/unit/bundle_test.py::test_make_service_networks PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_specs PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_with_protocol PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_default_protocol PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help_nonexistent PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_manual_and_service_ports_together PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_default_project_name PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_get_project PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_from_environment_new_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_empty_environment_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_environment_file PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_project_name PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_uppercase_base_dir PASSED [ 41%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_no_target PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_unix_path PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_url_no_prefix PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_windows_path PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_chunked_line PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_multiple_line_chunk PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_no_end_separator PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_preserves_unicode_sequences_within_lines PASSED [ 57%] tests/unit/split_buffer_test.py::SplitBufferTest::test_single_line_chunks PASSED [ 57%] tests/unit/timeparse_test.py::test_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_milli_float PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli_micro PASSED [ 57%] tests/unit/timeparse_test.py::test_second PASSED [ 57%] tests/unit/timeparse_test.py::test_second_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_minute_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute_second PASSED [ 57%] tests/unit/timeparse_test.py::test_invalid_with_space PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_comma PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_empty_string PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestParseBytes::test_parse_bytes PASSED [ 58%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/cli_test.py::CLITestCase::test_run_service_with_restart_always PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_environment PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps_prefixed PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get_local_port PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_has_api_logs PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_none PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_public_and_private PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_healthy PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_no_health PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_starting PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_inspect_if_not_inspected PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_custom_container_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_one_off PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_number PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_short_id PASSED [ 43%] tests/unit/container_test.py::GetContainerNameTestCase::test_get_container_name PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_driver_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote_ipam_options PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_options_mismatch PASSED [ 43%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/volume_test.py::TestVolume::test_remove_external_volume PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_single_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_windows SKIPPED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_custom_separator PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_no_path PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_env SKIPPED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 59%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_success PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_whitelist PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_labels_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_remote_config_labels_none PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_deps PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_global_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_upstream_errors PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_alignment PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_ansi PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_noansi PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_pull PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_push PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_mismatched_encoding_stream_write PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_div_zero PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_no_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_null_total PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_tty PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 50%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_with_custom_timeout PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_user_agent PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_assert_hostname_explicit_skip PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_simple_tls PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_quoted_paths PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert_explicit PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_missing_key PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_flags_override_environment PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_mixed_environment_and_flags PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_simple_with_tls_version PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_default_cert_path PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_env_falsy_value PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_flag_no_override PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_default PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_upgrade PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_unavailable PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_no_data SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_misc SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_encoding_issue SKIPPED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_warn PASSED [ 63%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_warn PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_monochrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_polychrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit_raises PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_build_no_log_generator PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_no_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_with_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_unicode PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_stop_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_container_attach_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_other_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_an_exception PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_without_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_with_cascade_stop PASSED [ 64%] tests/unit/project_test.py::ProjectTest::test_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_none_when_timeout_is_hit PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_warning_in_swarm_mode PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_build_one_off_container_options PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_get_docker_start_call PASSED [ 64%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_not_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_not_a_tty PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_invalid_opts PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_always PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_never PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_changed PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_no_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_tls_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_advanced_tls_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option_shorthand_equal PASSED [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_env PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_nested_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_no_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_simple_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_uneven_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_100b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1023b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1kb PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_999b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_units PASSED [ 66%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_call PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_no_result PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_sequence PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_allow_empty_properties PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_check_zero_preserved PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration_v2 PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_convertible_label_types PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_cache_from_values_validation_error PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_mount_points PASSED [ 67%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_list_of_dicts_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_string_raises_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_hint PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2 PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2_when_no_interpolate PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_property_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_ipam_config PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_label_types PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_invalid_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_required_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_soft_greater_than_hard_error PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_environment_dict_key_contains_dashes PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_ipam_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_label_validation PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_names PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_orders_services PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_unknown_service_errors PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_dns_opt_option PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_empty_environment_key_allowed PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_invalid_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_group_add_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_build_and_image_specified_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_a_dictionary PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_unique_items PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_type_should_be_an_array PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v2 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/integration/state_test.py::ServiceStateTest::test_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED [ 86%] tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_same_file_optimization PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/integration/state_test.py::ServiceStateTest::test_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED [ 90%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%] tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%] tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_default_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%] ----------- coverage: platform linux, python 3.7.4-final-0 ----------- Name Stmts Miss Branch BrPart Cover Missing ----------------------------------------------------------------------------- compose/__init__.py 3 0 0 0 100% compose/__main__.py 4 4 0 0 0% 1-6 compose/bundle.py 144 21 62 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149 compose/cli/__init__.py 0 0 0 0 100% compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit compose/cli/command.py 104 14 34 5 83% 71-81, 121-126, 177, 200, 70->71, 120->121, 165->168, 176->177, 197->200 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127 compose/cli/formatter.py 37 3 10 1 91% 15, 22-23, 12->15 compose/cli/log_printer.py 149 10 55 6 91% 76, 103, 110-115, 167, 176, 229-232, 262, 43->exit, 75->76, 98->103, 174->176, 228->229, 237->243 compose/cli/main.py 696 91 305 41 84% 84-85, 87-88, 169, 330, 362-364, 447, 507, 511, 516-517, 527-556, 568, 586-588, 592, 659-660, 698-699, 717, 738-739, 751, 774, 792, 839, 1071, 1080, 1109-1118, 1158-1161, 1169-1173, 1175-1180, 1203, 1225-1254, 1261-1262, 1264-1266, 1281, 1287, 1471, 1489, 1505, 1509-1510, 1521, 1526, 1529, 1555, 1574-1576, 1586, 1597, 61->64, 83->84, 86->87, 168->169, 329->330, 361->362, 446->447, 506->507, 510->511, 521->527, 565->568, 585->586, 591->592, 657->659, 716->717, 737->738, 750->751, 773->774, 829->839, 831->exit, 1070->1071, 1079->1080, 1168->1169, 1174->1175, 1202->1203, 1260->1261, 1263->1264, 1280->1281, 1286->1287, 1470->1471, 1488->1489, 1504->1505, 1520->1521, 1525->1526, 1528->1529, 1547->exit, 1554->1555, 1568->1576, 1570->1574, 1585->1586, 1595->1597 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60 compose/config/__init__.py 13 0 0 0 100% compose/config/config.py 826 28 428 18 95% 266, 508, 578, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 577->578, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412 compose/config/environment.py 96 8 34 5 90% 21, 41, 98-101, 114, 121, 20->21, 40->41, 97->98, 113->114, 120->121 compose/config/errors.py 25 2 2 0 85% 36-40 compose/config/interpolation.py 148 6 64 3 95% 66, 148, 222, 227-229, 121->exit, 146->148, 221->222 compose/config/serialize.py 97 2 58 3 97% 31, 76, 30->31, 75->76, 82->85 compose/config/sort_services.py 44 1 24 1 97% 57, 56->57 compose/config/types.py 291 22 116 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502 compose/config/validation.py 254 14 141 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525 compose/const.py 39 0 0 0 100% compose/container.py 193 8 50 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320 compose/errors.py 17 1 0 0 94% 12 compose/network.py 190 19 95 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226 compose/parallel.py 199 2 58 1 99% 187, 326, 325->326 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116 compose/project.py 434 30 207 14 92% 61, 158, 214-215, 256-257, 367-368, 371-376, 390-393, 446, 497, 501, 528, 634, 637-640, 765-766, 772-775, 830, 58->61, 154->158, 333->335, 365->367, 370->371, 389->390, 445->446, 496->497, 500->501, 527->528, 633->634, 636->637, 684->exit, 768->775 compose/service.py 920 60 459 32 92% 65, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 493, 496, 514, 581, 626-629, 737, 956-957, 977-978, 1079, 1126, 1187, 1251-1266, 1306, 1345-1349, 1537, 1541, 1658, 1699, 1711, 1785, 1811, 1826, 1839, 1843-1844, 1848-1849, 64->65, 223->exit, 276->278, 299->300, 434->435, 476->477, 492->493, 495->496, 513->514, 571->581, 732->737, 955->956, 976->977, 1078->1079, 1125->1126, 1186->1187, 1305->1306, 1342->1345, 1536->1537, 1540->1541, 1589->exit, 1597->1596, 1635->1632, 1657->1658, 1698->1699, 1710->1711, 1784->1785, 1810->1811, 1825->1826, 1838->1839, 1842->1843, 1847->1848 compose/state.py 0 0 0 0 100% compose/timeparse.py 22 0 4 0 100% compose/utils.py 117 8 42 5 92% 27, 75-79, 125, 135, 161, 168, 171, 25->27, 124->125, 134->135, 167->168, 169->171 compose/version.py 6 0 0 0 100% compose/volume.py 126 4 44 3 95% 150, 200, 211-212, 141->150, 199->200, 209->211 ----------------------------------------------------------------------------- TOTAL 5648 443 2440 211 90% Coverage HTML written to dir coverage-html =========================== short test summary info ============================ XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt not supported by kernel XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt Not supported on most drivers SKIP [1] tests/acceptance/cli_test.py:2429: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2381: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2408: race condition between up and logs SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/unit/cli/command_test.py:69: Env values in Python 3 are already Unicode SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/unit/config/config_test.py:3778: windows paths ======= 1130 passed, 12 skipped, 2 xfailed, 3 xpassed in 932.14 seconds ======== ___________________________________ summary ____________________________________  py37: commands succeeded  congratulations :) + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 tests/integration/state_test.py::ServiceStateTest::test_trigger_start PASSED [ 37%] tests/integration/volume_test.py::VolumeTest::test_create_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_create_volume_custom_name PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external_aliased PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_aliased_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_inspect_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_recreate_existing_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_remove_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels PASSED [ 38%] tests/integration/state_test.py::ServiceStateTest::test_trigger_start PASSED [ 37%] tests/integration/volume_test.py::VolumeTest::test_create_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_create_volume_custom_name PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external_aliased PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_aliased_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_inspect_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_recreate_existing_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_remove_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels PASSED [ 38%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 38%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 38%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 52%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/unit/bundle_test.py::test_push_image PASSED [ 39%] tests/unit/bundle_test.py::test_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_convert_service_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_none PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_command PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_entrypoint PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 39%] tests/unit/bundle_test.py::test_make_service_networks_default PASSED [ 40%] tests/unit/bundle_test.py::test_make_service_networks PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_specs PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_with_protocol PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_default_protocol PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help_nonexistent PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_manual_and_service_ports_together PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_default_project_name PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_get_project PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_from_environment_new_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_empty_environment_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_environment_file PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_project_name PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_uppercase_base_dir PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/unit/bundle_test.py::test_push_image PASSED [ 39%] tests/unit/bundle_test.py::test_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_convert_service_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_none PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_command PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_entrypoint PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 39%] tests/unit/bundle_test.py::test_make_service_networks_default PASSED [ 40%] tests/unit/bundle_test.py::test_make_service_networks PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_specs PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_with_protocol PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_default_protocol PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help_nonexistent PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_manual_and_service_ports_together PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_default_project_name PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_get_project PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_from_environment_new_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_empty_environment_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_environment_file PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_project_name PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_uppercase_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_run_service_with_restart_always PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_environment PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps_prefixed PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get_local_port PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_has_api_logs PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_none PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_public_and_private PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_healthy PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_no_health PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_starting PASSED [ 42%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/unit/cli_test.py::CLITestCase::test_run_service_with_restart_always PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_environment PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps_prefixed PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get_local_port PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_has_api_logs PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_none PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_public_and_private PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_healthy PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_no_health PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_starting PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_inspect_if_not_inspected PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_custom_container_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_one_off PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_number PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_short_id PASSED [ 43%] tests/unit/container_test.py::GetContainerNameTestCase::test_get_container_name PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_driver_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote_ipam_options PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_options_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_success PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_whitelist PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_labels_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_remote_config_labels_none PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_deps PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_global_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_upstream_errors PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_alignment PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_ansi PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_noansi PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_pull PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_push PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_mismatched_encoding_stream_write PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_div_zero PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_no_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_null_total PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_tty PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] tests/unit/container_test.py::ContainerTest::test_inspect_if_not_inspected PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_custom_container_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_one_off PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_number PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_short_id PASSED [ 43%] tests/unit/container_test.py::GetContainerNameTestCase::test_get_container_name PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_driver_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote_ipam_options PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_options_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_success PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_whitelist PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_labels_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_remote_config_labels_none PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_deps PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_global_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_upstream_errors PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_alignment PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_ansi PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_noansi PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_pull PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_push PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_mismatched_encoding_stream_write PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_div_zero PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_no_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_null_total PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_tty PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/integration/state_test.py::ServiceStateTest::test_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/unit/service_test.py::TestServiceNetwork::test_connect_container_to_networks_short_aliase_exists PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_dict PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_integers_and_dicts PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_ints PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build <- tests/integration/testcases.py PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 47%] tests/unit/service_test.py::NetTestCase::test_network_mode_service_no_containers PASSED [ 55%] tests/unit/service_test.py::ServicePortsTest::test_formatted_ports PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_with_default_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_default_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/integration/state_test.py::ServiceStateTest::test_trigger_start PASSED [ 37%] tests/integration/volume_test.py::VolumeTest::test_create_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_create_volume_custom_name PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external_aliased <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_aliased_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_inspect_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_recreate_existing_volume PASSED [ 38%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/integration/volume_test.py::VolumeTest::test_remove_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels <- tests/integration/testcases.py PASSED [ 38%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 38%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_no_warning_when_no_container_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_no_target PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_unix_path PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_url_no_prefix PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_windows_path PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_chunked_line PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_multiple_line_chunk PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_no_end_separator PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_preserves_unicode_sequences_within_lines PASSED [ 57%] tests/unit/split_buffer_test.py::SplitBufferTest::test_single_line_chunks PASSED [ 57%] tests/unit/timeparse_test.py::test_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_milli_float PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli_micro PASSED [ 57%] tests/unit/timeparse_test.py::test_second PASSED [ 57%] tests/unit/timeparse_test.py::test_second_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_minute_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute_second PASSED [ 57%] tests/unit/timeparse_test.py::test_invalid_with_space PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_comma PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_empty_string PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestParseBytes::test_parse_bytes PASSED [ 58%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 49%] tests/unit/bundle_test.py::test_push_image PASSED [ 39%] tests/unit/bundle_test.py::test_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_convert_service_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_none PASSED [ 39%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/bundle_test.py::test_set_command_and_args_from_command PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_entrypoint PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 39%] tests/unit/bundle_test.py::test_make_service_networks_default PASSED [ 40%] tests/unit/bundle_test.py::test_make_service_networks PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_specs PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_with_protocol PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_default_protocol PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help_nonexistent PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_manual_and_service_ports_together PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_default_project_name PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_get_project PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_from_environment_new_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_empty_environment_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_environment_file PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_project_name PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_uppercase_base_dir PASSED [ 41%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/volume_test.py::TestVolume::test_remove_external_volume PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_single_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_windows SKIPPED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_custom_separator PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_no_path PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_env PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_with_custom_timeout PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_user_agent PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_assert_hostname_explicit_skip PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_simple_tls PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_quoted_paths PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert_explicit PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_missing_key PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_flags_override_environment PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_mixed_environment_and_flags PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_simple_with_tls_version PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_default_cert_path PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_env_falsy_value PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_flag_no_override PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_default PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_upgrade PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_unavailable PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_no_data SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_misc SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_encoding_issue SKIPPED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_warn PASSED [ 63%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_warn PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_monochrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_polychrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit_raises PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_build_no_log_generator PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_no_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_with_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_unicode PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_stop_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 63%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/cli_test.py::CLITestCase::test_run_service_with_restart_always PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_environment PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps_prefixed PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get_local_port PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_has_api_logs PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_none PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_public_and_private PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_healthy PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_no_health PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_starting PASSED [ 42%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_container_attach_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_other_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_an_exception PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_without_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_with_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_none_when_timeout_is_hit PASSED [ 64%] tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/unit/container_test.py::ContainerTest::test_inspect_if_not_inspected PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_custom_container_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_one_off PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_number PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_short_id PASSED [ 43%] tests/unit/container_test.py::GetContainerNameTestCase::test_get_container_name PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_driver_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote_ipam_options PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_options_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_success PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_whitelist PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_labels_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_remote_config_labels_none PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_deps PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_global_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_upstream_errors PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_alignment PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_ansi PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_noansi PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_pull PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_push PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_mismatched_encoding_stream_write PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_div_zero PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_no_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_null_total PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_tty PASSED [ 45%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_warning_in_swarm_mode PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_build_one_off_container_options PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_get_docker_start_call PASSED [ 64%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_not_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_not_a_tty PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_invalid_opts PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_always PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_never PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_changed PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_no_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_tls_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_advanced_tls_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option_shorthand_equal PASSED [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_env PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_nested_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_no_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_simple_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_uneven_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_100b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1023b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1kb PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_999b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_units PASSED [ 66%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_call PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_no_result PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_sequence PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_allow_empty_properties PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_check_zero_preserved PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration_v2 PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_convertible_label_types PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_cache_from_values_validation_error PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_mount_points PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_list_of_dicts_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_string_raises_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_hint PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2 PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2_when_no_interpolate PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_property_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_ipam_config PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_label_types PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_invalid_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_required_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_soft_greater_than_hard_error PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_environment_dict_key_contains_dashes PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_ipam_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_label_validation PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_names PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_orders_services PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_unknown_service_errors PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_dns_opt_option PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_empty_environment_key_allowed PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_config PASSED [ 69%] tests/unit/service_test.py::TestServiceNetwork::test_connect_container_to_networks_short_aliase_exists PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_dict PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_integers_and_dicts PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_ints PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_invalid_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_group_add_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_build_and_image_specified_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_a_dictionary PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_unique_items PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_type_should_be_an_array PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v2 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED [ 71%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/unit/service_test.py::NetTestCase::test_network_mode_service_no_containers PASSED [ 55%] tests/unit/service_test.py::ServicePortsTest::test_formatted_ports PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 45%] tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED [ 86%] tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_same_file_optimization PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%] tests/unit/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED [ 90%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%] tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%] tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_no_warning_when_no_container_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_no_target PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_unix_path PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_url_no_prefix PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_windows_path PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_chunked_line PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_multiple_line_chunk PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_no_end_separator PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_preserves_unicode_sequences_within_lines PASSED [ 57%] tests/unit/split_buffer_test.py::SplitBufferTest::test_single_line_chunks PASSED [ 57%] tests/unit/timeparse_test.py::test_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_milli_float PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli_micro PASSED [ 57%] tests/unit/timeparse_test.py::test_second PASSED [ 57%] tests/unit/timeparse_test.py::test_second_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_minute_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute_second PASSED [ 57%] tests/unit/timeparse_test.py::test_invalid_with_space PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_comma PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_empty_string PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestParseBytes::test_parse_bytes PASSED [ 58%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/volume_test.py::TestVolume::test_remove_external_volume PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_single_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_windows SKIPPED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_custom_separator PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_no_path PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_env SKIPPED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_with_custom_timeout PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_user_agent PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_assert_hostname_explicit_skip PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_simple_tls PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_quoted_paths PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert_explicit PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_missing_key PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_flags_override_environment PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_mixed_environment_and_flags PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_simple_with_tls_version PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_default_cert_path PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_env_falsy_value PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_flag_no_override PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_default PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_upgrade PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_unavailable PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_no_data SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_misc SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_encoding_issue SKIPPED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_warn PASSED [ 63%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_warn PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_monochrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_polychrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit_raises PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_build_no_log_generator PASSED [ 63%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_no_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_with_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_unicode PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_stop_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_container_attach_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_other_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_an_exception PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_without_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_with_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_none_when_timeout_is_hit PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names PASSED [ 64%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_warning_in_swarm_mode PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_build_one_off_container_options PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_get_docker_start_call PASSED [ 64%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_verbose PASSED [ 65%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 46%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_not_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_not_a_tty PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_invalid_opts PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_always PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_never PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_changed PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_no_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_tls_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_advanced_tls_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option_shorthand_equal PASSED [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_env PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_nested_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_no_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_simple_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_uneven_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_100b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1023b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1kb PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_999b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_units PASSED [ 66%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_call PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_no_result PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_sequence PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_allow_empty_properties PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_check_zero_preserved PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration_v2 PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_convertible_label_types PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_cache_from_values_validation_error PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_mount_points PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_list_of_dicts_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_string_raises_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_hint PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2 PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2_when_no_interpolate PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_property_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_ipam_config PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_label_types PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_invalid_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_required_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_soft_greater_than_hard_error PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_environment_dict_key_contains_dashes PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_ipam_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_label_validation PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_names PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_orders_services PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_unknown_service_errors PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_dns_opt_option PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_empty_environment_key_allowed PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_invalid_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_group_add_option PASSED [ 70%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_build_and_image_specified_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_a_dictionary PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_unique_items PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_type_should_be_an_array PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v2 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED [ 86%] tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED [ 88%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_same_file_optimization PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED [ 90%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%] tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%] tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%] ---------- coverage: platform linux2, python 2.7.16-final-0 ---------- Name Stmts Miss Branch BrPart Cover Missing ----------------------------------------------------------------------------- compose/__init__.py 3 0 0 0 100% compose/__main__.py 4 4 0 0 0% 1-6 compose/bundle.py 144 21 60 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149 compose/cli/__init__.py 0 0 0 0 100% compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit compose/cli/command.py 104 14 32 5 83% 71-81, 121-126, 177, 200, 70->71, 120->121, 165->168, 176->177, 197->200 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127 compose/cli/formatter.py 37 3 8 1 91% 13, 22-23, 12->13 compose/cli/log_printer.py 149 10 53 6 91% 76, 103, 110-115, 167, 176, 229-232, 262, 43->exit, 75->76, 98->103, 174->176, 228->229, 237->243 compose/cli/main.py 696 91 290 41 84% 84-85, 87-88, 169, 330, 362-364, 447, 507, 511, 516-517, 527-556, 568, 586-588, 592, 659-660, 698-699, 717, 738-739, 751, 774, 792, 839, 1071, 1080, 1109-1118, 1158-1161, 1169-1173, 1175-1180, 1203, 1225-1254, 1261-1262, 1264-1266, 1281, 1287, 1471, 1489, 1505, 1509-1510, 1521, 1526, 1529, 1555, 1574-1576, 1586, 1597, 61->64, 83->84, 86->87, 168->169, 329->330, 361->362, 446->447, 506->507, 510->511, 521->527, 565->568, 585->586, 591->592, 657->659, 716->717, 737->738, 750->751, 773->774, 829->839, 831->exit, 1070->1071, 1079->1080, 1168->1169, 1174->1175, 1202->1203, 1260->1261, 1263->1264, 1280->1281, 1286->1287, 1470->1471, 1488->1489, 1504->1505, 1520->1521, 1525->1526, 1528->1529, 1547->exit, 1554->1555, 1568->1576, 1570->1574, 1585->1586, 1595->1597 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60 compose/config/__init__.py 13 0 0 0 100% compose/config/config.py 826 28 388 18 95% 266, 508, 578, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 577->578, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412 compose/config/environment.py 96 7 34 4 92% 41, 98-101, 114, 121, 40->41, 97->98, 113->114, 120->121 compose/config/errors.py 25 2 0 0 92% 36-40 compose/config/interpolation.py 148 7 62 4 94% 66, 148, 196, 222, 227-229, 121->exit, 146->148, 195->196, 221->222 compose/config/serialize.py 97 1 50 2 98% 76, 75->76, 82->85 compose/config/sort_services.py 44 1 18 1 97% 57, 56->57 compose/config/types.py 291 22 112 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502 compose/config/validation.py 254 14 140 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525 compose/const.py 39 0 0 0 100% compose/container.py 193 8 48 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320 compose/errors.py 17 1 0 0 94% 12 compose/network.py 190 19 92 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226 compose/parallel.py 199 2 56 1 99% 187, 326, 325->326 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116 compose/project.py 434 30 178 14 92% 61, 158, 214-215, 256-257, 367-368, 371-376, 390-393, 446, 497, 501, 528, 634, 637-640, 765-766, 772-775, 830, 58->61, 154->158, 333->335, 365->367, 370->371, 389->390, 445->446, 496->497, 500->501, 527->528, 633->634, 636->637, 684->exit, 768->775 compose/service.py 920 57 406 30 92% 67, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 493, 496, 514, 581, 626-629, 737, 956-957, 977-978, 1079, 1126, 1187, 1251-1266, 1306, 1345-1349, 1537, 1541, 1699, 1785, 1826, 1839, 1843-1844, 1848-1849, 64->67, 223->exit, 276->278, 299->300, 434->435, 476->477, 492->493, 495->496, 513->514, 571->581, 732->737, 955->956, 976->977, 1078->1079, 1125->1126, 1186->1187, 1305->1306, 1342->1345, 1536->1537, 1540->1541, 1589->exit, 1597->1596, 1635->1632, 1698->1699, 1784->1785, 1810->1812, 1825->1826, 1838->1839, 1842->1843, 1847->1848 compose/state.py 0 0 0 0 100% compose/timeparse.py 22 0 4 0 100% compose/utils.py 117 8 42 5 92% 26, 75-79, 125, 135, 161, 168, 171, 25->26, 124->125, 134->135, 167->168, 169->171 compose/version.py 6 0 0 0 100% compose/volume.py 126 4 44 3 95% 150, 200, 211-212, 141->150, 199->200, 209->211 ----------------------------------------------------------------------------- TOTAL 5648 439 2265 208 90% Coverage HTML written to dir coverage-html =========================== short test summary info ============================ XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt not supported by kernel XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt Not supported on most drivers SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/unit/config/config_test.py:3778: windows paths SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/acceptance/cli_test.py:2429: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/acceptance/cli_test.py:2408: race condition between up and logs SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/acceptance/cli_test.py:2381: race condition between up and logs ======= 1131 passed, 11 skipped, 2 xfailed, 3 xpassed in 985.35 seconds ======== ___________________________________ summary ____________________________________  py27: commands succeeded  congratulations :) tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 47%] compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/integration/state_test.py::ServiceStateTest::test_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/service_test.py::TestServiceNetwork::test_connect_container_to_networks_short_aliase_exists PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_dict PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_integers_and_dicts PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_ints PASSED [ 54%] tests/unit/service_test.py::TestServiceNetwork::test_connect_container_to_networks_short_aliase_exists PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_dict PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_integers_and_dicts PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_ints PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_build_with_default_platform PASSED [ 48%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/unit/service_test.py::NetTestCase::test_network_mode_service_no_containers PASSED [ 55%] tests/unit/service_test.py::ServicePortsTest::test_formatted_ports PASSED [ 55%] tests/unit/service_test.py::NetTestCase::test_network_mode_service_no_containers PASSED [ 55%] tests/unit/service_test.py::ServicePortsTest::test_formatted_ports PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%] ----------- coverage: platform linux, python 3.7.4-final-0 ----------- Name Stmts Miss Branch BrPart Cover Missing ----------------------------------------------------------------------------- compose/__init__.py 3 0 0 0 100% compose/__main__.py 4 4 0 0 0% 1-6 compose/bundle.py 144 21 62 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149 compose/cli/__init__.py 0 0 0 0 100% compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit compose/cli/command.py 104 14 34 5 83% 71-81, 121-126, 177, 200, 70->71, 120->121, 165->168, 176->177, 197->200 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127 compose/cli/formatter.py 37 3 10 1 91% 15, 22-23, 12->15 compose/cli/log_printer.py 149 10 55 6 91% 76, 103, 110-115, 167, 176, 229-232, 262, 43->exit, 75->76, 98->103, 174->176, 228->229, 237->243 compose/cli/main.py 696 91 305 41 84% 84-85, 87-88, 169, 330, 362-364, 447, 507, 511, 516-517, 527-556, 568, 586-588, 592, 659-660, 698-699, 717, 738-739, 751, 774, 792, 839, 1071, 1080, 1109-1118, 1158-1161, 1169-1173, 1175-1180, 1203, 1225-1254, 1261-1262, 1264-1266, 1281, 1287, 1471, 1489, 1505, 1509-1510, 1521, 1526, 1529, 1555, 1574-1576, 1586, 1597, 61->64, 83->84, 86->87, 168->169, 329->330, 361->362, 446->447, 506->507, 510->511, 521->527, 565->568, 585->586, 591->592, 657->659, 716->717, 737->738, 750->751, 773->774, 829->839, 831->exit, 1070->1071, 1079->1080, 1168->1169, 1174->1175, 1202->1203, 1260->1261, 1263->1264, 1280->1281, 1286->1287, 1470->1471, 1488->1489, 1504->1505, 1520->1521, 1525->1526, 1528->1529, 1547->exit, 1554->1555, 1568->1576, 1570->1574, 1585->1586, 1595->1597 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60 compose/config/__init__.py 13 0 0 0 100% compose/config/config.py 826 28 428 18 95% 266, 508, 578, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 577->578, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412 compose/config/environment.py 96 8 34 5 90% 21, 41, 98-101, 114, 121, 20->21, 40->41, 97->98, 113->114, 120->121 compose/config/errors.py 25 2 2 0 85% 36-40 compose/config/interpolation.py 148 6 64 3 95% 66, 148, 222, 227-229, 121->exit, 146->148, 221->222 compose/config/serialize.py 97 2 58 3 97% 31, 76, 30->31, 75->76, 82->85 compose/config/sort_services.py 44 1 24 1 97% 57, 56->57 compose/config/types.py 291 22 116 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502 compose/config/validation.py 254 14 141 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525 compose/const.py 39 0 0 0 100% compose/container.py 193 8 50 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320 compose/errors.py 17 1 0 0 94% 12 compose/network.py 190 19 95 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226 compose/parallel.py 199 2 58 1 99% 187, 326, 325->326 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116 compose/project.py 434 30 207 14 92% 61, 158, 214-215, 256-257, 367-368, 371-376, 390-393, 446, 497, 501, 528, 634, 637-640, 765-766, 772-775, 830, 58->61, 154->158, 333->335, 365->367, 370->371, 389->390, 445->446, 496->497, 500->501, 527->528, 633->634, 636->637, 684->exit, 768->775 compose/service.py 920 60 459 32 92% 65, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 493, 496, 514, 581, 626-629, 737, 956-957, 977-978, 1079, 1126, 1187, 1251-1266, 1306, 1345-1349, 1537, 1541, 1658, 1699, 1711, 1785, 1811, 1826, 1839, 1843-1844, 1848-1849, 64->65, 223->exit, 276->278, 299->300, 434->435, 476->477, 492->493, 495->496, 513->514, 571->581, 732->737, 955->956, 976->977, 1078->1079, 1125->1126, 1186->1187, 1305->1306, 1342->1345, 1536->1537, 1540->1541, 1589->exit, 1597->1596, 1635->1632, 1657->1658, 1698->1699, 1710->1711, 1784->1785, 1810->1811, 1825->1826, 1838->1839, 1842->1843, 1847->1848 compose/state.py 0 0 0 0 100% compose/timeparse.py 22 0 4 0 100% compose/utils.py 117 8 42 5 92% 27, 75-79, 125, 135, 161, 168, 171, 25->27, 124->125, 134->135, 167->168, 169->171 compose/version.py 6 0 0 0 100% compose/volume.py 126 4 44 4 94% 150, 200, 211-212, 141->150, 199->200, 201->198, 209->211 ----------------------------------------------------------------------------- TOTAL 5648 443 2440 212 90% Coverage HTML written to dir coverage-html =========================== short test summary info ============================ XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt not supported by kernel XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt Not supported on most drivers SKIP [1] tests/acceptance/cli_test.py:2429: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2381: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2408: race condition between up and logs SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/unit/cli/command_test.py:69: Env values in Python 3 are already Unicode SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/unit/config/config_test.py:3778: windows paths ======= 1130 passed, 12 skipped, 2 xfailed, 3 xpassed in 853.55 seconds ======== ___________________________________ summary ____________________________________  py37: commands succeeded  congratulations :) + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 48%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build <- tests/integration/testcases.py PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_no_warning_when_no_container_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_no_warning_when_no_container_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_no_target PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_unix_path PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_url_no_prefix PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_windows_path PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_chunked_line PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_multiple_line_chunk PASSED [ 56%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_no_end_separator PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_preserves_unicode_sequences_within_lines PASSED [ 57%] tests/unit/split_buffer_test.py::SplitBufferTest::test_single_line_chunks PASSED [ 57%] tests/unit/timeparse_test.py::test_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_milli_float PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli_micro PASSED [ 57%] tests/unit/timeparse_test.py::test_second PASSED [ 57%] tests/unit/timeparse_test.py::test_second_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_minute_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute_second PASSED [ 57%] tests/unit/timeparse_test.py::test_invalid_with_space PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_comma PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_empty_string PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestParseBytes::test_parse_bytes PASSED [ 58%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_no_target PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_unix_path PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_url_no_prefix PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_windows_path PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_chunked_line PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_multiple_line_chunk PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_no_end_separator PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_preserves_unicode_sequences_within_lines PASSED [ 57%] tests/unit/split_buffer_test.py::SplitBufferTest::test_single_line_chunks PASSED [ 57%] tests/unit/timeparse_test.py::test_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_milli_float PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli_micro PASSED [ 57%] tests/unit/timeparse_test.py::test_second PASSED [ 57%] tests/unit/timeparse_test.py::test_second_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_minute_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute_second PASSED [ 57%] tests/unit/timeparse_test.py::test_invalid_with_space PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_comma PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_empty_string PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestParseBytes::test_parse_bytes PASSED [ 58%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/volume_test.py::TestVolume::test_remove_external_volume PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_single_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_windows SKIPPED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_custom_separator PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_no_path PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_env SKIPPED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_with_custom_timeout PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_user_agent PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_assert_hostname_explicit_skip PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_simple_tls PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_quoted_paths PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert_explicit PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_missing_key PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_flags_override_environment PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_mixed_environment_and_flags PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_simple_with_tls_version PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_default_cert_path PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_env_falsy_value PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_flag_no_override PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_default PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_upgrade PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_unavailable PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 61%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/volume_test.py::TestVolume::test_remove_external_volume PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_single_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_windows SKIPPED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_custom_separator PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_no_path PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_env SKIPPED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_with_custom_timeout PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_user_agent PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_assert_hostname_explicit_skip PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_simple_tls PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_quoted_paths PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert_explicit PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_missing_key PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_flags_override_environment PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_mixed_environment_and_flags PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_no_data SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_misc SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_encoding_issue SKIPPED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_warn PASSED [ 63%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_warn PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_monochrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_polychrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit_raises PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_build_no_log_generator PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_no_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_with_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_unicode PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_stop_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_container_attach_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_other_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_an_exception PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_without_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_with_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_none_when_timeout_is_hit PASSED [ 64%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_simple_with_tls_version PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_default_cert_path PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_env_falsy_value PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_flag_no_override PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_default PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_upgrade PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_unavailable PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_no_data SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_misc SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_encoding_issue SKIPPED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_warn PASSED [ 63%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_warn PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_monochrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_polychrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit_raises PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_build_no_log_generator PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_no_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_with_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_unicode PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_stop_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_container_attach_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_other_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_an_exception PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_without_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_with_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_none_when_timeout_is_hit PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/integration/state_test.py::ServiceStateTest::test_trigger_start PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_warning_in_swarm_mode PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_build_one_off_container_options PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_get_docker_start_call PASSED [ 64%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_not_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_not_a_tty PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_invalid_opts PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_always PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_never PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_changed PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_no_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_tls_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_advanced_tls_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option_shorthand_equal PASSED [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_env PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_nested_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_no_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_simple_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_uneven_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_100b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1023b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1kb PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_999b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_units PASSED [ 66%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_call PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_no_result PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_sequence PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_allow_empty_properties PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_check_zero_preserved PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration_v2 PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_convertible_label_types PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_cache_from_values_validation_error PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_mount_points PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_list_of_dicts_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_string_raises_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_hint PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2 PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2_when_no_interpolate PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_property_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_ipam_config PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_label_types PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_invalid_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_required_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_soft_greater_than_hard_error PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_environment_dict_key_contains_dashes PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_ipam_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_label_validation PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_names PASSED [ 69%] tests/integration/volume_test.py::VolumeTest::test_create_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_create_volume_custom_name PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external_aliased <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_aliased_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_inspect_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_recreate_existing_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_remove_volume <- tests/integration/testcases.py PASSED [ 38%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_warning_in_swarm_mode PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_build_one_off_container_options PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_get_docker_start_call PASSED [ 64%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_not_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_not_a_tty PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_invalid_opts PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_always PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_never PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_changed PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_no_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_tls_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_advanced_tls_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option_shorthand_equal PASSED [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_env PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_nested_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_no_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_simple_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_uneven_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_100b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1023b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1kb PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_999b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_units PASSED [ 66%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_call PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_no_result PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_sequence PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_allow_empty_properties PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_check_zero_preserved PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration_v2 PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_convertible_label_types PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_cache_from_values_validation_error PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_mount_points PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_list_of_dicts_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_string_raises_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_hint PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2 PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2_when_no_interpolate PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_property_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_ipam_config PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_label_types PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_invalid_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_required_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_soft_greater_than_hard_error PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_environment_dict_key_contains_dashes PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_ipam_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_label_validation PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_orders_services PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_unknown_service_errors PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_dns_opt_option PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_empty_environment_key_allowed PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_invalid_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_group_add_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_build_and_image_specified_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_a_dictionary PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_unique_items PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_type_should_be_an_array PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v2 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 72%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels <- tests/integration/testcases.py PASSED [ 38%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_names PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_orders_services PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_unknown_service_errors PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_dns_opt_option PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_empty_environment_key_allowed PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_invalid_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_group_add_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_build_and_image_specified_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_a_dictionary PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_unique_items PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_type_should_be_an_array PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v2 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 38%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED [ 86%] tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 36%] tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_same_file_optimization PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED [ 86%] tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_same_file_optimization PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED [ 90%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%] tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%] tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED [ 90%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%] tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%] tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%] tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/unit/bundle_test.py::test_push_image PASSED [ 39%] tests/unit/bundle_test.py::test_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_convert_service_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_none PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_command PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_entrypoint PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 39%] tests/unit/bundle_test.py::test_make_service_networks_default PASSED [ 40%] tests/unit/bundle_test.py::test_make_service_networks PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_specs PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_with_protocol PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_default_protocol PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help_nonexistent PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_manual_and_service_ports_together PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_default_project_name PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_get_project PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_from_environment_new_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_empty_environment_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_environment_file PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_project_name PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_uppercase_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/unit/cli_test.py::CLITestCase::test_run_service_with_restart_always PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_environment PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps_prefixed PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/container_test.py::ContainerTest::test_get_local_port PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_has_api_logs PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_none PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_public_and_private PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_healthy PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_no_health PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_starting PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_inspect_if_not_inspected PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_custom_container_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_one_off PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_number PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_short_id PASSED [ 43%] tests/unit/container_test.py::GetContainerNameTestCase::test_get_container_name PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_driver_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote_ipam_options PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_options_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_success PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_whitelist PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_labels_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_remote_config_labels_none PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_deps PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_global_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_upstream_errors PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_alignment PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_ansi PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_noansi PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_pull PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_push PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_mismatched_encoding_stream_write PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_div_zero PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_no_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_null_total PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_tty PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%] ----------- coverage: platform linux, python 3.7.4-final-0 ----------- Name Stmts Miss Branch BrPart Cover Missing ----------------------------------------------------------------------------- compose/__init__.py 3 0 0 0 100% compose/__main__.py 4 4 0 0 0% 1-6 compose/bundle.py 144 21 62 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149 compose/cli/__init__.py 0 0 0 0 100% compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit compose/cli/command.py 104 14 34 5 83% 71-81, 121-126, 177, 200, 70->71, 120->121, 165->168, 176->177, 197->200 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127 compose/cli/formatter.py 37 3 10 1 91% 15, 22-23, 12->15 compose/cli/log_printer.py 149 10 55 6 91% 76, 103, 110-115, 167, 176, 229-232, 262, 43->exit, 75->76, 98->103, 174->176, 228->229, 237->243 compose/cli/main.py 696 91 305 41 84% 84-85, 87-88, 169, 330, 362-364, 447, 507, 511, 516-517, 527-556, 568, 586-588, 592, 659-660, 698-699, 717, 738-739, 751, 774, 792, 839, 1071, 1080, 1109-1118, 1158-1161, 1169-1173, 1175-1180, 1203, 1225-1254, 1261-1262, 1264-1266, 1281, 1287, 1471, 1489, 1505, 1509-1510, 1521, 1526, 1529, 1555, 1574-1576, 1586, 1597, 61->64, 83->84, 86->87, 168->169, 329->330, 361->362, 446->447, 506->507, 510->511, 521->527, 565->568, 585->586, 591->592, 657->659, 716->717, 737->738, 750->751, 773->774, 829->839, 831->exit, 1070->1071, 1079->1080, 1168->1169, 1174->1175, 1202->1203, 1260->1261, 1263->1264, 1280->1281, 1286->1287, 1470->1471, 1488->1489, 1504->1505, 1520->1521, 1525->1526, 1528->1529, 1547->exit, 1554->1555, 1568->1576, 1570->1574, 1585->1586, 1595->1597 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60 compose/config/__init__.py 13 0 0 0 100% compose/config/config.py 826 28 428 18 95% 266, 508, 578, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 577->578, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412 compose/config/environment.py 96 8 34 5 90% 21, 41, 98-101, 114, 121, 20->21, 40->41, 97->98, 113->114, 120->121 compose/config/errors.py 25 2 2 0 85% 36-40 compose/config/interpolation.py 148 6 64 3 95% 66, 148, 222, 227-229, 121->exit, 146->148, 221->222 compose/config/serialize.py 97 2 58 3 97% 31, 76, 30->31, 75->76, 82->85 compose/config/sort_services.py 44 1 24 1 97% 57, 56->57 compose/config/types.py 291 22 116 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502 compose/config/validation.py 254 14 141 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525 compose/const.py 39 0 0 0 100% compose/container.py 193 8 50 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320 compose/errors.py 17 1 0 0 94% 12 compose/network.py 190 19 95 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226 compose/parallel.py 199 2 58 1 99% 187, 326, 325->326 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116 compose/project.py 434 30 207 14 92% 61, 158, 214-215, 256-257, 367-368, 371-376, 390-393, 446, 497, 501, 528, 634, 637-640, 765-766, 772-775, 830, 58->61, 154->158, 333->335, 365->367, 370->371, 389->390, 445->446, 496->497, 500->501, 527->528, 633->634, 636->637, 684->exit, 768->775 compose/service.py 920 60 459 32 92% 65, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 493, 496, 514, 581, 626-629, 737, 956-957, 977-978, 1079, 1126, 1187, 1251-1266, 1306, 1345-1349, 1537, 1541, 1658, 1699, 1711, 1785, 1811, 1826, 1839, 1843-1844, 1848-1849, 64->65, 223->exit, 276->278, 299->300, 434->435, 476->477, 492->493, 495->496, 513->514, 571->581, 732->737, 955->956, 976->977, 1078->1079, 1125->1126, 1186->1187, 1305->1306, 1342->1345, 1536->1537, 1540->1541, 1589->exit, 1597->1596, 1635->1632, 1657->1658, 1698->1699, 1710->1711, 1784->1785, 1810->1811, 1825->1826, 1838->1839, 1842->1843, 1847->1848 compose/state.py 0 0 0 0 100% compose/timeparse.py 22 0 4 0 100% compose/utils.py 117 8 42 5 92% 27, 75-79, 125, 135, 161, 168, 171, 25->27, 124->125, 134->135, 167->168, 169->171 compose/version.py 6 0 0 0 100% compose/volume.py 126 4 44 3 95% 150, 200, 211-212, 141->150, 199->200, 209->211 ----------------------------------------------------------------------------- TOTAL 5648 443 2440 211 90% Coverage HTML written to dir coverage-html =========================== short test summary info ============================ XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt not supported by kernel XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt Not supported on most drivers SKIP [1] tests/acceptance/cli_test.py:2429: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2381: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2408: race condition between up and logs SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/unit/cli/command_test.py:69: Env values in Python 3 are already Unicode SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/unit/config/config_test.py:3778: windows paths ======= 1130 passed, 12 skipped, 2 xfailed, 3 xpassed in 862.09 seconds ======== tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%] ----------- coverage: platform linux, python 3.7.4-final-0 ----------- Name Stmts Miss Branch BrPart Cover Missing ----------------------------------------------------------------------------- compose/__init__.py 3 0 0 0 100% compose/__main__.py 4 4 0 0 0% 1-6 compose/bundle.py 144 21 62 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149 compose/cli/__init__.py 0 0 0 0 100% compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit compose/cli/command.py 104 14 34 5 83% 71-81, 121-126, 177, 200, 70->71, 120->121, 165->168, 176->177, 197->200 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127 compose/cli/formatter.py 37 3 10 1 91% 15, 22-23, 12->15 compose/cli/log_printer.py 149 10 55 6 91% 76, 103, 110-115, 167, 176, 229-232, 262, 43->exit, 75->76, 98->103, 174->176, 228->229, 237->243 compose/cli/main.py 696 91 305 41 84% 84-85, 87-88, 169, 330, 362-364, 447, 507, 511, 516-517, 527-556, 568, 586-588, 592, 659-660, 698-699, 717, 738-739, 751, 774, 792, 839, 1071, 1080, 1109-1118, 1158-1161, 1169-1173, 1175-1180, 1203, 1225-1254, 1261-1262, 1264-1266, 1281, 1287, 1471, 1489, 1505, 1509-1510, 1521, 1526, 1529, 1555, 1574-1576, 1586, 1597, 61->64, 83->84, 86->87, 168->169, 329->330, 361->362, 446->447, 506->507, 510->511, 521->527, 565->568, 585->586, 591->592, 657->659, 716->717, 737->738, 750->751, 773->774, 829->839, 831->exit, 1070->1071, 1079->1080, 1168->1169, 1174->1175, 1202->1203, 1260->1261, 1263->1264, 1280->1281, 1286->1287, 1470->1471, 1488->1489, 1504->1505, 1520->1521, 1525->1526, 1528->1529, 1547->exit, 1554->1555, 1568->1576, 1570->1574, 1585->1586, 1595->1597 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60 compose/config/__init__.py 13 0 0 0 100% compose/config/config.py 826 28 428 18 95% 266, 508, 578, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 577->578, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412 compose/config/environment.py 96 8 34 5 90% 21, 41, 98-101, 114, 121, 20->21, 40->41, 97->98, 113->114, 120->121 compose/config/errors.py 25 2 2 0 85% 36-40 compose/config/interpolation.py 148 6 64 3 95% 66, 148, 222, 227-229, 121->exit, 146->148, 221->222 compose/config/serialize.py 97 2 58 3 97% 31, 76, 30->31, 75->76, 82->85 compose/config/sort_services.py 44 1 24 1 97% 57, 56->57 compose/config/types.py 291 22 116 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502 compose/config/validation.py 254 14 141 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525 compose/const.py 39 0 0 0 100% compose/container.py 193 8 50 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320 compose/errors.py 17 1 0 0 94% 12 compose/network.py 190 19 95 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226 compose/parallel.py 199 2 58 1 99% 187, 326, 325->326 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116 compose/project.py 434 30 207 14 92% 61, 158, 214-215, 256-257, 367-368, 371-376, 390-393, 446, 497, 501, 528, 634, 637-640, 765-766, 772-775, 830, 58->61, 154->158, 333->335, 365->367, 370->371, 389->390, 445->446, 496->497, 500->501, 527->528, 633->634, 636->637, 684->exit, 768->775 compose/service.py 920 60 459 32 92% 65, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 493, 496, 514, 581, 626-629, 737, 956-957, 977-978, 1079, 1126, 1187, 1251-1266, 1306, 1345-1349, 1537, 1541, 1658, 1699, 1711, 1785, 1811, 1826, 1839, 1843-1844, 1848-1849, 64->65, 223->exit, 276->278, 299->300, 434->435, 476->477, 492->493, 495->496, 513->514, 571->581, 732->737, 955->956, 976->977, 1078->1079, 1125->1126, 1186->1187, 1305->1306, 1342->1345, 1536->1537, 1540->1541, 1589->exit, 1597->1596, 1635->1632, 1657->1658, 1698->1699, 1710->1711, 1784->1785, 1810->1811, 1825->1826, 1838->1839, 1842->1843, 1847->1848 compose/state.py 0 0 0 0 100% compose/timeparse.py 22 0 4 0 100% compose/utils.py 117 7 42 5 92% 27, 75-79, 125, 135, 168, 171, 25->27, 124->125, 134->135, 167->168, 169->171 compose/version.py 6 0 0 0 100% compose/volume.py 126 4 44 3 95% 150, 200, 211-212, 141->150, 199->200, 209->211 ----------------------------------------------------------------------------- TOTAL 5648 442 2440 211 90% Coverage HTML written to dir coverage-html =========================== short test summary info ============================ XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt not supported by kernel XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt Not supported on most drivers SKIP [1] tests/acceptance/cli_test.py:2429: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2381: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2408: race condition between up and logs SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/unit/cli/command_test.py:69: Env values in Python 3 are already Unicode SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/unit/config/config_test.py:3778: windows paths ======= 1130 passed, 12 skipped, 2 xfailed, 3 xpassed in 860.18 seconds ======== tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] ___________________________________ summary ____________________________________  py37: commands succeeded  congratulations :) tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] ___________________________________ summary ____________________________________  py37: commands succeeded  congratulations :) tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_with_default_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/service_test.py::TestServiceNetwork::test_connect_container_to_networks_short_aliase_exists PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_dict PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_integers_and_dicts PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_ints PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] tests/unit/service_test.py::NetTestCase::test_network_mode_service_no_containers PASSED [ 55%] tests/unit/service_test.py::ServicePortsTest::test_formatted_ports PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option PASSED [ 50%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/integration/state_test.py::ServiceStateTest::test_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/unit/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_no_warning_when_no_container_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_no_target PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_unix_path PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_url_no_prefix PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_windows_path PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_chunked_line PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_multiple_line_chunk PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_no_end_separator PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_preserves_unicode_sequences_within_lines PASSED [ 57%] tests/unit/split_buffer_test.py::SplitBufferTest::test_single_line_chunks PASSED [ 57%] tests/unit/timeparse_test.py::test_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_milli_float PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli PASSED [ 57%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 50%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build <- tests/integration/testcases.py PASSED [ 37%] tests/unit/timeparse_test.py::test_second_milli_micro PASSED [ 57%] tests/unit/timeparse_test.py::test_second PASSED [ 57%] tests/unit/timeparse_test.py::test_second_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_minute_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute_second PASSED [ 57%] tests/unit/timeparse_test.py::test_invalid_with_space PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_comma PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_empty_string PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestParseBytes::test_parse_bytes PASSED [ 58%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/volume_test.py::TestVolume::test_remove_external_volume PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_single_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_windows SKIPPED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_custom_separator PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_no_path PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_env PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_with_custom_timeout PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_user_agent PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_assert_hostname_explicit_skip PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_simple_tls PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_quoted_paths PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert_explicit PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_missing_key PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_flags_override_environment PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_mixed_environment_and_flags PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_simple_with_tls_version PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_default_cert_path PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_env_falsy_value PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_flag_no_override PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_default PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_upgrade PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_unavailable PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_no_data SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_misc SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_encoding_issue SKIPPED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_warn PASSED [ 63%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_warn PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_monochrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_polychrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit_raises PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_build_no_log_generator PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_no_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_with_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_unicode PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_stop_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_container_attach_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_other_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_an_exception PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_without_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_with_cascade_stop PASSED [ 64%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_none_when_timeout_is_hit PASSED [ 64%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_warning_in_swarm_mode PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_build_one_off_container_options PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_get_docker_start_call PASSED [ 64%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_not_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_not_a_tty PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_invalid_opts PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_always PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_never PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_changed PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_no_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_tls_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_advanced_tls_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option_shorthand_equal PASSED [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_env PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_nested_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_no_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_simple_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_uneven_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_100b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1023b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1kb PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_999b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_units PASSED [ 66%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_call PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_no_result PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_sequence PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_allow_empty_properties PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_check_zero_preserved PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration_v2 PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_convertible_label_types PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_cache_from_values_validation_error PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_mount_points PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_list_of_dicts_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_string_raises_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_hint PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2 PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2_when_no_interpolate PASSED [ 68%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_property_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_ipam_config PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_label_types PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_invalid_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_required_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_soft_greater_than_hard_error PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_environment_dict_key_contains_dashes PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_ipam_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_label_validation PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_names PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_orders_services PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_unknown_service_errors PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_dns_opt_option PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_empty_environment_key_allowed PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_invalid_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_group_add_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_build_and_image_specified_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_a_dictionary PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_unique_items PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_type_should_be_an_array PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v2 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 74%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 80%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/integration/state_test.py::ServiceStateTest::test_trigger_start PASSED [ 37%] tests/integration/volume_test.py::VolumeTest::test_create_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_create_volume_custom_name PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_exists_external_aliased <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_aliased_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_external_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_inspect_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_recreate_existing_volume PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_remove_volume <- tests/integration/testcases.py PASSED [ 38%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels <- tests/integration/testcases.py PASSED [ 38%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED [ 86%] tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_same_file_optimization PASSED [ 88%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED [ 90%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 51%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 38%] tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%] tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%] tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/bundle_test.py::test_push_image PASSED [ 39%] tests/unit/bundle_test.py::test_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_convert_service_to_bundle PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_none PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_command PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_entrypoint PASSED [ 39%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 39%] tests/unit/bundle_test.py::test_make_service_networks_default PASSED [ 40%] tests/unit/bundle_test.py::test_make_service_networks PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_specs PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_with_protocol PASSED [ 40%] tests/unit/bundle_test.py::test_make_port_spec_default_protocol PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_help_nonexistent PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_command_manual_and_service_ports_together PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_default_project_name PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_get_project PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_from_environment_new_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_empty_environment_var PASSED [ 40%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_environment_file PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_base_dir PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_project_name PASSED [ 41%] tests/unit/cli_test.py::CLITestCase::test_project_name_with_explicit_uppercase_base_dir PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/cli_test.py::CLITestCase::test_run_service_with_restart_always PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_environment PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_from_ps_prefixed PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_get_local_port PASSED [ 41%] tests/unit/container_test.py::ContainerTest::test_has_api_logs PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_none PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_ports_public_and_private PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_healthy PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_no_health PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_human_readable_states_starting PASSED [ 42%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/container_test.py::ContainerTest::test_inspect_if_not_inspected PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_custom_container_name PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_name_without_project_one_off PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_number PASSED [ 42%] tests/unit/container_test.py::ContainerTest::test_short_id PASSED [ 43%] tests/unit/container_test.py::GetContainerNameTestCase::test_get_container_name PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_driver_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_null_remote_ipam_options PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_options_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_success PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_config_whitelist PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_check_remote_network_labels_mismatch PASSED [ 43%] tests/unit/network_test.py::NetworkTest::test_remote_config_labels_none PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute PASSED [ 43%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_deps PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_global_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_limit PASSED [ 44%] tests/unit/parallel_test.py::ParallelTest::test_parallel_execute_with_upstream_errors PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_alignment PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_ansi PASSED [ 44%] tests/unit/parallel_test.py::test_parallel_execute_noansi PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_pull PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_get_digest_from_push PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_mismatched_encoding_stream_write PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_div_zero PASSED [ 44%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_no_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_null_total PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_no_tty PASSED [ 45%] tests/unit/progress_stream_test.py::ProgressStreamTestCase::test_stream_output_progress_event_tty PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%] ---------- coverage: platform linux2, python 2.7.13-final-0 ---------- Name Stmts Miss Branch BrPart Cover Missing ----------------------------------------------------------------------------- compose/__init__.py 3 0 0 0 100% compose/__main__.py 4 4 0 0 0% 1-6 compose/bundle.py 144 21 60 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149 compose/cli/__init__.py 0 0 0 0 100% compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit compose/cli/command.py 104 14 32 5 83% 71-81, 121-126, 177, 200, 70->71, 120->121, 165->168, 176->177, 197->200 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127 compose/cli/formatter.py 37 3 8 1 91% 13, 22-23, 12->13 compose/cli/log_printer.py 149 10 53 6 91% 76, 103, 110-115, 167, 176, 229-232, 262, 43->exit, 75->76, 98->103, 174->176, 228->229, 237->243 compose/cli/main.py 696 91 290 41 84% 84-85, 87-88, 169, 330, 362-364, 447, 507, 511, 516-517, 527-556, 568, 586-588, 592, 659-660, 698-699, 717, 738-739, 751, 774, 792, 839, 1071, 1080, 1109-1118, 1158-1161, 1169-1173, 1175-1180, 1203, 1225-1254, 1261-1262, 1264-1266, 1281, 1287, 1471, 1489, 1505, 1509-1510, 1521, 1526, 1529, 1555, 1574-1576, 1586, 1597, 61->64, 83->84, 86->87, 168->169, 329->330, 361->362, 446->447, 506->507, 510->511, 521->527, 565->568, 585->586, 591->592, 657->659, 716->717, 737->738, 750->751, 773->774, 829->839, 831->exit, 1070->1071, 1079->1080, 1168->1169, 1174->1175, 1202->1203, 1260->1261, 1263->1264, 1280->1281, 1286->1287, 1470->1471, 1488->1489, 1504->1505, 1520->1521, 1525->1526, 1528->1529, 1547->exit, 1554->1555, 1568->1576, 1570->1574, 1585->1586, 1595->1597 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60 compose/config/__init__.py 13 0 0 0 100% compose/config/config.py 826 28 388 18 95% 266, 508, 578, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 577->578, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412 compose/config/environment.py 96 7 34 4 92% 41, 98-101, 114, 121, 40->41, 97->98, 113->114, 120->121 compose/config/errors.py 25 2 0 0 92% 36-40 compose/config/interpolation.py 148 7 62 4 94% 66, 148, 196, 222, 227-229, 121->exit, 146->148, 195->196, 221->222 compose/config/serialize.py 97 1 50 2 98% 76, 75->76, 82->85 compose/config/sort_services.py 44 1 18 1 97% 57, 56->57 compose/config/types.py 291 22 112 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502 compose/config/validation.py 254 14 140 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525 compose/const.py 39 0 0 0 100% compose/container.py 193 8 48 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320 compose/errors.py 17 1 0 0 94% 12 compose/network.py 190 19 92 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226 compose/parallel.py 199 2 56 1 99% 187, 326, 325->326 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116 compose/project.py 434 30 178 14 92% 61, 158, 214-215, 256-257, 367-368, 371-376, 390-393, 446, 497, 501, 528, 634, 637-640, 765-766, 772-775, 830, 58->61, 154->158, 333->335, 365->367, 370->371, 389->390, 445->446, 496->497, 500->501, 527->528, 633->634, 636->637, 684->exit, 768->775 compose/service.py 920 57 406 30 92% 67, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 493, 496, 514, 581, 626-629, 737, 956-957, 977-978, 1079, 1126, 1187, 1251-1266, 1306, 1345-1349, 1537, 1541, 1699, 1785, 1826, 1839, 1843-1844, 1848-1849, 64->67, 223->exit, 276->278, 299->300, 434->435, 476->477, 492->493, 495->496, 513->514, 571->581, 732->737, 955->956, 976->977, 1078->1079, 1125->1126, 1186->1187, 1305->1306, 1342->1345, 1536->1537, 1540->1541, 1589->exit, 1597->1596, 1635->1632, 1698->1699, 1784->1785, 1810->1812, 1825->1826, 1838->1839, 1842->1843, 1847->1848 compose/state.py 0 0 0 0 100% compose/timeparse.py 22 0 4 0 100% compose/utils.py 117 7 42 5 92% 26, 75-79, 125, 135, 168, 171, 25->26, 124->125, 134->135, 167->168, 169->171 compose/version.py 6 0 0 0 100% compose/volume.py 126 4 44 4 94% 150, 200, 211-212, 141->150, 199->200, 201->198, 209->211 ----------------------------------------------------------------------------- TOTAL 5648 438 2265 209 90% Coverage HTML written to dir coverage-html =========================== short test summary info ============================ XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt not supported by kernel XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt Not supported on most drivers SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/unit/config/config_test.py:3778: windows paths SKIP [1] tests/acceptance/cli_test.py:2381: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2408: race condition between up and logs SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/acceptance/cli_test.py:2429: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 ======= 1131 passed, 11 skipped, 2 xfailed, 3 xpassed in 885.06 seconds ======== Exception TypeError: "'NoneType' object is not callable" in ignored ___________________________________ summary ____________________________________  py27: commands succeeded  congratulations :) tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] compose-dind-19.03.5-jenkins-compose-mac-bootstrap-python3-1 tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/unit/service_test.py::TestServiceNetwork::test_connect_container_to_networks_short_aliase_exists PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_dict PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_integers_and_dicts PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_ints PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/service_test.py::NetTestCase::test_network_mode_service_no_containers PASSED [ 55%] tests/unit/service_test.py::ServicePortsTest::test_formatted_ports PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 46%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 55%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_no_warning_when_no_container_volumes PASSED [ 56%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_no_target PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_unix_path PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_url_no_prefix PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_windows_path PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_chunked_line PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_multiple_line_chunk PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_no_end_separator PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_preserves_unicode_sequences_within_lines PASSED [ 57%] tests/unit/split_buffer_test.py::SplitBufferTest::test_single_line_chunks PASSED [ 57%] tests/unit/timeparse_test.py::test_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_milli_float PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli_micro PASSED [ 57%] tests/unit/timeparse_test.py::test_second PASSED [ 57%] tests/unit/timeparse_test.py::test_second_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_minute_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute_second PASSED [ 57%] tests/unit/timeparse_test.py::test_invalid_with_space PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_comma PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_empty_string PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestParseBytes::test_parse_bytes PASSED [ 58%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/unit/volume_test.py::TestVolume::test_remove_external_volume PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_single_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_windows SKIPPED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_custom_separator PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_no_path PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_env PASSED [ 59%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 47%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_with_custom_timeout PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_user_agent PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_assert_hostname_explicit_skip PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_simple_tls PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_quoted_paths PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert_explicit PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_missing_key PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_flags_override_environment PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_mixed_environment_and_flags PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_simple_with_tls_version PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_default_cert_path PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_env_falsy_value PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_flag_no_override PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_default PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_upgrade PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_unavailable PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_no_data SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_misc SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_encoding_issue SKIPPED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_warn PASSED [ 63%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_warn PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_monochrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_polychrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit_raises PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_build_no_log_generator PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_no_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_with_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_unicode PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_stop_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_container_attach_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_other_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_an_exception PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_without_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_with_cascade_stop PASSED [ 64%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_none_when_timeout_is_hit PASSED [ 64%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_warning_in_swarm_mode PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_build_one_off_container_options PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_get_docker_start_call PASSED [ 64%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_not_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_not_a_tty PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_invalid_opts PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_always PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_never PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_changed PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_no_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_tls_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_advanced_tls_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option_shorthand_equal PASSED [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_env PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_nested_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_no_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_simple_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_uneven_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_100b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1023b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1kb PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_999b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_units PASSED [ 66%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_call PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_no_result PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_sequence PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_allow_empty_properties PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_check_zero_preserved PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration_v2 PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_convertible_label_types PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_cache_from_values_validation_error PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_mount_points PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_list_of_dicts_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_string_raises_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_hint PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2 PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2_when_no_interpolate PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_property_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_ipam_config PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_label_types PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_invalid_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_required_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_soft_greater_than_hard_error PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_environment_dict_key_contains_dashes PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_ipam_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_label_validation PASSED [ 69%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_names PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_orders_services PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_unknown_service_errors PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_dns_opt_option PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_empty_environment_key_allowed PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_invalid_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_group_add_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_build_and_image_specified_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_a_dictionary PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_unique_items PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_type_should_be_an_array PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v2 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 72%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%] tests/unit/service_test.py::ServiceTest::test_build_with_default_platform PASSED [ 48%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED [ 86%] tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_same_file_optimization PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED [ 90%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%] tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%] tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%] ---------- coverage: platform linux2, python 2.7.13-final-0 ---------- Name Stmts Miss Branch BrPart Cover Missing ----------------------------------------------------------------------------- compose/__init__.py 3 0 0 0 100% compose/__main__.py 4 4 0 0 0% 1-6 compose/bundle.py 144 21 60 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149 compose/cli/__init__.py 0 0 0 0 100% compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit compose/cli/command.py 104 14 32 5 83% 71-81, 121-126, 177, 200, 70->71, 120->121, 165->168, 176->177, 197->200 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127 compose/cli/formatter.py 37 3 8 1 91% 13, 22-23, 12->13 compose/cli/log_printer.py 149 10 53 6 91% 76, 103, 110-115, 167, 176, 229-232, 262, 43->exit, 75->76, 98->103, 174->176, 228->229, 237->243 compose/cli/main.py 696 91 290 41 84% 84-85, 87-88, 169, 330, 362-364, 447, 507, 511, 516-517, 527-556, 568, 586-588, 592, 659-660, 698-699, 717, 738-739, 751, 774, 792, 839, 1071, 1080, 1109-1118, 1158-1161, 1169-1173, 1175-1180, 1203, 1225-1254, 1261-1262, 1264-1266, 1281, 1287, 1471, 1489, 1505, 1509-1510, 1521, 1526, 1529, 1555, 1574-1576, 1586, 1597, 61->64, 83->84, 86->87, 168->169, 329->330, 361->362, 446->447, 506->507, 510->511, 521->527, 565->568, 585->586, 591->592, 657->659, 716->717, 737->738, 750->751, 773->774, 829->839, 831->exit, 1070->1071, 1079->1080, 1168->1169, 1174->1175, 1202->1203, 1260->1261, 1263->1264, 1280->1281, 1286->1287, 1470->1471, 1488->1489, 1504->1505, 1520->1521, 1525->1526, 1528->1529, 1547->exit, 1554->1555, 1568->1576, 1570->1574, 1585->1586, 1595->1597 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60 compose/config/__init__.py 13 0 0 0 100% compose/config/config.py 826 28 388 18 95% 266, 508, 578, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 577->578, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412 compose/config/environment.py 96 7 34 4 92% 41, 98-101, 114, 121, 40->41, 97->98, 113->114, 120->121 compose/config/errors.py 25 2 0 0 92% 36-40 compose/config/interpolation.py 148 7 62 4 94% 66, 148, 196, 222, 227-229, 121->exit, 146->148, 195->196, 221->222 compose/config/serialize.py 97 1 50 2 98% 76, 75->76, 82->85 compose/config/sort_services.py 44 1 18 1 97% 57, 56->57 compose/config/types.py 291 22 112 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502 compose/config/validation.py 254 14 140 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525 compose/const.py 39 0 0 0 100% compose/container.py 193 8 48 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320 compose/errors.py 17 1 0 0 94% 12 compose/network.py 190 19 92 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226 compose/parallel.py 199 2 56 1 99% 187, 326, 325->326 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116 compose/project.py 434 30 178 14 92% 61, 158, 214-215, 256-257, 367-368, 371-376, 390-393, 446, 497, 501, 528, 634, 637-640, 765-766, 772-775, 830, 58->61, 154->158, 333->335, 365->367, 370->371, 389->390, 445->446, 496->497, 500->501, 527->528, 633->634, 636->637, 684->exit, 768->775 compose/service.py 920 57 406 30 92% 67, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 493, 496, 514, 581, 626-629, 737, 956-957, 977-978, 1079, 1126, 1187, 1251-1266, 1306, 1345-1349, 1537, 1541, 1699, 1785, 1826, 1839, 1843-1844, 1848-1849, 64->67, 223->exit, 276->278, 299->300, 434->435, 476->477, 492->493, 495->496, 513->514, 571->581, 732->737, 955->956, 976->977, 1078->1079, 1125->1126, 1186->1187, 1305->1306, 1342->1345, 1536->1537, 1540->1541, 1589->exit, 1597->1596, 1635->1632, 1698->1699, 1784->1785, 1810->1812, 1825->1826, 1838->1839, 1842->1843, 1847->1848 compose/state.py 0 0 0 0 100% compose/timeparse.py 22 0 4 0 100% compose/utils.py 117 8 42 5 92% 26, 75-79, 125, 135, 161, 168, 171, 25->26, 124->125, 134->135, 167->168, 169->171 compose/version.py 6 0 0 0 100% compose/volume.py 126 4 44 3 95% 150, 200, 211-212, 141->150, 199->200, 209->211 ----------------------------------------------------------------------------- TOTAL 5648 439 2265 208 90% Coverage HTML written to dir coverage-html =========================== short test summary info ============================ XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt not supported by kernel XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt Not supported on most drivers SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/acceptance/cli_test.py:2381: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2408: race condition between up and logs SKIP [1] tests/unit/config/config_test.py:3778: windows paths SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/acceptance/cli_test.py:2429: race condition between up and logs ======= 1131 passed, 11 skipped, 2 xfailed, 3 xpassed in 899.14 seconds ======== ___________________________________ summary ____________________________________  py27: commands succeeded  congratulations :) tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/service_test.py::TestServiceNetwork::test_connect_container_to_networks_short_aliase_exists PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_dict PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_integers_and_dicts PASSED [ 54%] tests/unit/service_test.py::BuildUlimitsTestCase::test_build_ulimits_with_ints PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 54%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/unit/service_test.py::NetTestCase::test_network_mode_service_no_containers PASSED [ 55%] tests/unit/service_test.py::ServicePortsTest::test_formatted_ports PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 55%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_no_warning_when_no_container_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_no_target PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_unix_path PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_url_no_prefix PASSED [ 56%] tests/unit/service_test.py::RewriteBuildPathTest::test_rewrite_windows_path PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_chunked_line PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_multiple_line_chunk PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_no_end_separator PASSED [ 56%] tests/unit/split_buffer_test.py::SplitBufferTest::test_preserves_unicode_sequences_within_lines PASSED [ 57%] tests/unit/split_buffer_test.py::SplitBufferTest::test_single_line_chunks PASSED [ 57%] tests/unit/timeparse_test.py::test_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_milli_float PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli PASSED [ 57%] tests/unit/timeparse_test.py::test_second_milli_micro PASSED [ 57%] tests/unit/timeparse_test.py::test_second PASSED [ 57%] tests/unit/timeparse_test.py::test_second_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute PASSED [ 57%] tests/unit/timeparse_test.py::test_minute_as_float PASSED [ 57%] tests/unit/timeparse_test.py::test_hour_minute_second PASSED [ 57%] tests/unit/timeparse_test.py::test_invalid_with_space PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_comma PASSED [ 58%] tests/unit/timeparse_test.py::test_invalid_with_empty_string PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_no_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_with_object PASSED [ 58%] tests/unit/utils_test.py::TestJsonSplitter::test_json_splitter_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_non_utf_unicode_character PASSED [ 58%] tests/unit/utils_test.py::TestStreamAsText::test_stream_with_utf_character PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_falsy_entries PASSED [ 58%] tests/unit/utils_test.py::TestJsonStream::test_with_leading_whitespace PASSED [ 58%] tests/unit/utils_test.py::TestParseBytes::test_parse_bytes PASSED [ 58%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/volume_test.py::TestVolume::test_remove_external_volume PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_single_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_windows SKIPPED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_multiple_path_from_env_custom_separator PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_no_path PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_options PASSED [ 59%] tests/unit/cli/command_test.py::TestGetConfigPathFromOptions::test_unicode_path_from_env PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 59%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_with_custom_timeout PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_user_agent PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_assert_hostname_explicit_skip PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_simple_tls PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_ca_cert_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_explicit PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_and_ca_quoted_paths PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert PASSED [ 60%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_cert_explicit PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_client_missing_key PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_flags_override_environment PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_mixed_environment_and_flags PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_simple_with_tls_version PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_default_cert_path PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_env_falsy_value PASSED [ 61%] tests/unit/cli/docker_client_test.py::TLSConfigTestCase::test_tls_verify_flag_no_override PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_default PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_upgrade PASSED [ 61%] tests/unit/cli/docker_client_test.py::TestGetTlsVersion::test_get_tls_version_unavailable PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 61%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_mismatch_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_api_error_version_other_unicode_explanation PASSED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_no_data SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_misc SKIPPED [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_windows_pipe_error_encoding_issue SKIPPED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_error PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_info PASSED [ 62%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_unicode_warn PASSED [ 63%] tests/unit/cli/formatter_test.py::ConsoleWarningFormatterTestCase::test_format_warn PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_monochrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestLogPresenter::test_polychrome PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_wait_on_exit_raises PASSED [ 63%] tests/unit/cli/log_printer_test.py::test_build_no_log_generator PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_no_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_with_log_stream PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestBuildLogGenerator::test_unicode PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_stop_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 63%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_container_attach_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_other_event PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_an_exception PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_without_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_stop_with_cascade_stop PASSED [ 64%] tests/unit/cli/log_printer_test.py::TestConsumeQueue::test_item_is_none_when_timeout_is_hit PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_warning_in_swarm_mode PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_build_one_off_container_options PASSED [ 64%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_get_docker_start_call PASSED [ 64%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_tty_not_verbose PASSED [ 65%] tests/unit/cli/main_test.py::TestSetupConsoleHandlerTestCase::test_with_not_a_tty PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_invalid_opts PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_always PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_never PASSED [ 65%] tests/unit/cli/main_test.py::TestConvergeStrategyFromOptsTestCase::test_changed PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_no_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_simple_tls_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_advanced_tls_options PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 65%] tests/unit/cli/main_test.py::TestCallDocker::test_with_host_option_shorthand_equal PASSED [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_env PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_nested_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_no_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_simple_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::UnquotePathTest::test_uneven_quotes PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_100b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1023b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_1kb PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_999b PASSED [ 66%] tests/unit/cli/utils_test.py::HumanReadableFileSizeTest::test_units PASSED [ 66%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_call PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_no_result PASSED [ 67%] tests/unit/cli/verbose_proxy_test.py::VerboseProxyTestCase::test_format_return_sequence PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_allow_empty_properties PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_build_args_check_zero_preserved PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_build_configuration_v2 PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_convertible_label_types PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_cache_from_values_validation_error PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_duplicate_mount_points PASSED [ 67%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_list_of_dicts_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_extra_hosts_string_raises_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_hint PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2 PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_name_raise_validation_error_v2_when_no_interpolate PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_integer_service_property_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_ipam_config PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_label_types PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_invalid_service_name_raise_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_invalid_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_required_keys_validation_error PASSED [ 68%] tests/unit/config/config_test.py::ConfigTest::test_config_ulimits_soft_greater_than_hard_error PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_environment_dict_key_contains_dashes PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_ipam_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_label_validation PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_config_valid_service_names PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_orders_services PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_depends_on_unknown_service_errors PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_dns_opt_option PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_empty_environment_key_allowed PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_external_volume_invalid_config PASSED [ 69%] tests/unit/config/config_test.py::ConfigTest::test_group_add_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_build_and_image_specified_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_a_dictionary PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_not_unique_items PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_type_should_be_an_array PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v1 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_config_v2 PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%] tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%] tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED [ 76%] tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%] tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%] tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%] tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%] tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 81%] tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%] tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%] tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%] tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%] tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%] tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%] tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED [ 84%] tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%] tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%] tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED [ 86%] tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 87%] tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%] tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_same_file_optimization PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%] tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED [ 90%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 91%] tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%] tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%] tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%] tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%] tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%] tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%] tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%] tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%] tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%] tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%] tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%] tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%] tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED [ 97%] tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%] tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%] tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%] tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%] ---------- coverage: platform linux2, python 2.7.16-final-0 ---------- Name Stmts Miss Branch BrPart Cover Missing ----------------------------------------------------------------------------- compose/__init__.py 3 0 0 0 100% compose/__main__.py 4 4 0 0 0% 1-6 compose/bundle.py 144 21 60 5 84% 45, 50-51, 56-57, 75-78, 81, 103-109, 130-131, 141-146, 149, 80->81, 100->103, 118->135, 125->135, 148->149 compose/cli/__init__.py 0 0 0 0 100% compose/cli/colors.py 23 2 10 2 88% 37-38, 36->37, 48->exit compose/cli/command.py 104 14 32 5 83% 71-81, 121-126, 177, 200, 70->71, 120->121, 165->168, 176->177, 197->200 compose/cli/docker_client.py 75 5 24 2 93% 24, 98-99, 107, 123, 106->107, 122->123 compose/cli/docopt_command.py 38 4 8 2 87% 13-14, 29, 35, 28->29, 34->35 compose/cli/errors.py 100 26 34 6 67% 47-48, 62-65, 70-79, 105-106, 123, 125, 127-131, 136, 141-148, 46->47, 61->62, 103->105, 122->123, 124->125, 126->127 compose/cli/formatter.py 37 3 8 1 91% 13, 22-23, 12->13 compose/cli/log_printer.py 149 10 53 6 91% 76, 103, 110-115, 167, 176, 229-232, 262, 43->exit, 75->76, 98->103, 174->176, 228->229, 237->243 compose/cli/main.py 696 91 290 41 84% 84-85, 87-88, 169, 330, 362-364, 447, 507, 511, 516-517, 527-556, 568, 586-588, 592, 659-660, 698-699, 717, 738-739, 751, 774, 792, 839, 1071, 1080, 1109-1118, 1158-1161, 1169-1173, 1175-1180, 1203, 1225-1254, 1261-1262, 1264-1266, 1281, 1287, 1471, 1489, 1505, 1509-1510, 1521, 1526, 1529, 1555, 1574-1576, 1586, 1597, 61->64, 83->84, 86->87, 168->169, 329->330, 361->362, 446->447, 506->507, 510->511, 521->527, 565->568, 585->586, 591->592, 657->659, 716->717, 737->738, 750->751, 773->774, 829->839, 831->exit, 1070->1071, 1079->1080, 1168->1169, 1174->1175, 1202->1203, 1260->1261, 1263->1264, 1280->1281, 1286->1287, 1470->1471, 1488->1489, 1504->1505, 1520->1521, 1525->1526, 1528->1529, 1547->exit, 1554->1555, 1568->1576, 1570->1574, 1585->1586, 1595->1597 compose/cli/signals.py 23 0 4 2 93% 36->exit, 43->exit compose/cli/utils.py 81 28 18 4 60% 36-45, 53-55, 62-68, 76, 90-103, 109, 127-128, 138, 151-154, 88->90, 108->109, 137->138, 150->151 compose/cli/verbose_proxy.py 35 12 10 0 69% 36-39, 42-47, 50-60 compose/config/__init__.py 13 0 0 0 100% compose/config/config.py 826 28 388 18 95% 266, 508, 578, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 577->578, 709->713, 713->714, 756->757, 778->exit, 809->812, 936->938, 938->942, 957->959, 978->979, 981->982, 993->1002, 1015->1017, 1017->1020, 1332->1335, 1365->1366, 1408->1412 compose/config/environment.py 96 7 34 4 92% 41, 98-101, 114, 121, 40->41, 97->98, 113->114, 120->121 compose/config/errors.py 25 2 0 0 92% 36-40 compose/config/interpolation.py 148 7 62 4 94% 66, 148, 196, 222, 227-229, 121->exit, 146->148, 195->196, 221->222 compose/config/serialize.py 97 1 50 2 98% 76, 75->76, 82->85 compose/config/sort_services.py 44 1 18 1 97% 57, 56->57 compose/config/types.py 291 22 112 17 90% 54, 90, 113, 149, 171, 258-259, 267, 286, 301, 363-364, 372-373, 377-378, 441, 445, 486, 493-494, 502, 53->54, 71->79, 89->90, 112->113, 118->exit, 148->149, 170->171, 257->258, 266->267, 285->286, 298->301, 361->366, 440->441, 444->445, 484->489, 485->486, 501->502 compose/config/validation.py 254 14 140 12 92% 219, 249, 299-300, 318-319, 341, 363, 469-471, 496-498, 525, 218->219, 248->249, 289->299, 317->318, 335->338, 338->341, 362->363, 404->377, 425->exit, 467->469, 495->496, 524->525 compose/const.py 39 0 0 0 100% compose/container.py 193 8 48 7 94% 98, 105, 151, 153, 262, 265, 297, 320, 97->98, 104->105, 150->151, 152->153, 236->235, 303->exit, 319->320 compose/errors.py 17 1 0 0 94% 12 compose/network.py 190 19 92 5 87% 184, 186-200, 206, 224, 226, 183->184, 185->186, 205->206, 223->224, 225->226 compose/parallel.py 199 2 56 1 99% 187, 326, 325->326 compose/progress_stream.py 79 8 40 9 86% 40, 71, 74, 80, 85, 90-91, 116, 39->40, 42->46, 53->57, 70->71, 73->74, 79->80, 84->85, 89->90, 112->116 compose/project.py 434 30 178 14 92% 61, 158, 214-215, 256-257, 367-368, 371-376, 390-393, 446, 497, 501, 528, 634, 637-640, 765-766, 772-775, 830, 58->61, 154->158, 333->335, 365->367, 370->371, 389->390, 445->446, 496->497, 500->501, 527->528, 633->634, 636->637, 684->exit, 768->775 compose/service.py 920 57 406 30 92% 67, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 493, 496, 514, 581, 626-629, 737, 956-957, 977-978, 1079, 1126, 1187, 1251-1266, 1306, 1345-1349, 1537, 1541, 1699, 1785, 1826, 1839, 1843-1844, 1848-1849, 64->67, 223->exit, 276->278, 299->300, 434->435, 476->477, 492->493, 495->496, 513->514, 571->581, 732->737, 955->956, 976->977, 1078->1079, 1125->1126, 1186->1187, 1305->1306, 1342->1345, 1536->1537, 1540->1541, 1589->exit, 1597->1596, 1635->1632, 1698->1699, 1784->1785, 1810->1812, 1825->1826, 1838->1839, 1842->1843, 1847->1848 compose/state.py 0 0 0 0 100% compose/timeparse.py 22 0 4 0 100% compose/utils.py 117 8 42 5 92% 26, 75-79, 125, 135, 161, 168, 171, 25->26, 124->125, 134->135, 167->168, 169->171 compose/version.py 6 0 0 0 100% compose/volume.py 126 4 44 4 94% 150, 200, 211-212, 141->150, 199->200, 201->198, 209->211 ----------------------------------------------------------------------------- TOTAL 5648 439 2265 209 90% Coverage HTML written to dir coverage-html =========================== short test summary info ============================ XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt not supported by kernel XFAIL tests/integration/service_test.py::ServiceTest::test_create_container_with_storage_opt Not supported on most drivers SKIP [1] tests/acceptance/cli_test.py:2429: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/acceptance/cli_test.py:2408: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/unit/config/config_test.py:3778: windows paths SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/acceptance/cli_test.py:2381: race condition between up and logs SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 ======= 1131 passed, 11 skipped, 2 xfailed, 3 xpassed in 932.56 seconds ======== ___________________________________ summary ____________________________________  py27: commands succeeded  congratulations :) + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 compose-dind-18.09.9-jenkins-compose-mac-bootstrap-python3-1 [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } [Pipeline] // parallel [Pipeline] End of Pipeline GitHub has been notified of this commit’s build result Finished: SUCCESS