Pull request #6900 updated Connecting to https://api.github.com using docker-jenkins/****** (docker-jenkins GitHub credentials) Loading trusted files from base branch master at d7c7e21921fba349f2fc2fa702c07d87166d80c9 rather than e8c0e533895a934aeba70739e8418809c8c88563 Obtained Jenkinsfile from d7c7e21921fba349f2fc2fa702c07d87166d80c9 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 ead69454b4062f17d1f8389642089a002b037213 using credential jps-reader > git rev-parse --is-inside-work-tree # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/docker/jps.git # timeout=10 Fetching without tags Fetching upstream changes from https://github.com/docker/jps.git > git --version # timeout=10 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 ead69454b4062f17d1f8389642089a002b037213 (master) > git config core.sparsecheckout # timeout=10 > git checkout -f ead69454b4062f17d1f8389642089a002b037213 Commit message: "Merge pull request #10 from russellcardullo/sonar-scan" > git rev-list --no-walk ead69454b4062f17d1f8389642089a002b037213 # timeout=10 [Pipeline] Start of Pipeline [Pipeline] node Running on ubuntu-1804-overlay2 (i-048ea7c4a178c9a84) in /home/ubuntu/workspace/compose_PR-6900 [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_PR-6900@tmp/ad52a016-84e9-489f-b861-836229c708b6/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_PR-6900:/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 "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_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Fetching without tags > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) Commit message: "Include errors when raising ProjectError exception" First time build. Skipping changelog. [Pipeline] sh + git rev-parse HEAD > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 > git rev-list --no-walk c3f1e721e825259e417fd43e893c3d7a4e1c2312 # timeout=10 [Pipeline] sh + docker pull dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 Error response from daemon: manifest for dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 not found: manifest unknown: manifest unknown [Pipeline] sh + script/build/write-git-sha + GIT_COMMIT=e8c0e533 + docker build -t dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 --target build --build-arg BUILD_PLATFORM=alpine --build-arg GIT_COMMIT=e8c0e533895a934aeba70739e8418809c8c88563 . Sending build context to Docker daemon 1.861MB 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: Already exists 893f09c2afb0: Already exists 3204ba24bdf5: Pulling fs layer c7a4c34d84a5: Pulling fs layer 758ee1f25c37: Pulling fs layer c7a4c34d84a5: Verifying Checksum c7a4c34d84a5: Download complete 758ee1f25c37: Verifying Checksum 758ee1f25c37: Download 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: Pulling fs layer c0ea575d71b9: Pulling fs layer 0f535eceebd5: Pulling fs layer 8a30f5893bea: Pulling fs layer c1d30ace7b67: Pulling fs layer 8a30f5893bea: Waiting c1d30ace7b67: Waiting c0ea575d71b9: Verifying Checksum c0ea575d71b9: Download complete 9d48c3bd43c5: Verifying Checksum 9d48c3bd43c5: Download complete 8a30f5893bea: Verifying Checksum 8a30f5893bea: Download complete 9d48c3bd43c5: Pull complete c1d30ace7b67: Verifying Checksum c1d30ace7b67: Download complete 0f535eceebd5: Verifying Checksum 0f535eceebd5: Download complete c0ea575d71b9: Pull complete 0f535eceebd5: Pull complete 8a30f5893bea: Pull complete c1d30ace7b67: Pull complete Digest: sha256:9363cb46e52894a22ba87ebec0845d30f4c27efd6b907705ba9a27192b45e797 Status: Downloaded newer image for python:3.7.4-alpine3.10 ---> 39fb80313465 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 90347c188056 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-r0) (6/34) Installing file (5.37-r0) (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 90347c188056 ---> 6f5cd985244f Step 11/32 : ENV BUILD_BOOTLOADER=1 ---> Running in 28c0d35d8e40 Removing intermediate container 28c0d35d8e40 ---> a33e269b899a Step 12/32 : FROM python:${PYTHON_VERSION}-${BUILD_DEBIAN_VERSION} AS build-debian 3.7.4-slim-stretch: Pulling from library/python 8f91359f1fff: Pulling fs layer 502ac059b4cd: Pulling fs layer cfd307573f01: Pulling fs layer 65beb65381ee: Pulling fs layer 4c21f9ed2a53: Pulling fs layer 65beb65381ee: Waiting 4c21f9ed2a53: Waiting 502ac059b4cd: Verifying Checksum 502ac059b4cd: Download complete 65beb65381ee: Verifying Checksum 65beb65381ee: Download complete 8f91359f1fff: Verifying Checksum 8f91359f1fff: Download complete 4c21f9ed2a53: Verifying Checksum 4c21f9ed2a53: Download complete cfd307573f01: Verifying Checksum cfd307573f01: Download complete 8f91359f1fff: Pull complete 502ac059b4cd: Pull complete cfd307573f01: Pull complete 65beb65381ee: Pull complete 4c21f9ed2a53: Pull complete Digest: sha256:88c98d55716d52ffcf51a2861757e351d6b1ce52b27e936d668fefd6d659f2e8 Status: Downloaded newer image for python:3.7.4-slim-stretch ---> 7691d3cb6cbc Step 13/32 : RUN apt-get update && apt-get install -y curl gcc git libc-dev libgcc-6-dev make openssl python2.7-dev ---> Running in b8a6b93685e8 Get:1 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB] Ign:2 http://deb.debian.org/debian stretch InRelease Get:3 http://deb.debian.org/debian stretch-updates InRelease [91.0 kB] Get:4 http://deb.debian.org/debian stretch Release [118 kB] Get:5 http://deb.debian.org/debian stretch Release.gpg [2365 B] Get:6 http://security.debian.org/debian-security stretch/updates/main amd64 Packages [503 kB] Get:7 http://deb.debian.org/debian stretch-updates/main amd64 Packages [27.4 kB] Get:8 http://deb.debian.org/debian stretch/main amd64 Packages [7086 kB] Fetched 7922 kB in 2s (3398 kB/s) Reading package lists... Reading package lists... Building dependency tree... Reading state information... openssl is already the newest version (1.1.0k-1~deb9u1). openssl set to manually installed. The following additional packages will be installed: binutils bzip2 cpp cpp-6 file gcc-6 git-man krb5-locales less libasan3 libatomic1 libbsd0 libc-dev-bin libcc1-0 libcilkrts5 libcurl3 libcurl3-gnutls libedit2 liberror-perl libexpat1-dev libgmp10 libgnutls30 libgomp1 libgpm2 libgssapi-krb5-2 libhogweed4 libidn11 libidn2-0 libisl15 libitm1 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 libldap-common liblsan0 libmagic-mgc libmagic1 libmpc3 libmpfr4 libmpx2 libncurses5 libnettle6 libnghttp2-14 libp11-kit0 libperl5.24 libpopt0 libpsl5 libpython2.7 libpython2.7-dev libpython2.7-minimal libpython2.7-stdlib libquadmath0 librtmp1 libsasl2-2 libsasl2-modules libsasl2-modules-db libssh2-1 libssl1.0.2 libtasn1-6 libtsan0 libubsan0 libunistring0 libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxext6 libxmuu1 linux-libc-dev manpages manpages-dev mime-support openssh-client patch perl perl-modules-5.24 publicsuffix python2.7 python2.7-minimal rename rsync xauth xz-utils Suggested packages: binutils-doc bzip2-doc cpp-doc gcc-6-locales gcc-multilib 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 gpm krb5-doc krb5-user libsasl2-modules-gssapi-mit | libsasl2-modules-gssapi-heimdal libsasl2-modules-ldap libsasl2-modules-otp libsasl2-modules-sql make-doc man-browser keychain libpam-ssh monkeysphere ssh-askpass ed diffutils-doc perl-doc libterm-readline-gnu-perl | libterm-readline-perl-perl python2.7-doc binfmt-support openssh-server The following NEW packages will be installed: binutils bzip2 cpp cpp-6 curl file gcc gcc-6 git git-man krb5-locales less libasan3 libatomic1 libbsd0 libc-dev-bin libc6-dev libcc1-0 libcilkrts5 libcurl3 libcurl3-gnutls libedit2 liberror-perl libexpat1-dev libgcc-6-dev libgmp10 libgnutls30 libgomp1 libgpm2 libgssapi-krb5-2 libhogweed4 libidn11 libidn2-0 libisl15 libitm1 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 libldap-common liblsan0 libmagic-mgc libmagic1 libmpc3 libmpfr4 libmpx2 libncurses5 libnettle6 libnghttp2-14 libp11-kit0 libperl5.24 libpopt0 libpsl5 libpython2.7 libpython2.7-dev libpython2.7-minimal libpython2.7-stdlib libquadmath0 librtmp1 libsasl2-2 libsasl2-modules libsasl2-modules-db libssh2-1 libssl1.0.2 libtasn1-6 libtsan0 libubsan0 libunistring0 libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxext6 libxmuu1 linux-libc-dev make manpages manpages-dev mime-support openssh-client patch perl perl-modules-5.24 publicsuffix python2.7 python2.7-dev python2.7-minimal rename rsync xauth xz-utils 0 upgraded, 93 newly installed, 0 to remove and 0 not upgraded. Need to get 85.1 MB of archives. After this operation, 286 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://deb.debian.org/debian stretch/main amd64 perl-modules-5.24 all 5.24.1-3+deb9u5 [2722 kB] Get:3 http://deb.debian.org/debian stretch/main amd64 libperl5.24 amd64 5.24.1-3+deb9u5 [3501 kB] Get:4 http://deb.debian.org/debian stretch/main amd64 perl amd64 5.24.1-3+deb9u5 [219 kB] Get:5 http://deb.debian.org/debian stretch/main amd64 libgmp10 amd64 2:6.1.2+dfsg-1 [253 kB] Get:6 http://deb.debian.org/debian stretch/main amd64 libnettle6 amd64 3.3-1+b2 [192 kB] Get:7 http://deb.debian.org/debian stretch/main amd64 libhogweed4 amd64 3.3-1+b2 [136 kB] Get:8 http://deb.debian.org/debian stretch/main amd64 libidn11 amd64 1.33-1 [115 kB] Get:9 http://deb.debian.org/debian stretch/main amd64 libp11-kit0 amd64 0.23.3-2 [111 kB] Get:10 http://deb.debian.org/debian stretch/main amd64 libtasn1-6 amd64 4.10-1.1+deb9u1 [50.6 kB] Get:11 http://deb.debian.org/debian stretch/main amd64 libgnutls30 amd64 3.5.8-5+deb9u4 [896 kB] Get:12 http://deb.debian.org/debian stretch/main amd64 libkeyutils1 amd64 1.5.9-9 [12.4 kB] Get:13 http://deb.debian.org/debian stretch/main amd64 libkrb5support0 amd64 1.15-1+deb9u1 [61.9 kB] Get:14 http://deb.debian.org/debian stretch/main amd64 libk5crypto3 amd64 1.15-1+deb9u1 [119 kB] Get:15 http://deb.debian.org/debian stretch/main amd64 libkrb5-3 amd64 1.15-1+deb9u1 [311 kB] Get:16 http://deb.debian.org/debian stretch/main amd64 libgssapi-krb5-2 amd64 1.15-1+deb9u1 [155 kB] Get:17 http://deb.debian.org/debian stretch/main amd64 libunistring0 amd64 0.9.6+really0.9.3-0.1 [279 kB] Get:18 http://deb.debian.org/debian stretch/main amd64 libidn2-0 amd64 0.16-1+deb9u1 [60.7 kB] Get:19 http://deb.debian.org/debian stretch/main amd64 libsasl2-modules-db amd64 2.1.27~101-g0780600+dfsg-3 [68.2 kB] Get:20 http://deb.debian.org/debian stretch/main amd64 libsasl2-2 amd64 2.1.27~101-g0780600+dfsg-3 [105 kB] Get:21 http://deb.debian.org/debian stretch/main amd64 libldap-common all 2.4.44+dfsg-5+deb9u3 [85.7 kB] Get:22 http://deb.debian.org/debian stretch/main amd64 libldap-2.4-2 amd64 2.4.44+dfsg-5+deb9u3 [220 kB] Get:23 http://deb.debian.org/debian stretch/main amd64 libpsl5 amd64 0.17.0-3 [41.8 kB] Get:24 http://deb.debian.org/debian stretch/main amd64 librtmp1 amd64 2.4+20151223.gitfa8646d.1-1+b1 [60.4 kB] Get:25 http://deb.debian.org/debian stretch/main amd64 libssh2-1 amd64 1.7.0-1+deb9u1 [139 kB] Get:26 http://deb.debian.org/debian stretch/main amd64 libcurl3-gnutls amd64 7.52.1-5+deb9u9 [290 kB] Get:27 http://deb.debian.org/debian stretch/main amd64 liberror-perl all 0.17024-1 [26.9 kB] Get:28 http://deb.debian.org/debian stretch/main amd64 git-man all 1:2.11.0-3+deb9u4 [1433 kB] Get:29 http://deb.debian.org/debian stretch/main amd64 git amd64 1:2.11.0-3+deb9u4 [4167 kB] Get:30 http://deb.debian.org/debian stretch/main amd64 libxau6 amd64 1:1.0.8-1 [20.7 kB] Get:31 http://deb.debian.org/debian stretch/main amd64 libpython2.7-minimal amd64 2.7.13-2+deb9u3 [389 kB] Get:32 http://deb.debian.org/debian stretch/main amd64 python2.7-minimal amd64 2.7.13-2+deb9u3 [1382 kB] Get:33 http://deb.debian.org/debian stretch/main amd64 libpopt0 amd64 1.16-10+b2 [49.4 kB] Get:34 http://deb.debian.org/debian stretch/main amd64 libssl1.0.2 amd64 1.0.2s-1~deb9u1 [1302 kB] Get:35 http://deb.debian.org/debian stretch/main amd64 bzip2 amd64 1.0.6-8.1 [47.5 kB] Get:36 http://deb.debian.org/debian stretch/main amd64 libmagic-mgc amd64 1:5.30-1+deb9u2 [222 kB] Get:37 http://deb.debian.org/debian stretch/main amd64 libmagic1 amd64 1:5.30-1+deb9u2 [111 kB] Get:38 http://deb.debian.org/debian stretch/main amd64 file amd64 1:5.30-1+deb9u2 [64.1 kB] Get:39 http://deb.debian.org/debian stretch/main amd64 krb5-locales all 1.15-1+deb9u1 [93.8 kB] Get:40 http://deb.debian.org/debian stretch/main amd64 less amd64 481-2.1 [126 kB] Get:41 http://deb.debian.org/debian stretch/main amd64 libbsd0 amd64 0.8.3-1 [83.0 kB] Get:42 http://deb.debian.org/debian stretch/main amd64 libncurses5 amd64 6.0+20161126-1+deb9u2 [93.4 kB] Get:43 http://deb.debian.org/debian stretch/main amd64 libedit2 amd64 3.1-20160903-3 [84.8 kB] Get:44 http://deb.debian.org/debian stretch/main amd64 libgpm2 amd64 1.20.4-6.2+b1 [34.2 kB] Get:45 http://deb.debian.org/debian stretch/main amd64 manpages all 4.10-2 [1222 kB] Get:46 http://deb.debian.org/debian stretch/main amd64 mime-support all 3.60 [36.7 kB] Get:47 http://deb.debian.org/debian stretch/main amd64 openssh-client amd64 1:7.4p1-10+deb9u7 [780 kB] Get:48 http://deb.debian.org/debian stretch/main amd64 libpython2.7-stdlib amd64 2.7.13-2+deb9u3 [1897 kB] Get:49 http://deb.debian.org/debian stretch/main amd64 python2.7 amd64 2.7.13-2+deb9u3 [285 kB] Get:50 http://deb.debian.org/debian stretch/main amd64 xz-utils amd64 5.2.2-1.2+b1 [266 kB] Get:51 http://deb.debian.org/debian stretch/main amd64 binutils amd64 2.28-5 [3770 kB] Get:52 http://deb.debian.org/debian stretch/main amd64 libisl15 amd64 0.18-1 [564 kB] Get:53 http://deb.debian.org/debian stretch/main amd64 libmpfr4 amd64 3.1.5-1 [556 kB] Get:54 http://deb.debian.org/debian stretch/main amd64 libmpc3 amd64 1.0.3-1+b2 [39.9 kB] Get:55 http://deb.debian.org/debian stretch/main amd64 cpp-6 amd64 6.3.0-18+deb9u1 [6584 kB] Get:56 http://deb.debian.org/debian stretch/main amd64 cpp amd64 4:6.3.0-4 [18.7 kB] Get:57 http://deb.debian.org/debian stretch/main amd64 libcurl3 amd64 7.52.1-5+deb9u9 [292 kB] Get:58 http://deb.debian.org/debian stretch/main amd64 curl amd64 7.52.1-5+deb9u9 [227 kB] Get:59 http://deb.debian.org/debian stretch/main amd64 libcc1-0 amd64 6.3.0-18+deb9u1 [30.6 kB] Get:60 http://deb.debian.org/debian stretch/main amd64 libgomp1 amd64 6.3.0-18+deb9u1 [73.3 kB] Get:61 http://deb.debian.org/debian stretch/main amd64 libitm1 amd64 6.3.0-18+deb9u1 [27.3 kB] Get:62 http://deb.debian.org/debian stretch/main amd64 libatomic1 amd64 6.3.0-18+deb9u1 [8966 B] Get:63 http://deb.debian.org/debian stretch/main amd64 libasan3 amd64 6.3.0-18+deb9u1 [311 kB] Get:64 http://deb.debian.org/debian stretch/main amd64 liblsan0 amd64 6.3.0-18+deb9u1 [115 kB] Get:65 http://deb.debian.org/debian stretch/main amd64 libtsan0 amd64 6.3.0-18+deb9u1 [257 kB] Get:66 http://deb.debian.org/debian stretch/main amd64 libubsan0 amd64 6.3.0-18+deb9u1 [107 kB] Get:67 http://deb.debian.org/debian stretch/main amd64 libcilkrts5 amd64 6.3.0-18+deb9u1 [40.5 kB] Get:68 http://deb.debian.org/debian stretch/main amd64 libmpx2 amd64 6.3.0-18+deb9u1 [11.2 kB] Get:69 http://deb.debian.org/debian stretch/main amd64 libquadmath0 amd64 6.3.0-18+deb9u1 [131 kB] Get:70 http://deb.debian.org/debian stretch/main amd64 libgcc-6-dev amd64 6.3.0-18+deb9u1 [2296 kB] Get:71 http://deb.debian.org/debian stretch/main amd64 gcc-6 amd64 6.3.0-18+deb9u1 [6900 kB] Get:72 http://deb.debian.org/debian stretch/main amd64 gcc amd64 4:6.3.0-4 [5196 B] Get:73 http://deb.debian.org/debian stretch/main amd64 libc-dev-bin amd64 2.24-11+deb9u4 [259 kB] Get:74 http://deb.debian.org/debian stretch/main amd64 linux-libc-dev amd64 4.9.189-3 [1446 kB] Get:75 http://deb.debian.org/debian stretch/main amd64 libc6-dev amd64 2.24-11+deb9u4 [2364 kB] Get:76 http://deb.debian.org/debian stretch/main amd64 libexpat1-dev amd64 2.2.0-2+deb9u2 [134 kB] Get:77 http://deb.debian.org/debian stretch/main amd64 libpython2.7 amd64 2.7.13-2+deb9u3 [1071 kB] Get:78 http://deb.debian.org/debian stretch/main amd64 libpython2.7-dev amd64 2.7.13-2+deb9u3 [28.2 MB] Get:79 http://deb.debian.org/debian stretch/main amd64 libsasl2-modules amd64 2.1.27~101-g0780600+dfsg-3 [102 kB] Get:80 http://deb.debian.org/debian stretch/main amd64 libxdmcp6 amd64 1:1.1.2-3 [26.3 kB] Get:81 http://deb.debian.org/debian stretch/main amd64 libxcb1 amd64 1.12-1 [133 kB] Get:82 http://deb.debian.org/debian stretch/main amd64 libx11-data all 2:1.6.4-3+deb9u1 [287 kB] Get:83 http://deb.debian.org/debian stretch/main amd64 libx11-6 amd64 2:1.6.4-3+deb9u1 [748 kB] Get:84 http://deb.debian.org/debian stretch/main amd64 libxext6 amd64 2:1.3.3-1+b2 [52.5 kB] Get:85 http://deb.debian.org/debian stretch/main amd64 libxmuu1 amd64 2:1.1.2-2 [23.5 kB] Get:86 http://deb.debian.org/debian stretch/main amd64 make amd64 4.1-9.1 [302 kB] Get:87 http://deb.debian.org/debian stretch/main amd64 manpages-dev all 4.10-2 [2145 kB] Get:88 http://deb.debian.org/debian stretch/main amd64 patch amd64 2.7.5-1+deb9u2 [112 kB] Get:89 http://deb.debian.org/debian stretch/main amd64 python2.7-dev amd64 2.7.13-2+deb9u3 [290 kB] Get:90 http://deb.debian.org/debian stretch/main amd64 rename all 0.20-4 [12.5 kB] Get:91 http://deb.debian.org/debian stretch/main amd64 rsync amd64 3.1.2-1+deb9u2 [393 kB] Get:92 http://deb.debian.org/debian stretch/main amd64 xauth amd64 1:1.0.9-1+b2 [39.6 kB] Get:93 http://deb.debian.org/debian stretch/main amd64 publicsuffix all 20190415.1030-0+deb9u1 [108 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 85.1 MB in 2s (38.7 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 libxau6:amd64. Preparing to unpack .../29-libxau6_1%3a1.0.8-1_amd64.deb ... Unpacking libxau6:amd64 (1:1.0.8-1) ... Selecting previously unselected package libpython2.7-minimal:amd64. Preparing to unpack .../30-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 .../31-python2.7-minimal_2.7.13-2+deb9u3_amd64.deb ... Unpacking python2.7-minimal (2.7.13-2+deb9u3) ... Selecting previously unselected package libpopt0:amd64. Preparing to unpack .../32-libpopt0_1.16-10+b2_amd64.deb ... Unpacking libpopt0:amd64 (1.16-10+b2) ... Selecting previously unselected package libssl1.0.2:amd64. Preparing to unpack .../33-libssl1.0.2_1.0.2s-1~deb9u1_amd64.deb ... Unpacking libssl1.0.2:amd64 (1.0.2s-1~deb9u1) ... Selecting previously unselected package bzip2. Preparing to unpack .../34-bzip2_1.0.6-8.1_amd64.deb ... Unpacking bzip2 (1.0.6-8.1) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../35-libmagic-mgc_1%3a5.30-1+deb9u2_amd64.deb ... Unpacking libmagic-mgc (1:5.30-1+deb9u2) ... Selecting previously unselected package libmagic1:amd64. Preparing to unpack .../36-libmagic1_1%3a5.30-1+deb9u2_amd64.deb ... Unpacking libmagic1:amd64 (1:5.30-1+deb9u2) ... Selecting previously unselected package file. Preparing to unpack .../37-file_1%3a5.30-1+deb9u2_amd64.deb ... Unpacking file (1:5.30-1+deb9u2) ... Selecting previously unselected package krb5-locales. Preparing to unpack .../38-krb5-locales_1.15-1+deb9u1_all.deb ... Unpacking krb5-locales (1.15-1+deb9u1) ... Selecting previously unselected package less. Preparing to unpack .../39-less_481-2.1_amd64.deb ... Unpacking less (481-2.1) ... Selecting previously unselected package libbsd0:amd64. Preparing to unpack .../40-libbsd0_0.8.3-1_amd64.deb ... Unpacking libbsd0:amd64 (0.8.3-1) ... Selecting previously unselected package libncurses5:amd64. Preparing to unpack .../41-libncurses5_6.0+20161126-1+deb9u2_amd64.deb ... Unpacking libncurses5:amd64 (6.0+20161126-1+deb9u2) ... Selecting previously unselected package libedit2:amd64. Preparing to unpack .../42-libedit2_3.1-20160903-3_amd64.deb ... Unpacking libedit2:amd64 (3.1-20160903-3) ... Selecting previously unselected package libgpm2:amd64. Preparing to unpack .../43-libgpm2_1.20.4-6.2+b1_amd64.deb ... Unpacking libgpm2:amd64 (1.20.4-6.2+b1) ... Selecting previously unselected package manpages. Preparing to unpack .../44-manpages_4.10-2_all.deb ... Unpacking manpages (4.10-2) ... Selecting previously unselected package mime-support. Preparing to unpack .../45-mime-support_3.60_all.deb ... Unpacking mime-support (3.60) ... Selecting previously unselected package openssh-client. Preparing to unpack .../46-openssh-client_1%3a7.4p1-10+deb9u7_amd64.deb ... Unpacking openssh-client (1:7.4p1-10+deb9u7) ... Selecting previously unselected package libpython2.7-stdlib:amd64. Preparing to unpack .../47-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 .../48-python2.7_2.7.13-2+deb9u3_amd64.deb ... Unpacking python2.7 (2.7.13-2+deb9u3) ... Selecting previously unselected package xz-utils. Preparing to unpack .../49-xz-utils_5.2.2-1.2+b1_amd64.deb ... Unpacking xz-utils (5.2.2-1.2+b1) ... Selecting previously unselected package binutils. Preparing to unpack .../50-binutils_2.28-5_amd64.deb ... Unpacking binutils (2.28-5) ... Selecting previously unselected package libisl15:amd64. Preparing to unpack .../51-libisl15_0.18-1_amd64.deb ... Unpacking libisl15:amd64 (0.18-1) ... Selecting previously unselected package libmpfr4:amd64. Preparing to unpack .../52-libmpfr4_3.1.5-1_amd64.deb ... Unpacking libmpfr4:amd64 (3.1.5-1) ... Selecting previously unselected package libmpc3:amd64. Preparing to unpack .../53-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 .../54-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 .../55-cpp_4%3a6.3.0-4_amd64.deb ... Unpacking cpp (4:6.3.0-4) ... Selecting previously unselected package libcurl3:amd64. Preparing to unpack .../56-libcurl3_7.52.1-5+deb9u9_amd64.deb ... Unpacking libcurl3:amd64 (7.52.1-5+deb9u9) ... Selecting previously unselected package curl. Preparing to unpack .../57-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 .../58-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 .../59-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 .../60-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 .../61-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 .../62-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 .../63-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 .../64-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 .../65-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 .../66-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 .../67-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 .../68-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 .../69-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 .../70-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 .../71-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 .../72-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 .../73-linux-libc-dev_4.9.189-3_amd64.deb ... Unpacking linux-libc-dev:amd64 (4.9.189-3) ... Selecting previously unselected package libc6-dev:amd64. Preparing to unpack .../74-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 .../75-libexpat1-dev_2.2.0-2+deb9u2_amd64.deb ... Unpacking libexpat1-dev:amd64 (2.2.0-2+deb9u2) ... Selecting previously unselected package libpython2.7:amd64. Preparing to unpack .../76-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 .../77-libpython2.7-dev_2.7.13-2+deb9u3_amd64.deb ... Unpacking libpython2.7-dev:amd64 (2.7.13-2+deb9u3) ... Selecting previously unselected package libsasl2-modules:amd64. Preparing to unpack .../78-libsasl2-modules_2.1.27~101-g0780600+dfsg-3_amd64.deb ... Unpacking libsasl2-modules:amd64 (2.1.27~101-g0780600+dfsg-3) ... Selecting previously unselected package libxdmcp6:amd64. Preparing to unpack .../79-libxdmcp6_1%3a1.1.2-3_amd64.deb ... Unpacking libxdmcp6:amd64 (1:1.1.2-3) ... Selecting previously unselected package libxcb1:amd64. Preparing to unpack .../80-libxcb1_1.12-1_amd64.deb ... Unpacking libxcb1:amd64 (1.12-1) ... Selecting previously unselected package libx11-data. Preparing to unpack .../81-libx11-data_2%3a1.6.4-3+deb9u1_all.deb ... Unpacking libx11-data (2:1.6.4-3+deb9u1) ... Selecting previously unselected package libx11-6:amd64. Preparing to unpack .../82-libx11-6_2%3a1.6.4-3+deb9u1_amd64.deb ... Unpacking libx11-6:amd64 (2:1.6.4-3+deb9u1) ... Selecting previously unselected package libxext6:amd64. Preparing to unpack .../83-libxext6_2%3a1.3.3-1+b2_amd64.deb ... Unpacking libxext6:amd64 (2:1.3.3-1+b2) ... Selecting previously unselected package libxmuu1:amd64. Preparing to unpack .../84-libxmuu1_2%3a1.1.2-2_amd64.deb ... Unpacking libxmuu1:amd64 (2:1.1.2-2) ... Selecting previously unselected package make. Preparing to unpack .../85-make_4.1-9.1_amd64.deb ... Unpacking make (4.1-9.1) ... Selecting previously unselected package manpages-dev. Preparing to unpack .../86-manpages-dev_4.10-2_all.deb ... Unpacking manpages-dev (4.10-2) ... Selecting previously unselected package patch. Preparing to unpack .../87-patch_2.7.5-1+deb9u2_amd64.deb ... Unpacking patch (2.7.5-1+deb9u2) ... Selecting previously unselected package python2.7-dev. Preparing to unpack .../88-python2.7-dev_2.7.13-2+deb9u3_amd64.deb ... Unpacking python2.7-dev (2.7.13-2+deb9u3) ... Selecting previously unselected package rename. Preparing to unpack .../89-rename_0.20-4_all.deb ... Unpacking rename (0.20-4) ... Selecting previously unselected package rsync. Preparing to unpack .../90-rsync_3.1.2-1+deb9u2_amd64.deb ... Unpacking rsync (3.1.2-1+deb9u2) ... Selecting previously unselected package xauth. Preparing to unpack .../91-xauth_1%3a1.0.9-1+b2_amd64.deb ... Unpacking xauth (1:1.0.9-1+b2) ... Selecting previously unselected package publicsuffix. Preparing to unpack .../92-publicsuffix_20190415.1030-0+deb9u1_all.deb ... Unpacking publicsuffix (20190415.1030-0+deb9u1) ... Setting up libquadmath0:amd64 (6.3.0-18+deb9u1) ... Setting up libncurses5:amd64 (6.0+20161126-1+deb9u2) ... 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 manpages (4.10-2) ... 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 libpopt0:amd64 (1.16-10+b2) ... Setting up libcc1-0:amd64 (6.3.0-18+deb9u1) ... Setting up less (481-2.1) ... 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 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 libgpm2:amd64 (1.20.4-6.2+b1) ... 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 libsasl2-modules-db:amd64 (2.1.27~101-g0780600+dfsg-3) ... Setting up linux-libc-dev:amd64 (4.9.189-3) ... Setting up libsasl2-2:amd64 (2.1.27~101-g0780600+dfsg-3) ... Setting up libbsd0:amd64 (0.8.3-1) ... Setting up libtasn1-6:amd64 (4.10-1.1+deb9u1) ... Setting up libmagic-mgc (1:5.30-1+deb9u2) ... Setting up bzip2 (1.0.6-8.1) ... Setting up libmagic1:amd64 (1:5.30-1+deb9u2) ... Setting up rsync (3.1.2-1+deb9u2) ... invoke-rc.d: could not determine current runlevel invoke-rc.d: policy-rc.d denied execution of restart. 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.2s-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) ... Setting up patch (2.7.5-1+deb9u2) ... Setting up krb5-locales (1.15-1+deb9u1) ... Processing triggers for libc-bin (2.24-11+deb9u4) ... Setting up publicsuffix (20190415.1030-0+deb9u1) ... Setting up libunistring0:amd64 (0.9.6+really0.9.3-0.1) ... Setting up xz-utils (5.2.2-1.2+b1) ... update-alternatives: using /usr/bin/xz to provide /usr/bin/lzma (lzma) in auto mode update-alternatives: warning: skip creation of /usr/share/man/man1/lzma.1.gz because associated file /usr/share/man/man1/xz.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/unlzma.1.gz because associated file /usr/share/man/man1/unxz.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/lzcat.1.gz because associated file /usr/share/man/man1/xzcat.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/lzmore.1.gz because associated file /usr/share/man/man1/xzmore.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/lzless.1.gz because associated file /usr/share/man/man1/xzless.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/lzdiff.1.gz because associated file /usr/share/man/man1/xzdiff.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/lzcmp.1.gz because associated file /usr/share/man/man1/xzcmp.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/lzgrep.1.gz because associated file /usr/share/man/man1/xzgrep.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/lzegrep.1.gz because associated file /usr/share/man/man1/xzegrep.1.gz (of link group lzma) doesn't exist update-alternatives: warning: skip creation of /usr/share/man/man1/lzfgrep.1.gz because associated file /usr/share/man/man1/xzfgrep.1.gz (of link group lzma) doesn't exist 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 libxdmcp6:amd64 (1:1.1.2-3) ... Setting up libkeyutils1:amd64 (1.5.9-9) ... Setting up libsasl2-modules:amd64 (2.1.27~101-g0780600+dfsg-3) ... Setting up libpython2.7-minimal:amd64 (2.7.13-2+deb9u3) ... Setting up manpages-dev (4.10-2) ... Setting up libc6-dev:amd64 (2.24-11+deb9u4) ... Setting up libitm1:amd64 (6.3.0-18+deb9u1) ... Setting up libx11-data (2:1.6.4-3+deb9u1) ... Setting up libpython2.7-stdlib:amd64 (2.7.13-2+deb9u3) ... Setting up libxau6:amd64 (1:1.0.8-1) ... 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 libedit2:amd64 (3.1-20160903-3) ... 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 rename (0.20-4) ... update-alternatives: using /usr/bin/file-rename 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/file-rename.1p.gz (of link group rename) doesn't exist Setting up libpsl5:amd64 (0.17.0-3) ... Setting up python2.7 (2.7.13-2+deb9u3) ... Setting up file (1:5.30-1+deb9u2) ... 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+deb9u2) ... 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 libxcb1:amd64 (1.12-1) ... 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 libx11-6:amd64 (2:1.6.4-3+deb9u1) ... Setting up librtmp1:amd64 (2.4+20151223.gitfa8646d.1-1+b1) ... Setting up libxmuu1:amd64 (2:1.1.2-2) ... 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 libxext6:amd64 (2:1.3.3-1+b2) ... Setting up gcc (4:6.3.0-4) ... Setting up libgssapi-krb5-2:amd64 (1.15-1+deb9u1) ... Setting up xauth (1:1.0.9-1+b2) ... Setting up openssh-client (1:7.4p1-10+deb9u7) ... 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 b8a6b93685e8 ---> f501ce529308 Step 14/32 : FROM build-${BUILD_PLATFORM} AS build ---> a33e269b899a Step 15/32 : COPY docker-compose-entrypoint.sh /usr/local/bin/ ---> 3626371cb5ca Step 16/32 : ENTRYPOINT ["sh", "/usr/local/bin/docker-compose-entrypoint.sh"] ---> Running in 495d981614b2 Removing intermediate container 495d981614b2 ---> ea77d80bf118 Step 17/32 : COPY --from=docker-cli /usr/local/bin/docker /usr/local/bin/docker ---> c53f1802b3fc Step 18/32 : WORKDIR /code/ ---> Running in 88cc26570aec Removing intermediate container 88cc26570aec ---> 0f35c5adee2f Step 19/32 : RUN pip install virtualenv==16.2.0 ---> Running in b801803ddb5d 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.2.0) Installing collected packages: virtualenv Successfully installed virtualenv-16.2.0 Removing intermediate container b801803ddb5d ---> 7a091dd7a098 Step 20/32 : RUN pip install tox==2.9.1 ---> Running in f5e9f20bb67e 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 py>=1.4.17 (from tox==2.9.1) 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 (from tox==2.9.1) Downloading https://files.pythonhosted.org/packages/92/c7/48439f7d5fd6bddb4c04b850bb862b42e3e2b98570040dfaf68aedd8114b/pluggy-0.13.0-py2.py3-none-any.whl Collecting six (from tox==2.9.1) Downloading https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-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.2.0) Collecting importlib-metadata>=0.12; python_version < "3.8" (from pluggy<1.0,>=0.3.0->tox==2.9.1) Downloading https://files.pythonhosted.org/packages/f6/d2/40b3fa882147719744e6aa50ac39cf7a22a913cbcba86a0371176c425a3b/importlib_metadata-0.23-py2.py3-none-any.whl Collecting zipp>=0.5 (from importlib-metadata>=0.12; python_version < "3.8"->pluggy<1.0,>=0.3.0->tox==2.9.1) Downloading https://files.pythonhosted.org/packages/74/3d/1ee25a26411ba0401b43c6376d2316a71addcc72ef8690b101b4ea56d76a/zipp-0.6.0-py2.py3-none-any.whl Collecting more-itertools (from zipp>=0.5->importlib-metadata>=0.12; python_version < "3.8"->pluggy<1.0,>=0.3.0->tox==2.9.1) Downloading https://files.pythonhosted.org/packages/45/dc/3241eef99eb45f1def35cf93af35d1cf9ef4c0991792583b8f33ea41b092/more_itertools-7.2.0-py3-none-any.whl (57kB) Installing collected packages: py, more-itertools, zipp, importlib-metadata, pluggy, six, tox Successfully installed importlib-metadata-0.23 more-itertools-7.2.0 pluggy-0.13.0 py-1.8.0 six-1.12.0 tox-2.9.1 zipp-0.6.0 Removing intermediate container f5e9f20bb67e ---> b125338c1433 Step 21/32 : COPY requirements.txt . ---> 86ebd4c71377 Step 22/32 : COPY requirements-dev.txt . ---> 41bda7adb7ec Step 23/32 : COPY .pre-commit-config.yaml . ---> 119eae74c139 Step 24/32 : COPY tox.ini . ---> 1f6b86cd5961 Step 25/32 : COPY setup.py . ---> dfa042c3f661 Step 26/32 : COPY README.md . ---> 8b04b794d647 Step 27/32 : COPY compose compose/ ---> c262d5307251 Step 28/32 : RUN tox --notest ---> Running in f92991a909e4 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,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py37 create: /code/.tox/py37 py37 installdeps: -rrequirements.txt, -rrequirements-dev.txt py37 develop-inst: /code py37 installed: asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 ___________________________________ summary ____________________________________ py27: skipped tests py37: skipped tests pre-commit: skipped tests congratulations :) Removing intermediate container f92991a909e4 ---> bd8851d05ee4 Step 29/32 : COPY . . ---> 5f83329231e7 Step 30/32 : ARG GIT_COMMIT=unknown ---> Running in 08dc7a5e16df Removing intermediate container 08dc7a5e16df ---> 03a034f6d5d7 Step 31/32 : ENV DOCKER_COMPOSE_GITSHA=$GIT_COMMIT ---> Running in e9181d145656 Removing intermediate container e9181d145656 ---> 2cc7b763a572 Step 32/32 : RUN script/build/linux-entrypoint ---> Running in 32b9a1de8216 + 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 e8c0e533895a934aeba70739e8418809c8c88563 ']' + echo e8c0e533895a934aeba70739e8418809c8c88563 + 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.341s) '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.322s) '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/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/debug/run_d [13/13] Processing build/debug/run_d Waf: Leaving directory `/tmp/pyinstaller/bootloader/build/debug' 'build_debug' finished successfully (0.698s) 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_launch.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_python27_compat.c [10/13] Compiling src/pyi_archive.c [11/13] Compiling src/pyi_path.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.681s) 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.014s) 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.012s) + /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: altgraph in /code/.tox/py37/lib/python3.7/site-packages (from PyInstaller==3.5) (0.16.1) Requirement already satisfied: setuptools in /code/.tox/py37/lib/python3.7/site-packages (from PyInstaller==3.5) (41.2.0) 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=4e4714b14ba78e09d39854c8b7de4c3a39d8f1abac1b82deef21cd6205122e1e Stored in directory: /tmp/pip-ephem-wheel-cache-52xcne81/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 36 INFO: PyInstaller: 3.5 36 INFO: Python: 3.7.4 38 INFO: Platform: Linux-4.15.0-1048-aws-x86_64-with 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 ... 2397 INFO: running Analysis Analysis-00.toc 2407 INFO: Caching module hooks... 2411 INFO: Analyzing bin/docker-compose 2489 INFO: Processing pre-find module path hook distutils 2489 INFO: distutils: retargeting to non-venv dir '/usr/local/lib/python3.7/distutils' 2648 INFO: Processing pre-safe import module hook urllib3.packages.six.moves 3637 INFO: Processing pre-safe import module hook six.moves 6116 INFO: Loading module hooks... 6117 INFO: Loading module hook "hook-certifi.py"... 6117 INFO: Loading module hook "hook-jsonschema.py"... 6119 INFO: Loading module hook "hook-xml.py"... 6156 INFO: Loading module hook "hook-nacl.py"... 6157 INFO: Loading module hook "hook-distutils.py"... 6159 INFO: Loading module hook "hook-pkg_resources.py"... 6478 INFO: Processing pre-safe import module hook win32com 6479 INFO: Loading module hook "hook-pydoc.py"... 6480 INFO: Loading module hook "hook-sysconfig.py"... 6486 INFO: Loading module hook "hook-encodings.py"... 6523 INFO: Loading module hook "hook-cryptography.py"... 6723 INFO: Looking for ctypes DLLs 6735 INFO: Analyzing run-time hooks ... 6740 INFO: Including run-time hook 'pyi_rth_certifi.py' 6741 INFO: Including run-time hook 'pyi_rth_pkgres.py' 6751 INFO: Looking for dynamic libraries 6960 INFO: Looking for eggs 6960 INFO: Using Python library /usr/local/lib/libpython3.7m.so.1.0 6970 INFO: Warnings written to /code/build/docker-compose/warn-docker-compose.txt 7025 INFO: Graph cross-reference written to /code/build/docker-compose/xref-docker-compose.html 7047 INFO: checking PYZ 7047 INFO: Building PYZ because PYZ-00.toc is non existent 7047 INFO: Building PYZ (ZlibArchive) /code/build/docker-compose/PYZ-00.pyz 7792 INFO: Building PYZ (ZlibArchive) /code/build/docker-compose/PYZ-00.pyz completed successfully. 7803 INFO: checking PKG 7803 INFO: Building PKG because PKG-00.toc is non existent 7803 INFO: Building PKG (CArchive) PKG-00.pkg 18721 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully. 18725 INFO: Bootloader /code/.tox/py37/lib/python3.7/site-packages/PyInstaller/bootloader/Linux-64bit/run 18725 INFO: checking EXE 18725 INFO: Building EXE because EXE-00.toc is non existent 18725 INFO: Building EXE from EXE-00.toc 18725 INFO: Appending archive to ELF section in EXE /code/dist/docker-compose 18776 INFO: Building EXE from EXE-00.toc completed successfully. + ls -la dist/ total 17288 drwxrwxrwx 2 root root 4096 Sep 18 09:48 . drwxr-xr-x 1 root root 4096 Sep 18 09:48 .. -rwxr-xr-x 1 root root 17688504 Sep 18 09:48 docker-compose + ldd dist/docker-compose  /lib/ld-musl-x86_64.so.1 (0x7f1ca39b8000) libz.so.1 => /lib/libz.so.1 (0x7f1ca3982000) libc.musl-x86_64.so.1 => /lib/ld-musl-x86_64.so.1 (0x7f1ca39b8000) + mv dist/docker-compose /usr/local/bin + docker-compose version docker-compose version 1.25.0dev, build e8c0e533895a934aeba70739e8418809c8c88563 docker-py version: 4.0.1 CPython version: 3.7.4 OpenSSL version: OpenSSL 1.1.1d 10 Sep 2019 Removing intermediate container 32b9a1de8216 ---> 70e7fefdc75f Successfully built 70e7fefdc75f Successfully tagged dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] sh + docker push dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 The push refers to repository [docker.io/dockerbuildbot/compose] 7e82b1bc5583: Preparing 052cbf7bab51: Preparing c69ada854900: Preparing fd5e2819a3d4: Preparing b12d78ec43fa: Preparing 80b653cc93ee: Preparing 20728a620e3b: Preparing 9fc84631267b: Preparing 8f13b57556d4: Preparing 6fc01704fed7: Preparing 9e340e4ab426: Preparing 730dc3545da6: Preparing 5d2a787378e1: Preparing 50164bbec30b: Preparing 09bef5a30293: Preparing fd32c56b6252: Preparing df8f08ee9463: Preparing 6a1aa47d6606: Preparing 7b66164940a3: Preparing c5728f2d608b: Preparing 03901b4a2ea8: Preparing 80b653cc93ee: Waiting 20728a620e3b: Waiting 09bef5a30293: Waiting 9fc84631267b: Waiting fd32c56b6252: Waiting 8f13b57556d4: Waiting df8f08ee9463: Waiting 6fc01704fed7: Waiting 6a1aa47d6606: Waiting 7b66164940a3: Waiting 9e340e4ab426: Waiting c5728f2d608b: Waiting 730dc3545da6: Waiting 03901b4a2ea8: Waiting 5d2a787378e1: Waiting 50164bbec30b: Waiting b12d78ec43fa: Pushed fd5e2819a3d4: Pushed 052cbf7bab51: Pushed 80b653cc93ee: Pushed 20728a620e3b: Pushed 9fc84631267b: Pushed 8f13b57556d4: Pushed 9e340e4ab426: Pushed 6fc01704fed7: Pushed 7e82b1bc5583: Pushed 5d2a787378e1: Pushed 730dc3545da6: Pushed 09bef5a30293: Pushed df8f08ee9463: Layer already exists 6a1aa47d6606: Layer already exists 7b66164940a3: Layer already exists c5728f2d608b: Layer already exists 03901b4a2ea8: Layer already exists 50164bbec30b: Pushed c69ada854900: Pushed fd32c56b6252: Pushed alpine-e8c0e533895a934aeba70739e8418809c8c88563: digest: sha256:24373bd4530abd3f546df9bb6cf7ed90d417d8f32d05bc185b7f9dcb02ab1360 size: 4715 [Pipeline] echo dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] echo image.id: dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] node Running on ubuntu-1804-overlay2 (i-05064fb0ef91a3bb9) in /home/ubuntu/workspace/compose_PR-6900 [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_PR-6900@tmp/ef4a962a-0daa-4042-98e8-b2c28d4084dc/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-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py -n 2 docker/docker-ce recent Unable to find image 'dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563' locally alpine-e8c0e533895a934aeba70739e8418809c8c88563: Pulling from dockerbuildbot/compose 9d48c3bd43c5: Already exists c0ea575d71b9: Already exists 0f535eceebd5: Already exists 8a30f5893bea: Already exists c1d30ace7b67: Already exists bffb13e9f813: Pulling fs layer 07ffbb0cc7df: Pulling fs layer 3d9bb4d31cc7: Pulling fs layer 87578054ac8c: Pulling fs layer 2552883b5632: Pulling fs layer ad711d9196e7: Pulling fs layer 52c39211b0bf: Pulling fs layer 7ce177dd6606: Pulling fs layer f20d2f70b424: Pulling fs layer 486598fb55f3: Pulling fs layer cf9c6a23fe3b: Pulling fs layer 42ea9b4da285: Pulling fs layer 4ce20d9247a3: Pulling fs layer 5fc24fc7f966: Pulling fs layer 4aab269fa751: Pulling fs layer 46f9aca8f121: Pulling fs layer 87578054ac8c: Waiting 2552883b5632: Waiting ad711d9196e7: Waiting 52c39211b0bf: Waiting 7ce177dd6606: Waiting f20d2f70b424: Waiting 486598fb55f3: Waiting cf9c6a23fe3b: Waiting 42ea9b4da285: Waiting 4ce20d9247a3: Waiting 5fc24fc7f966: Waiting 4aab269fa751: Waiting 46f9aca8f121: Waiting 07ffbb0cc7df: Verifying Checksum 07ffbb0cc7df: Download complete 87578054ac8c: Verifying Checksum 87578054ac8c: Download complete 3d9bb4d31cc7: Verifying Checksum 3d9bb4d31cc7: Download complete 2552883b5632: Verifying Checksum 2552883b5632: Download complete 52c39211b0bf: Verifying Checksum 52c39211b0bf: Download complete ad711d9196e7: Verifying Checksum ad711d9196e7: Download complete 7ce177dd6606: Verifying Checksum 7ce177dd6606: Download complete f20d2f70b424: Verifying Checksum f20d2f70b424: Download complete 486598fb55f3: Verifying Checksum 486598fb55f3: Download complete cf9c6a23fe3b: Verifying Checksum cf9c6a23fe3b: Download complete 42ea9b4da285: Verifying Checksum 42ea9b4da285: Download complete 4ce20d9247a3: Verifying Checksum 4ce20d9247a3: Download complete 4aab269fa751: Verifying Checksum 4aab269fa751: Download complete bffb13e9f813: Verifying Checksum bffb13e9f813: Download complete 46f9aca8f121: Verifying Checksum 46f9aca8f121: Download complete 5fc24fc7f966: Verifying Checksum 5fc24fc7f966: Download complete bffb13e9f813: Pull complete 07ffbb0cc7df: Pull complete 3d9bb4d31cc7: Pull complete 87578054ac8c: Pull complete 2552883b5632: Pull complete ad711d9196e7: Pull complete 52c39211b0bf: Pull complete 7ce177dd6606: Pull complete f20d2f70b424: Pull complete 486598fb55f3: Pull complete cf9c6a23fe3b: Pull complete 42ea9b4da285: Pull complete 4ce20d9247a3: Pull complete 5fc24fc7f966: Pull complete 4aab269fa751: Pull complete 46f9aca8f121: Pull complete Digest: sha256:24373bd4530abd3f546df9bb6cf7ed90d417d8f32d05bc185b7f9dcb02ab1360 Status: Downloaded newer image for dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] node Running on ubuntu-1804-overlay2 (i-05064fb0ef91a3bb9) in /home/ubuntu/workspace/compose_PR-6900 [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_PR-6900@tmp/fc99f4fc-092a-432b-bf2b-af27de7e35d0/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_PR-6900:/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_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Fetching without tags Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) Commit message: "Include errors when raising ProjectError exception" > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] sh + docker pull dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 Error response from daemon: manifest for dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 not found: manifest unknown: manifest unknown [Pipeline] sh + script/build/write-git-sha + GIT_COMMIT=e8c0e533 + docker build -t dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 --target build --build-arg BUILD_PLATFORM=debian --build-arg GIT_COMMIT=e8c0e533895a934aeba70739e8418809c8c88563 . Sending build context to Docker daemon 1.861MB 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 ---> 39fb80313465 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 ---> 01e15689ea21 Step 11/32 : ENV BUILD_BOOTLOADER=1 ---> Using cache ---> 6b2ce8695c15 Step 12/32 : FROM python:${PYTHON_VERSION}-${BUILD_DEBIAN_VERSION} AS build-debian ---> 7691d3cb6cbc Step 13/32 : RUN apt-get update && apt-get install -y curl gcc git libc-dev libgcc-6-dev make openssl python2.7-dev ---> Using cache ---> 99af8035f960 Step 14/32 : FROM build-${BUILD_PLATFORM} AS build ---> 99af8035f960 Step 15/32 : COPY docker-compose-entrypoint.sh /usr/local/bin/ ---> 130925fadda1 Step 16/32 : ENTRYPOINT ["sh", "/usr/local/bin/docker-compose-entrypoint.sh"] ---> Running in 5db54f4269ac Removing intermediate container 5db54f4269ac ---> 918380989978 Step 17/32 : COPY --from=docker-cli /usr/local/bin/docker /usr/local/bin/docker ---> c7eccf390c8a Step 18/32 : WORKDIR /code/ ---> Running in d151340269b8 Removing intermediate container d151340269b8 ---> b331d314d50b Step 19/32 : RUN pip install virtualenv==16.2.0 ---> Running in 93ffb78c0520 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.2.0) Installing collected packages: virtualenv Successfully installed virtualenv-16.2.0 Removing intermediate container 93ffb78c0520 ---> c09b24a0b9f4 Step 20/32 : RUN pip install tox==2.9.1 ---> Running in 012f8351c3a1 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 pluggy<1.0,>=0.3.0 (from tox==2.9.1) Downloading https://files.pythonhosted.org/packages/92/c7/48439f7d5fd6bddb4c04b850bb862b42e3e2b98570040dfaf68aedd8114b/pluggy-0.13.0-py2.py3-none-any.whl Collecting six (from tox==2.9.1) Downloading https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl Collecting py>=1.4.17 (from tox==2.9.1) Downloading https://files.pythonhosted.org/packages/76/bc/394ad449851729244a97857ee14d7cba61ddb268dce3db538ba2f2ba1f0f/py-1.8.0-py2.py3-none-any.whl (83kB) 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 importlib-metadata>=0.12; python_version < "3.8" (from pluggy<1.0,>=0.3.0->tox==2.9.1) 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.2.0) Collecting zipp>=0.5 (from importlib-metadata>=0.12; python_version < "3.8"->pluggy<1.0,>=0.3.0->tox==2.9.1) Downloading https://files.pythonhosted.org/packages/74/3d/1ee25a26411ba0401b43c6376d2316a71addcc72ef8690b101b4ea56d76a/zipp-0.6.0-py2.py3-none-any.whl Collecting more-itertools (from zipp>=0.5->importlib-metadata>=0.12; python_version < "3.8"->pluggy<1.0,>=0.3.0->tox==2.9.1) Downloading https://files.pythonhosted.org/packages/45/dc/3241eef99eb45f1def35cf93af35d1cf9ef4c0991792583b8f33ea41b092/more_itertools-7.2.0-py3-none-any.whl (57kB) Installing collected packages: more-itertools, zipp, importlib-metadata, pluggy, six, py, tox Successfully installed importlib-metadata-0.23 more-itertools-7.2.0 pluggy-0.13.0 py-1.8.0 six-1.12.0 tox-2.9.1 zipp-0.6.0 Removing intermediate container 012f8351c3a1 ---> 509862cfbc1b Step 21/32 : COPY requirements.txt . ---> df76d0e91fda Step 22/32 : COPY requirements-dev.txt . ---> 7324ac1f97ea Step 23/32 : COPY .pre-commit-config.yaml . ---> b8541ae4baee Step 24/32 : COPY tox.ini . ---> 01e42118738c Step 25/32 : COPY setup.py . ---> d7962ea30f42 Step 26/32 : COPY README.md . ---> 8fb32d619c78 Step 27/32 : COPY compose compose/ ---> ff069ce93179 Step 28/32 : RUN tox --notest ---> Running in 038710d0fe22 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,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py37 create: /code/.tox/py37 py37 installdeps: -rrequirements.txt, -rrequirements-dev.txt py37 develop-inst: /code py37 installed: asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 ___________________________________ summary ____________________________________ py27: skipped tests py37: skipped tests pre-commit: skipped tests congratulations :) Removing intermediate container 038710d0fe22 ---> 94e91376df93 Step 29/32 : COPY . . ---> 3811d5283d7a Step 30/32 : ARG GIT_COMMIT=unknown ---> Running in 0f2fe062afac Removing intermediate container 0f2fe062afac ---> 0eb214375a3c Step 31/32 : ENV DOCKER_COMPOSE_GITSHA=$GIT_COMMIT ---> Running in 0831f398a694 Removing intermediate container 0831f398a694 ---> 5395e216b8f9 Step 32/32 : RUN script/build/linux-entrypoint ---> Running in 9a21968bd78a + 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 e8c0e533895a934aeba70739e8418809c8c88563 ']' + echo e8c0e533895a934aeba70739e8418809c8c88563 NOT compiling bootloader!!! + 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 '' ']' + echo 'NOT compiling bootloader!!!' + /code/.tox/py37/bin/pyinstaller --exclude-module pycrypto --exclude-module PyInstaller docker-compose.spec 35 INFO: PyInstaller: 3.5 35 INFO: Python: 3.7.4 36 INFO: Platform: Linux-4.15.0-1048-aws-x86_64-with-debian-9.11 38 INFO: UPX is not available. 39 INFO: Extending PYTHONPATH with paths ['/code/bin', '/code'] 39 INFO: checking Analysis 39 INFO: Building Analysis because Analysis-00.toc is non existent 39 INFO: Initializing module dependency graph... 40 INFO: Initializing module graph hooks... 41 INFO: Analyzing base_library.zip ... 2455 INFO: running Analysis Analysis-00.toc 2472 INFO: Caching module hooks... 2476 INFO: Analyzing bin/docker-compose 2555 INFO: Processing pre-find module path hook distutils 2555 INFO: distutils: retargeting to non-venv dir '/usr/local/lib/python3.7/distutils' 2716 INFO: Processing pre-safe import module hook urllib3.packages.six.moves 3726 INFO: Processing pre-safe import module hook six.moves 6267 INFO: Loading module hooks... 6267 INFO: Loading module hook "hook-certifi.py"... 6268 INFO: Loading module hook "hook-jsonschema.py"... 6270 INFO: Loading module hook "hook-xml.py"... 6311 INFO: Loading module hook "hook-nacl.py"... 6313 INFO: Loading module hook "hook-distutils.py"... 6314 INFO: Loading module hook "hook-pkg_resources.py"... 6449 INFO: Processing pre-safe import module hook win32com 6639 INFO: Loading module hook "hook-pydoc.py"... 6640 INFO: Loading module hook "hook-sysconfig.py"... 6646 INFO: Loading module hook "hook-encodings.py"... 6684 INFO: Loading module hook "hook-cryptography.py"... 6856 INFO: Looking for ctypes DLLs 6867 INFO: Analyzing run-time hooks ... 6873 INFO: Including run-time hook 'pyi_rth_certifi.py' 6874 INFO: Including run-time hook 'pyi_rth_pkgres.py' 6883 INFO: Looking for dynamic libraries 7399 INFO: Looking for eggs 7399 INFO: Using Python library /usr/local/lib/libpython3.7m.so.1.0 7409 INFO: Warnings written to /code/build/docker-compose/warn-docker-compose.txt 7465 INFO: Graph cross-reference written to /code/build/docker-compose/xref-docker-compose.html 7487 INFO: checking PYZ 7487 INFO: Building PYZ because PYZ-00.toc is non existent 7488 INFO: Building PYZ (ZlibArchive) /code/build/docker-compose/PYZ-00.pyz 8196 INFO: Building PYZ (ZlibArchive) /code/build/docker-compose/PYZ-00.pyz completed successfully. 8207 INFO: checking PKG 8207 INFO: Building PKG because PKG-00.toc is non existent 8207 INFO: Building PKG (CArchive) PKG-00.pkg 18004 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully. 18008 INFO: Bootloader /code/.tox/py37/lib/python3.7/site-packages/PyInstaller/bootloader/Linux-64bit/run 18008 INFO: checking EXE 18008 INFO: Building EXE because EXE-00.toc is non existent 18008 INFO: Building EXE from EXE-00.toc 18008 INFO: Appending archive to ELF section in EXE /code/dist/docker-compose 18071 INFO: Building EXE from EXE-00.toc completed successfully. + ls -la dist/ total 16868 drwxrwxrwx 2 root root 4096 Sep 18 09:51 . drwxr-xr-x 1 root root 4096 Sep 18 09:51 .. -rwxr-xr-x 1 root root 17260480 Sep 18 09:51 docker-compose + ldd dist/docker-compose  linux-vdso.so.1 (0x00007ffe489f3000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f69224c9000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f69222af000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6921f10000) /lib64/ld-linux-x86-64.so.2 (0x00007f69226cd000) + mv dist/docker-compose /usr/local/bin + docker-compose version docker-compose version 1.25.0dev, build e8c0e533895a934aeba70739e8418809c8c88563 docker-py version: 4.0.1 CPython version: 3.7.4 OpenSSL version: OpenSSL 1.1.0k 28 May 2019 Removing intermediate container 9a21968bd78a ---> 001cc19a1d81 Successfully built 001cc19a1d81 Successfully tagged dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] sh + docker push dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 The push refers to repository [docker.io/dockerbuildbot/compose] e0e2ca1bdaaf: Preparing f033fc3816ae: Preparing 9c52c4577a8c: Preparing a0283bc5804e: Preparing 3082ffedc3a1: Preparing e048ba33daad: Preparing a82d920268b3: Preparing 9b111eb204ae: Preparing 6141237deca6: Preparing 0cdfe6c4a4c1: Preparing f10162e7b367: Preparing f7f45ba26789: Preparing b0eb59ce9fed: Preparing 5df631464f27: Preparing 76ff42ba22f6: Preparing 64c6d2b5f06e: Preparing 5d9379544f46: Preparing a60dca41a274: Preparing 2b0a1b3e6b0e: Preparing e768b825df3d: Preparing e9dc98463cd6: Preparing e048ba33daad: Waiting a82d920268b3: Waiting 6141237deca6: Waiting 0cdfe6c4a4c1: Waiting f10162e7b367: Waiting f7f45ba26789: Waiting b0eb59ce9fed: Waiting 5df631464f27: Waiting 76ff42ba22f6: Waiting 64c6d2b5f06e: Waiting 5d9379544f46: Waiting a60dca41a274: Waiting 2b0a1b3e6b0e: Waiting e768b825df3d: Waiting e9dc98463cd6: Waiting 3082ffedc3a1: Pushed f033fc3816ae: Pushed a0283bc5804e: Pushed e048ba33daad: Pushed a82d920268b3: Pushed 9b111eb204ae: Pushed 6141237deca6: Pushed 0cdfe6c4a4c1: Pushed f10162e7b367: Pushed e0e2ca1bdaaf: Pushed b0eb59ce9fed: Pushed f7f45ba26789: Pushed 76ff42ba22f6: Pushed 5d9379544f46: Layer already exists a60dca41a274: Layer already exists 2b0a1b3e6b0e: Layer already exists e768b825df3d: Layer already exists e9dc98463cd6: Layer already exists 5df631464f27: Pushed 9c52c4577a8c: Pushed 64c6d2b5f06e: Pushed debian-e8c0e533895a934aeba70739e8418809c8c88563: digest: sha256:b369798af341dad2e7e5d4464e613ed2eefd8e6f925f5056f7798229d5f281f6 size: 4718 [Pipeline] echo dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] echo image.id: dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] node Running on ubuntu-1804-overlay2 (i-05064fb0ef91a3bb9) in /home/ubuntu/workspace/compose_PR-6900 [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_PR-6900@tmp/57e72814-f998-435f-9fc4-3b06d7d829c8/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-e8c0e533895a934aeba70739e8418809c8c88563 /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.2_py27) [Pipeline] { (Branch: alpine_19.03.2_py37) [Pipeline] { (Branch: alpine_18.09.9_py27) [Pipeline] { (Branch: alpine_18.09.9_py37) [Pipeline] { (Branch: debian_19.03.2_py27) [Pipeline] { (Branch: debian_19.03.2_py37) [Pipeline] { (Branch: debian_18.09.9_py27) [Pipeline] { (Branch: debian_18.09.9_py37) [Pipeline] node [Pipeline] node [Pipeline] node [Pipeline] node [Pipeline] node Running on ubuntu-1804-overlay2 (i-048ea7c4a178c9a84) in /home/ubuntu/workspace/compose_PR-6900 [Pipeline] node [Pipeline] node [Pipeline] node [Pipeline] { [Pipeline] withDockerRegistry Running on ubuntu-1804-overlay2 (i-030449e2bbb99834b) in /home/ubuntu/workspace/compose_PR-6900 $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ Running on ubuntu-1804-overlay2 (i-05064fb0ef91a3bb9) in /home/ubuntu/workspace/compose_PR-6900 WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_PR-6900@tmp/c7142491-5328-4659-994f-14fcc7d847fa/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] { [Pipeline] wrap [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_PR-6900@tmp/bf867416-4de7-476a-adc3-691cbaef7ec5/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] 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_PR-6900@tmp/55ffa2c5-f1c7-43bd-868e-6fb5b8adb778/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] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] { [Pipeline] wrap [Pipeline] wrap [Pipeline] { [Pipeline] { [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh + uname -m [Pipeline] sh + uname -m [Pipeline] sh + uname -m [Pipeline] sh + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_PR-6900:/workspace busybox chown -R 1000:1000 /workspace + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_PR-6900:/workspace busybox chown -R 1000:1000 /workspace + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_PR-6900:/workspace busybox chown -R 1000:1000 /workspace [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. + docker container ls -aq [Pipeline] stage [Pipeline] { (test python=py27 / docker=19.03.2 / baseImage=alpine) [Pipeline] checkout [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. using credential sf-release-bot.github.ssh [Pipeline] stage [Pipeline] { (test python=py27 / docker=18.09.9 / baseImage=alpine) Cloning the remote Git repository Cloning with configured refspecs honoured and without tags [Pipeline] checkout using credential sf-release-bot.github.ssh Cloning the remote Git repository Cloning with configured refspecs honoured and without tags [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=19.03.2 / 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_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Fetching without tags Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Fetching without tags Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) Commit message: "Include errors when raising ProjectError exception" Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) Commit message: "Include errors when raising ProjectError exception" > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 Fetching without tags Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) Commit message: "Include errors when raising ProjectError exception" [Pipeline] sh > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 + 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 [Pipeline] sh + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_PR-6900/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=19.03.2 -e BUILD_NUMBER=jenkins-compose-PR-6900-2 -e PY_TEST_VERSIONS=py27 --entrypoint=script/test/ci dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 --verbose + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh [Pipeline] sh + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_PR-6900/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=18.09.9 -e BUILD_NUMBER=jenkins-compose-PR-6900-2 -e PY_TEST_VERSIONS=py27 --entrypoint=script/test/ci dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 --verbose Unable to find image 'dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563' locally alpine-e8c0e533895a934aeba70739e8418809c8c88563: Pulling from dockerbuildbot/compose 9d48c3bd43c5: Already exists c0ea575d71b9: Pulling fs layer 0f535eceebd5: Pulling fs layer 8a30f5893bea: Pulling fs layer c1d30ace7b67: Pulling fs layer bffb13e9f813: Pulling fs layer 07ffbb0cc7df: Pulling fs layer 3d9bb4d31cc7: Pulling fs layer 87578054ac8c: Pulling fs layer 2552883b5632: Pulling fs layer ad711d9196e7: Pulling fs layer 52c39211b0bf: Pulling fs layer 7ce177dd6606: Pulling fs layer f20d2f70b424: Pulling fs layer 486598fb55f3: Pulling fs layer cf9c6a23fe3b: Pulling fs layer 42ea9b4da285: Pulling fs layer 4ce20d9247a3: Pulling fs layer 5fc24fc7f966: Pulling fs layer 4aab269fa751: Pulling fs layer 46f9aca8f121: Pulling fs layer c1d30ace7b67: Waiting bffb13e9f813: Waiting 07ffbb0cc7df: Waiting 3d9bb4d31cc7: Waiting 87578054ac8c: Waiting 2552883b5632: Waiting ad711d9196e7: Waiting 52c39211b0bf: Waiting 7ce177dd6606: Waiting f20d2f70b424: Waiting 486598fb55f3: Waiting cf9c6a23fe3b: Waiting 42ea9b4da285: Waiting 4ce20d9247a3: Waiting 5fc24fc7f966: Waiting 4aab269fa751: Waiting + docker info + awk -F : $1 == "Storage Driver" { print $2; exit } + 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.2 + DOCKER_VERSIONS=19.03.2 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=720be7067ff5 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=720be7067ff5 dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 tox -e pre-commit 8a30f5893bea: Verifying Checksum 8a30f5893bea: Download complete c0ea575d71b9: Verifying Checksum c0ea575d71b9: Download complete c1d30ace7b67: Verifying Checksum c1d30ace7b67: Download complete 07ffbb0cc7df: Verifying Checksum 07ffbb0cc7df: Download complete 0f535eceebd5: Verifying Checksum 0f535eceebd5: Download complete c0ea575d71b9: Pull complete WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh 87578054ac8c: Verifying Checksum 87578054ac8c: Download complete 3d9bb4d31cc7: Verifying Checksum 3d9bb4d31cc7: Download complete ad711d9196e7: Verifying Checksum ad711d9196e7: Download complete 2552883b5632: Verifying Checksum 2552883b5632: Download complete 52c39211b0bf: Verifying Checksum 52c39211b0bf: Download complete + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_PR-6900/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=19.03.2 -e BUILD_NUMBER=jenkins-compose-PR-6900-2 -e PY_TEST_VERSIONS=py37 --entrypoint=script/test/ci dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 --verbose f20d2f70b424: Verifying Checksum f20d2f70b424: Download complete 7ce177dd6606: Verifying Checksum 7ce177dd6606: Download complete 486598fb55f3: Verifying Checksum 486598fb55f3: Download complete cf9c6a23fe3b: Verifying Checksum cf9c6a23fe3b: Download complete 42ea9b4da285: Verifying Checksum 42ea9b4da285: Download complete 4ce20d9247a3: Verifying Checksum 4ce20d9247a3: Download complete 4aab269fa751: Verifying Checksum 4aab269fa751: Download complete bffb13e9f813: Verifying Checksum bffb13e9f813: Download complete + 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.2 + DOCKER_VERSIONS=19.03.2 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=3c9c14aad1a9 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=3c9c14aad1a9 dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 tox -e pre-commit 5fc24fc7f966: Verifying Checksum 5fc24fc7f966: Download complete 46f9aca8f121: Verifying Checksum 46f9aca8f121: Download complete 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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='3890772962' 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... 0f535eceebd5: Pull complete 8a30f5893bea: Pull complete c1d30ace7b67: Pull complete 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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='1650219511' 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... bffb13e9f813: Pull complete 07ffbb0cc7df: Pull complete 3d9bb4d31cc7: Pull complete 87578054ac8c: Pull complete 2552883b5632: Pull complete ad711d9196e7: Pull complete 52c39211b0bf: Pull complete 7ce177dd6606: Pull complete f20d2f70b424: Pull complete 486598fb55f3: Pull complete cf9c6a23fe3b: Pull complete 42ea9b4da285: Pull complete 4ce20d9247a3: Pull complete Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&!zfs’ Still waiting to schedule task Waiting for next available executor on ‘ubuntu&&!zfs’ 5fc24fc7f966: Pull complete 4aab269fa751: Pull complete 46f9aca8f121: Pull complete Digest: sha256:24373bd4530abd3f546df9bb6cf7ed90d417d8f32d05bc185b7f9dcb02ab1360 Status: Downloaded newer image for dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 + 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=e18f75162be2 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=e18f75162be2 dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='3291102946' 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... [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... 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 [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... 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 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-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 19.03.2 == '' ']' ++ '[' 19.03.2 == all ']' ++ BUILD_NUMBER=jenkins-compose-PR-6900-2 ++ PY_TEST_VERSIONS=py27 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 19.03.2' Running tests against Docker 19.03.2 ++ daemon_container=compose-dind-19.03.2-jenkins-compose-PR-6900-2 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-19.03.2-jenkins-compose-PR-6900-2 --privileged --volume=/var/lib/docker dockerswarm/dind:19.03.2 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 :) ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 19.03.2 == '' ']' ++ '[' 19.03.2 == all ']' ++ BUILD_NUMBER=jenkins-compose-PR-6900-2 ++ PY_TEST_VERSIONS=py37 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 19.03.2' Running tests against Docker 19.03.2 ++ daemon_container=compose-dind-19.03.2-jenkins-compose-PR-6900-2 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-19.03.2-jenkins-compose-PR-6900-2 --privileged --volume=/var/lib/docker dockerswarm/dind:19.03.2 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 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 4e57b2d52db1: Verifying Checksum 4e57b2d52db1: Download complete b0b8081c21b9: Pull complete ba9cff046749: Pull complete dad4b1f930b9: Pull complete 4e57b2d52db1: Pull complete 005548a7ad09: Pull complete Digest: sha256:7e0543b2f958d6f5bbc0b88127d4dc6a83b4e5f4e7a1f881b78d2abb97094362 Status: Downloaded newer image for dockerswarm/dind:19.03.2 4b8adbcda5fa0ee664d644dfad15fbb9f6e43db1b909ac3f547272c219cf8a36 ++ docker run --rm --tty --link=compose-dind-19.03.2-jenkins-compose-PR-6900-2:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=19.03.2 --entrypoint=tox dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 -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,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py27 runtests: PYTHONHASHSEED='4229883168' 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.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 Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed 4e57b2d52db1: Verifying Checksum 4e57b2d52db1: Download complete b0b8081c21b9: Pull complete ba9cff046749: Pull complete dad4b1f930b9: Pull complete 4e57b2d52db1: Pull complete 005548a7ad09: Pull complete Digest: sha256:7e0543b2f958d6f5bbc0b88127d4dc6a83b4e5f4e7a1f881b78d2abb97094362 Status: Downloaded newer image for dockerswarm/dind:19.03.2 d2a77170c64c2ee2179ea99c51bb50a93ef713abbb412a870f68c77142579c3c ++ docker run --rm --tty --link=compose-dind-19.03.2-jenkins-compose-PR-6900-2:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=19.03.2 --entrypoint=tox dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 -e py37 -- --verbose Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) py37 develop-inst-nodeps: /code ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 18.09.9 == '' ']' ++ '[' 18.09.9 == all ']' ++ BUILD_NUMBER=jenkins-compose-PR-6900-2 ++ 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-PR-6900-2 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-18.09.9-jenkins-compose-PR-6900-2 --privileged --volume=/var/lib/docker dockerswarm/dind:18.09.9 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 py37 installed: altgraph==0.16.1,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyInstaller==3.5,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py37 runtests: PYTHONHASHSEED='2135815500' 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  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 767 items  collecting 767 items  collecting 771 items  collecting 771 items  collecting 915 items  collecting 923 items  collecting 931 items  collecting 934 items  collecting 944 items  collecting 955 items  collecting 961 items  collecting 967 items  collecting 970 items  collecting 975 items  collecting 983 items  collecting 987 items  collecting 993 items  collecting 996 items  collecting 999 items  collecting 1011 items  collecting 1041 items  collecting 1044 items  collecting 1047 items  collecting 1054 items  collecting 1058 items  collecting 1060 items  collecting 1075 items  collecting 1075 items  collecting 1080 items  collecting 1080 items  collecting 1101 items  collecting 1113 items  collecting 1113 items  collecting 1113 items  collecting 1122 items  collecting 1122 items  collecting 1134 items  collecting 1134 items  collecting 1143 items  collecting 1143 items  collecting 1145 items  collected 1145 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 767 items  collecting 767 items  collecting 771 items  collecting 771 items  collecting 915 items  collecting 923 items  collecting 931 items  collecting 934 items  collecting 944 items  collecting 955 items  collecting 961 items  collecting 967 items  collecting 970 items  collecting 975 items  collecting 983 items  collecting 987 items  collecting 993 items  collecting 996 items  collecting 999 items  collecting 1011 items  collecting 1041 items  collecting 1044 items  collecting 1047 items  collecting 1054 items  collecting 1058 items  collecting 1060 items  collecting 1075 items  collecting 1075 items  collecting 1080 items  collecting 1080 items  collecting 1101 items  collecting 1113 items  collecting 1113 items  collecting 1113 items  collecting 1122 items  collecting 1122 items  collecting 1134 items  collecting 1134 items  collecting 1143 items  collecting 1143 items  collecting 1145 items  collected 1145 items  tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] 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 671785a473ae2f724ab9d814755c207f615bb204273494187d78f8e1abfa5360 ++ docker run --rm --tty --link=compose-dind-18.09.9-jenkins-compose-PR-6900-2:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=18.09.9 --entrypoint=tox dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 -e py27 -- --verbose py27 develop-inst-nodeps: /code tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] 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,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py27 runtests: PYTHONHASHSEED='229450147' 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.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 tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%]  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 767 items  collecting 767 items  collecting 771 items  collecting 771 items  collecting 915 items  collecting 923 items  collecting 931 items  collecting 934 items  collecting 944 items  collecting 955 items  collecting 961 items  collecting 967 items  collecting 970 items  collecting 975 items  collecting 983 items  collecting 987 items  collecting 993 items  collecting 996 items  collecting 999 items  collecting 1011 items  collecting 1041 items  collecting 1044 items  collecting 1047 items  collecting 1054 items  collecting 1058 items  collecting 1060 items  collecting 1075 items  collecting 1075 items  collecting 1080 items  collecting 1080 items  collecting 1101 items  collecting 1113 items  collecting 1113 items  collecting 1113 items  collecting 1122 items  collecting 1122 items  collecting 1134 items  collecting 1134 items  collecting 1143 items  collecting 1143 items  collecting 1145 items  collected 1145 items  tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] Running on ubuntu-1804-overlay2 (i-0acfe7fff180bd742) in /home/ubuntu/workspace/compose_PR-6900 [Pipeline] { [Pipeline] withDockerRegistry tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] Running on ubuntu-1804-overlay2 (i-03a15dd2166230498) in /home/ubuntu/workspace/compose_PR-6900 Running on ubuntu-1804-overlay2 (i-0b00125dff24ddcf5) in /home/ubuntu/workspace/compose_PR-6900 Running on ubuntu-1804-overlay2 (i-0349a888ee6ba59d7) in /home/ubuntu/workspace/compose_PR-6900 tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] Running on ubuntu-1804-overlay2 (i-0165bc1ea5b2d4f0b) in /home/ubuntu/workspace/compose_PR-6900 tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ 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_no_cache 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%] WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_PR-6900@tmp/f8762c3c-61dc-4d4b-8fdd-5e7b60d7a228/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] { [Pipeline] { [Pipeline] { [Pipeline] wrap [Pipeline] withDockerRegistry $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache_pull 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 PASSED [ 0%] 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_build_override_dir_invalid_path PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_PR-6900@tmp/270acb20-d6fc-40e7-89a3-1ee4b4611673/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] withDockerRegistry $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ 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_no_cache_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_PR-6900@tmp/ecce8636-2856-439d-bd45-a62432751120/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] withDockerRegistry tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] 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_build_pull PASSED [ 0%] WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_PR-6900@tmp/47869852-4ad1-4a18-bd37-a38686fa5909/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] withDockerRegistry tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] $ docker login -u dockerbuildbot -p ******** https://index.docker.io/v1/ tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] 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_build_shm_size_build_option PASSED [ 1%] WARNING! Using --password via the CLI is insecure. Use --password-stdin. WARNING! Your password will be stored unencrypted in /home/ubuntu/workspace/compose_PR-6900@tmp/ea808a28-f0a8-430b-9261-c26f98c836ac/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] wrap [Pipeline] wrap [Pipeline] wrap [Pipeline] { [Pipeline] wrap [Pipeline] { [Pipeline] { [Pipeline] { [Pipeline] { [Pipeline] wrap [Pipeline] wrap [Pipeline] wrap [Pipeline] wrap [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh [Pipeline] { [Pipeline] { [Pipeline] { [Pipeline] { [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh [Pipeline] echo cleanWorkspace: Ensuring workspace is owned by ubuntu [Pipeline] echo chowning workspace [Pipeline] sh tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] + uname -m [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 [Pipeline] sh + uname -m [Pipeline] sh [Pipeline] sh + uname -m [Pipeline] sh [Pipeline] sh + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_PR-6900:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally + uname -m tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_PR-6900:/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_PR-6900:/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_PR-6900:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally latest: Pulling from library/busybox 7c9d20b9b6cd: Pulling fs layer 7c9d20b9b6cd: Verifying Checksum 7c9d20b9b6cd: Download complete latest: Pulling from library/busybox 7c9d20b9b6cd: Pulling fs layer 7c9d20b9b6cd: Verifying Checksum 7c9d20b9b6cd: Download complete latest: Pulling from library/busybox 7c9d20b9b6cd: Pulling fs layer 7c9d20b9b6cd: Verifying Checksum 7c9d20b9b6cd: Download complete + pwd + id -u + id -g + docker run --rm -v /home/ubuntu/workspace/compose_PR-6900:/workspace busybox chown -R 1000:1000 /workspace Unable to find image 'busybox:latest' locally latest: Pulling from library/busybox 7c9d20b9b6cd: Pulling fs layer 7c9d20b9b6cd: Pull complete Digest: sha256:fe301db49df08c384001ed752dff6d52b4305a73a7f608f21528048e8a08b51e Status: Downloaded newer image for busybox:latest 7c9d20b9b6cd: Pull complete Digest: sha256:fe301db49df08c384001ed752dff6d52b4305a73a7f608f21528048e8a08b51e Status: Downloaded newer image for busybox:latest latest: Pulling from library/busybox 7c9d20b9b6cd: Pulling fs layer 7c9d20b9b6cd: Verifying Checksum 7c9d20b9b6cd: Download complete 7c9d20b9b6cd: Verifying Checksum 7c9d20b9b6cd: Download complete 7c9d20b9b6cd: Pull complete Digest: sha256:fe301db49df08c384001ed752dff6d52b4305a73a7f608f21528048e8a08b51e Status: Downloaded newer image for busybox:latest 7c9d20b9b6cd: Pull complete Digest: sha256:fe301db49df08c384001ed752dff6d52b4305a73a7f608f21528048e8a08b51e Status: Downloaded newer image for busybox:latest 7c9d20b9b6cd: Pull complete Digest: sha256:fe301db49df08c384001ed752dff6d52b4305a73a7f608f21528048e8a08b51e Status: Downloaded newer image for busybox:latest tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_from_compose_file PASSED [ 1%] [Pipeline] echo Removing all docker containers [Pipeline] sh [Pipeline] echo Removing all docker containers [Pipeline] sh tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] [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 Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo Removing all docker containers [Pipeline] sh + docker container ls -aq [Pipeline] stage [Pipeline] { (test python=py27 / docker=18.09.9 / baseImage=debian) [Pipeline] echo Docker containers have been removed [Pipeline] echo cleanWorkspace: Removing existing workspace [Pipeline] deleteDir [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] checkout [Pipeline] stage [Pipeline] { (test python=py27 / docker=19.03.2 / baseImage=debian) [Pipeline] checkout [Pipeline] echo cleanWorkspace: Workspace is clean. [Pipeline] stage [Pipeline] { (test python=py37 / docker=18.09.9 / baseImage=debian) [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.2 / baseImage=debian) [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=18.09.9 / baseImage=alpine) [Pipeline] checkout 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%] 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 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_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Cloning repository git@github.com:docker/compose.git > git init /home/ubuntu/workspace/compose_PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] Fetching without tags tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) Fetching without tags tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 Fetching without tags tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Fetching without tags Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 Fetching without tags Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] Commit message: "Include errors when raising ProjectError exception" Checking out Revision e8c0e533895a934aeba70739e8418809c8c88563 (PR-6900) tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] Commit message: "Include errors when raising ProjectError exception" Commit message: "Include errors when raising ProjectError exception" tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] 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/pull/6900/head:refs/remotes/origin/PR-6900 > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 > git config remote.origin.url git@github.com:docker/compose.git # timeout=10 > git config --add remote.origin.fetch +refs/pull/6900/head:refs/remotes/origin/PR-6900 # 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/pull/6900/head:refs/remotes/origin/PR-6900 > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 Commit message: "Include errors when raising ProjectError exception" [Pipeline] sh Commit message: "Include errors when raising ProjectError exception" > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 > git config core.sparsecheckout # timeout=10 > git checkout -f e8c0e533895a934aeba70739e8418809c8c88563 [Pipeline] sh + docker info + awk -F : $1 == "Storage Driver" { print $2; exit } 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%] [Pipeline] sh + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info [Pipeline] sh + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info [Pipeline] sh tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] + awk -F : $1 == "Storage Driver" { print $2; exit } + docker info 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_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_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_external_volume_v2_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] 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_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] 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_PR-6900/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=18.09.9 -e BUILD_NUMBER=jenkins-compose-PR-6900-2 -e PY_TEST_VERSIONS=py27 --entrypoint=script/test/ci dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 --verbose Unable to find image 'dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563' locally debian-e8c0e533895a934aeba70739e8418809c8c88563: Pulling from dockerbuildbot/compose 8f91359f1fff: Pulling fs layer 502ac059b4cd: Pulling fs layer cfd307573f01: Pulling fs layer 65beb65381ee: Pulling fs layer 4c21f9ed2a53: Pulling fs layer d8db9ad664ec: Pulling fs layer 5be29195f66c: Pulling fs layer b70c761d157a: Pulling fs layer 6f6bb2c2369b: Pulling fs layer 5c9c247fe36a: Pulling fs layer 85f8ba9c2219: Pulling fs layer ade1c1463156: Pulling fs layer 52929803756b: Pulling fs layer 33a58cfcf024: Pulling fs layer 01fe1abbddf5: Pulling fs layer 9aa0378f0fe6: Pulling fs layer befa1d3cdd1d: Pulling fs layer 2f221a196320: Pulling fs layer 098fb18652c1: Pulling fs layer 72d21b90ec87: Pulling fs layer 117a986850db: Pulling fs layer b70c761d157a: Waiting 6f6bb2c2369b: Waiting 5c9c247fe36a: Waiting 85f8ba9c2219: Waiting ade1c1463156: Waiting 52929803756b: Waiting 33a58cfcf024: Waiting 01fe1abbddf5: Waiting 9aa0378f0fe6: Waiting befa1d3cdd1d: Waiting 2f221a196320: Waiting 098fb18652c1: Waiting 72d21b90ec87: Waiting 117a986850db: Waiting d8db9ad664ec: Waiting 5be29195f66c: Waiting 65beb65381ee: Waiting 4c21f9ed2a53: Waiting tests/acceptance/cli_test.py::CLITestCase::test_bundle_with_digests PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] 502ac059b4cd: Verifying Checksum 502ac059b4cd: Download complete + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_PR-6900/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=19.03.2 -e BUILD_NUMBER=jenkins-compose-PR-6900-2 -e PY_TEST_VERSIONS=py27 --entrypoint=script/test/ci dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 --verbose Unable to find image 'dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563' locally debian-e8c0e533895a934aeba70739e8418809c8c88563: Pulling from dockerbuildbot/compose 8f91359f1fff: Pulling fs layer 502ac059b4cd: Pulling fs layer cfd307573f01: Pulling fs layer 65beb65381ee: Pulling fs layer 4c21f9ed2a53: Pulling fs layer d8db9ad664ec: Pulling fs layer 5be29195f66c: Pulling fs layer b70c761d157a: Pulling fs layer 6f6bb2c2369b: Pulling fs layer 5c9c247fe36a: Pulling fs layer 85f8ba9c2219: Pulling fs layer ade1c1463156: Pulling fs layer 52929803756b: Pulling fs layer 33a58cfcf024: Pulling fs layer 01fe1abbddf5: Pulling fs layer 9aa0378f0fe6: Pulling fs layer befa1d3cdd1d: Pulling fs layer 2f221a196320: Pulling fs layer 098fb18652c1: Pulling fs layer 72d21b90ec87: Pulling fs layer 117a986850db: Pulling fs layer 6f6bb2c2369b: Waiting 5c9c247fe36a: Waiting 85f8ba9c2219: Waiting ade1c1463156: Waiting 52929803756b: Waiting 33a58cfcf024: Waiting 01fe1abbddf5: Waiting 9aa0378f0fe6: Waiting befa1d3cdd1d: Waiting 2f221a196320: Waiting 098fb18652c1: Waiting 72d21b90ec87: Waiting 117a986850db: Waiting 4c21f9ed2a53: Waiting d8db9ad664ec: Waiting 5be29195f66c: Waiting 65beb65381ee: Waiting b70c761d157a: Waiting tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh 8f91359f1fff: Verifying Checksum 8f91359f1fff: Download complete 65beb65381ee: Verifying Checksum 65beb65381ee: Download complete 4c21f9ed2a53: Verifying Checksum 4c21f9ed2a53: Download complete 5be29195f66c: Verifying Checksum 5be29195f66c: Download complete cfd307573f01: Verifying Checksum cfd307573f01: Download complete 502ac059b4cd: Verifying Checksum 502ac059b4cd: Download complete + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_PR-6900/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=18.09.9 -e BUILD_NUMBER=jenkins-compose-PR-6900-2 -e PY_TEST_VERSIONS=py37 --entrypoint=script/test/ci dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 --verbose Unable to find image 'dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563' locally alpine-e8c0e533895a934aeba70739e8418809c8c88563: Pulling from dockerbuildbot/compose 9d48c3bd43c5: Pulling fs layer c0ea575d71b9: Pulling fs layer 0f535eceebd5: Pulling fs layer 8a30f5893bea: Pulling fs layer c1d30ace7b67: Pulling fs layer bffb13e9f813: Pulling fs layer 07ffbb0cc7df: Pulling fs layer 3d9bb4d31cc7: Pulling fs layer 87578054ac8c: Pulling fs layer 2552883b5632: Pulling fs layer ad711d9196e7: Pulling fs layer 52c39211b0bf: Pulling fs layer 7ce177dd6606: Pulling fs layer f20d2f70b424: Pulling fs layer 486598fb55f3: Pulling fs layer cf9c6a23fe3b: Pulling fs layer 42ea9b4da285: Pulling fs layer 4ce20d9247a3: Pulling fs layer 5fc24fc7f966: Pulling fs layer 4aab269fa751: Pulling fs layer 46f9aca8f121: Pulling fs layer 52c39211b0bf: Waiting 7ce177dd6606: Waiting f20d2f70b424: Waiting 486598fb55f3: Waiting cf9c6a23fe3b: Waiting 42ea9b4da285: Waiting 4ce20d9247a3: Waiting 5fc24fc7f966: Waiting 4aab269fa751: Waiting 46f9aca8f121: Waiting 8a30f5893bea: Waiting 07ffbb0cc7df: Waiting 3d9bb4d31cc7: Waiting 87578054ac8c: Waiting 2552883b5632: Waiting ad711d9196e7: Waiting c1d30ace7b67: Waiting bffb13e9f813: Waiting WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh 6f6bb2c2369b: Verifying Checksum 6f6bb2c2369b: Download complete 65beb65381ee: Verifying Checksum 65beb65381ee: Download complete cfd307573f01: Verifying Checksum cfd307573f01: Download complete 8f91359f1fff: Verifying Checksum 8f91359f1fff: Download complete 5be29195f66c: Verifying Checksum 5be29195f66c: Download complete 4c21f9ed2a53: Verifying Checksum 4c21f9ed2a53: Download complete 6f6bb2c2369b: Verifying Checksum 6f6bb2c2369b: Download complete tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] 9d48c3bd43c5: Verifying Checksum 9d48c3bd43c5: Download complete c0ea575d71b9: Verifying Checksum c0ea575d71b9: Download complete c1d30ace7b67: Verifying Checksum c1d30ace7b67: Download complete 8a30f5893bea: Verifying Checksum 8a30f5893bea: Download complete 07ffbb0cc7df: Verifying Checksum 07ffbb0cc7df: Download complete + pwd + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_PR-6900/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=18.09.9 -e BUILD_NUMBER=jenkins-compose-PR-6900-2 -e PY_TEST_VERSIONS=py37 --entrypoint=script/test/ci dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 --verbose Unable to find image 'dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563' locally b70c761d157a: Verifying Checksum b70c761d157a: Download complete 5c9c247fe36a: Verifying Checksum 5c9c247fe36a: Download complete 5c9c247fe36a: Verifying Checksum 5c9c247fe36a: Download complete b70c761d157a: Verifying Checksum b70c761d157a: Download complete tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode PASSED [ 1%] 0f535eceebd5: Verifying Checksum 0f535eceebd5: Download complete 9d48c3bd43c5: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] debian-e8c0e533895a934aeba70739e8418809c8c88563: Pulling from dockerbuildbot/compose 8f91359f1fff: Pulling fs layer 502ac059b4cd: Pulling fs layer cfd307573f01: Pulling fs layer 65beb65381ee: Pulling fs layer 4c21f9ed2a53: Pulling fs layer d8db9ad664ec: Pulling fs layer 5be29195f66c: Pulling fs layer b70c761d157a: Pulling fs layer 6f6bb2c2369b: Pulling fs layer 5c9c247fe36a: Pulling fs layer 85f8ba9c2219: Pulling fs layer ade1c1463156: Pulling fs layer 52929803756b: Pulling fs layer 33a58cfcf024: Pulling fs layer 01fe1abbddf5: Pulling fs layer 9aa0378f0fe6: Pulling fs layer befa1d3cdd1d: Pulling fs layer 2f221a196320: Pulling fs layer 098fb18652c1: Pulling fs layer 72d21b90ec87: Pulling fs layer 117a986850db: Pulling fs layer ade1c1463156: Waiting 52929803756b: Waiting 33a58cfcf024: Waiting 01fe1abbddf5: Waiting 9aa0378f0fe6: Waiting befa1d3cdd1d: Waiting 2f221a196320: Waiting 098fb18652c1: Waiting 72d21b90ec87: Waiting 117a986850db: Waiting 5be29195f66c: Waiting 65beb65381ee: Waiting 4c21f9ed2a53: Waiting d8db9ad664ec: Waiting b70c761d157a: Waiting 6f6bb2c2369b: Waiting 5c9c247fe36a: Waiting 85f8ba9c2219: Waiting 502ac059b4cd: Verifying Checksum 502ac059b4cd: Download complete ade1c1463156: Verifying Checksum 85f8ba9c2219: Verifying Checksum ade1c1463156: Download complete 85f8ba9c2219: Download complete 52929803756b: Verifying Checksum 52929803756b: Download complete 33a58cfcf024: Verifying Checksum 33a58cfcf024: Download complete ade1c1463156: Verifying Checksum ade1c1463156: Download complete 33a58cfcf024: Verifying Checksum 33a58cfcf024: Download complete 52929803756b: Verifying Checksum 52929803756b: Download complete 3d9bb4d31cc7: Verifying Checksum 3d9bb4d31cc7: Download complete 87578054ac8c: Verifying Checksum 87578054ac8c: Download complete c0ea575d71b9: Pull complete ad711d9196e7: Verifying Checksum ad711d9196e7: Download complete 65beb65381ee: Verifying Checksum 65beb65381ee: Download complete cfd307573f01: Verifying Checksum cfd307573f01: Download complete 8f91359f1fff: Verifying Checksum 8f91359f1fff: Download complete 4c21f9ed2a53: Download complete 5be29195f66c: Verifying Checksum 5be29195f66c: Download complete 6f6bb2c2369b: Verifying Checksum 6f6bb2c2369b: Download complete 01fe1abbddf5: Verifying Checksum 01fe1abbddf5: Download complete 85f8ba9c2219: Verifying Checksum 85f8ba9c2219: Download complete 9aa0378f0fe6: Verifying Checksum 9aa0378f0fe6: Download complete befa1d3cdd1d: Verifying Checksum befa1d3cdd1d: Download complete 2f221a196320: Verifying Checksum 2f221a196320: Download complete 01fe1abbddf5: Verifying Checksum 01fe1abbddf5: Download complete 9aa0378f0fe6: Verifying Checksum 9aa0378f0fe6: Download complete befa1d3cdd1d: Verifying Checksum befa1d3cdd1d: Download complete 2f221a196320: Verifying Checksum 2f221a196320: Download complete 2552883b5632: Verifying Checksum 2552883b5632: Download complete 52c39211b0bf: Verifying Checksum 52c39211b0bf: Download complete 7ce177dd6606: Verifying Checksum 7ce177dd6606: Download complete b70c761d157a: Verifying Checksum b70c761d157a: Download complete 5c9c247fe36a: Verifying Checksum 5c9c247fe36a: Download complete tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] WARNING: No swap limit support [Pipeline] echo Using local system's storage driver: [Pipeline] sh 72d21b90ec87: Verifying Checksum 72d21b90ec87: Download complete 72d21b90ec87: Verifying Checksum 72d21b90ec87: Download complete f20d2f70b424: Verifying Checksum f20d2f70b424: Download complete 486598fb55f3: Verifying Checksum 486598fb55f3: Download complete cf9c6a23fe3b: Verifying Checksum cf9c6a23fe3b: Download complete 42ea9b4da285: Verifying Checksum 42ea9b4da285: Download complete 4ce20d9247a3: Verifying Checksum 4ce20d9247a3: Download complete ade1c1463156: Verifying Checksum ade1c1463156: Download complete 85f8ba9c2219: Verifying Checksum 85f8ba9c2219: Download complete 52929803756b: Verifying Checksum 52929803756b: Download complete 33a58cfcf024: Verifying Checksum 33a58cfcf024: Download complete tests/acceptance/cli_test.py::CLITestCase::test_config_default PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] + pwd bffb13e9f813: Verifying Checksum + docker run -t --rm --privileged --volume=/home/ubuntu/workspace/compose_PR-6900/.git:/code/.git --volume=/var/run/docker.sock:/var/run/docker.sock -e TAG=dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 -e STORAGE_DRIVER= -e DOCKER_VERSIONS=19.03.2 -e BUILD_NUMBER=jenkins-compose-PR-6900-2 -e PY_TEST_VERSIONS=py37 --entrypoint=script/test/ci dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 --verbose Unable to find image 'dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563' locally bffb13e9f813: Download complete 4aab269fa751: Verifying Checksum 4aab269fa751: Download complete 01fe1abbddf5: Verifying Checksum 01fe1abbddf5: Download complete 9aa0378f0fe6: Verifying Checksum 9aa0378f0fe6: Download complete befa1d3cdd1d: Verifying Checksum befa1d3cdd1d: Download complete 2f221a196320: Verifying Checksum 2f221a196320: Download complete debian-e8c0e533895a934aeba70739e8418809c8c88563: Pulling from dockerbuildbot/compose 8f91359f1fff: Pulling fs layer 502ac059b4cd: Pulling fs layer cfd307573f01: Pulling fs layer 65beb65381ee: Pulling fs layer 4c21f9ed2a53: Pulling fs layer d8db9ad664ec: Pulling fs layer 5be29195f66c: Pulling fs layer b70c761d157a: Pulling fs layer 6f6bb2c2369b: Pulling fs layer 5c9c247fe36a: Pulling fs layer 85f8ba9c2219: Pulling fs layer ade1c1463156: Pulling fs layer 52929803756b: Pulling fs layer 33a58cfcf024: Pulling fs layer 01fe1abbddf5: Pulling fs layer 9aa0378f0fe6: Pulling fs layer befa1d3cdd1d: Pulling fs layer 2f221a196320: Pulling fs layer 098fb18652c1: Pulling fs layer 72d21b90ec87: Pulling fs layer 117a986850db: Pulling fs layer 65beb65381ee: Waiting 4c21f9ed2a53: Waiting d8db9ad664ec: Waiting 5be29195f66c: Waiting b70c761d157a: Waiting 6f6bb2c2369b: Waiting 5c9c247fe36a: Waiting 85f8ba9c2219: Waiting ade1c1463156: Waiting 52929803756b: Waiting 33a58cfcf024: Waiting 01fe1abbddf5: Waiting 9aa0378f0fe6: Waiting befa1d3cdd1d: Waiting 2f221a196320: Waiting 098fb18652c1: Waiting 72d21b90ec87: Waiting 117a986850db: Waiting 502ac059b4cd: Verifying Checksum 502ac059b4cd: Download complete 72d21b90ec87: Verifying Checksum 72d21b90ec87: Download complete 65beb65381ee: Verifying Checksum 65beb65381ee: Download complete 8f91359f1fff: Verifying Checksum 8f91359f1fff: Download complete cfd307573f01: Verifying Checksum cfd307573f01: Download complete 4c21f9ed2a53: Verifying Checksum 4c21f9ed2a53: Download complete 5be29195f66c: Verifying Checksum 5be29195f66c: Download complete tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] 5fc24fc7f966: Verifying Checksum 5fc24fc7f966: Download complete 46f9aca8f121: Verifying Checksum 46f9aca8f121: Download complete 098fb18652c1: Verifying Checksum 098fb18652c1: Download complete d8db9ad664ec: Verifying Checksum d8db9ad664ec: Download complete 117a986850db: Verifying Checksum 117a986850db: Download complete d8db9ad664ec: Verifying Checksum d8db9ad664ec: Download complete 098fb18652c1: Verifying Checksum 098fb18652c1: Download complete 6f6bb2c2369b: Verifying Checksum 6f6bb2c2369b: Download complete b70c761d157a: Verifying Checksum b70c761d157a: Download complete tests/acceptance/cli_test.py::CLITestCase::test_config_external_network PASSED [ 1%] 117a986850db: Verifying Checksum 117a986850db: Download complete 5c9c247fe36a: Verifying Checksum 5c9c247fe36a: Download complete 85f8ba9c2219: Verifying Checksum 85f8ba9c2219: Download complete ade1c1463156: Verifying Checksum ade1c1463156: Download complete 52929803756b: Verifying Checksum 52929803756b: Download complete 33a58cfcf024: Verifying Checksum 33a58cfcf024: Download complete 01fe1abbddf5: Verifying Checksum 01fe1abbddf5: Download complete 8f91359f1fff: Pull complete 8f91359f1fff: Pull complete 502ac059b4cd: Pull complete 9aa0378f0fe6: Verifying Checksum 9aa0378f0fe6: Download complete befa1d3cdd1d: Verifying Checksum befa1d3cdd1d: Download complete 2f221a196320: Verifying Checksum 2f221a196320: Download complete d8db9ad664ec: Verifying Checksum d8db9ad664ec: Download complete 502ac059b4cd: Pull complete 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 [ 2%] 72d21b90ec87: Verifying Checksum 72d21b90ec87: Download complete 098fb18652c1: Verifying Checksum 098fb18652c1: Download complete 117a986850db: Verifying Checksum 117a986850db: Download complete tests/acceptance/cli_test.py::CLITestCase::test_config_external_network_v3_5 PASSED [ 1%] 0f535eceebd5: Pull complete 8a30f5893bea: Pull complete 8f91359f1fff: Pull complete c1d30ace7b67: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] 502ac059b4cd: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] 098fb18652c1: Verifying Checksum 098fb18652c1: Download complete cfd307573f01: Pull complete 65beb65381ee: Pull complete 4c21f9ed2a53: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2 PASSED [ 1%] d8db9ad664ec: Verifying Checksum d8db9ad664ec: Download complete 117a986850db: Verifying Checksum 117a986850db: Download complete cfd307573f01: Pull complete 65beb65381ee: Pull complete 4c21f9ed2a53: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] 8f91359f1fff: Pull complete cfd307573f01: Pull complete 65beb65381ee: Pull complete 502ac059b4cd: Pull complete 4c21f9ed2a53: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_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 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] cfd307573f01: Pull complete 65beb65381ee: Pull complete 4c21f9ed2a53: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 2%] bffb13e9f813: Pull complete 07ffbb0cc7df: Pull complete 3d9bb4d31cc7: Pull complete 87578054ac8c: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] 2552883b5632: Pull complete d8db9ad664ec: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] ad711d9196e7: Pull complete 52c39211b0bf: Pull complete 5be29195f66c: Pull complete 7ce177dd6606: Pull complete f20d2f70b424: Pull complete 486598fb55f3: Pull complete d8db9ad664ec: Pull complete 5be29195f66c: Pull complete b70c761d157a: Pull complete 6f6bb2c2369b: Pull complete cf9c6a23fe3b: Pull complete 42ea9b4da285: Pull complete d8db9ad664ec: Pull complete b70c761d157a: Pull complete 6f6bb2c2369b: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_list_volumes PASSED [ 2%] 5c9c247fe36a: Pull complete 4ce20d9247a3: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] 5c9c247fe36a: Pull complete 5be29195f66c: Pull complete 85f8ba9c2219: Pull complete ade1c1463156: Pull complete 85f8ba9c2219: Pull complete ade1c1463156: Pull complete 52929803756b: Pull complete 33a58cfcf024: Pull complete 01fe1abbddf5: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate_and_no_recreate PASSED [ 3%] 52929803756b: Pull complete 33a58cfcf024: Pull complete 01fe1abbddf5: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_with_hash_option PASSED [ 3%] b70c761d157a: Pull complete 6f6bb2c2369b: Pull complete 9aa0378f0fe6: Pull complete befa1d3cdd1d: Pull complete 9aa0378f0fe6: Pull complete befa1d3cdd1d: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] 5c9c247fe36a: Pull complete 2f221a196320: Pull complete 2f221a196320: Pull complete d8db9ad664ec: Pull complete 85f8ba9c2219: Pull complete ade1c1463156: Pull complete 52929803756b: Pull complete 5be29195f66c: Pull complete 33a58cfcf024: Pull complete 01fe1abbddf5: Pull complete 9aa0378f0fe6: Pull complete befa1d3cdd1d: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_quiet_with_error PASSED [ 2%] 2f221a196320: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] b70c761d157a: Pull complete 6f6bb2c2369b: Pull complete 5c9c247fe36a: Pull complete 85f8ba9c2219: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] ade1c1463156: Pull complete 52929803756b: Pull complete 5fc24fc7f966: Pull complete 4aab269fa751: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] 33a58cfcf024: Pull complete 01fe1abbddf5: Pull complete 9aa0378f0fe6: Pull complete befa1d3cdd1d: Pull complete 2f221a196320: Pull complete 46f9aca8f121: Pull complete Digest: sha256:24373bd4530abd3f546df9bb6cf7ed90d417d8f32d05bc185b7f9dcb02ab1360 Status: Downloaded newer image for dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 098fb18652c1: Pull complete 72d21b90ec87: Pull complete 098fb18652c1: Pull complete 72d21b90ec87: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] 117a986850db: Pull complete 117a986850db: Pull complete Digest: sha256:b369798af341dad2e7e5d4464e613ed2eefd8e6f925f5056f7798229d5f281f6 Status: Downloaded newer image for dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 Digest: sha256:b369798af341dad2e7e5d4464e613ed2eefd8e6f925f5056f7798229d5f281f6 Status: Downloaded newer image for dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 098fb18652c1: Pull complete 72d21b90ec87: Pull complete 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%] 117a986850db: Pull complete Digest: sha256:b369798af341dad2e7e5d4464e613ed2eefd8e6f925f5056f7798229d5f281f6 Status: Downloaded newer image for dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 098fb18652c1: Pull complete 72d21b90ec87: Pull complete tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] 117a986850db: Pull complete Digest: sha256:b369798af341dad2e7e5d4464e613ed2eefd8e6f925f5056f7798229d5f281f6 Status: Downloaded newer image for dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 2%] + 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.2 + DOCKER_VERSIONS=19.03.2 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=7d175bb28604 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=7d175bb28604 dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 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=1c544b4b637d + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=1c544b4b637d dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 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=3add02ca065d + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=3add02ca065d dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 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=7bacb471cdf1 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=7bacb471cdf1 dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 tox -e pre-commit tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] 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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='400589122' pre-commit runtests: commands[0] | pre-commit install + 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.2 + DOCKER_VERSIONS=19.03.2 + STORAGE_DRIVER=overlay + export DOCKER_DAEMON_ARGS=--storage-driver=overlay + DOCKER_DAEMON_ARGS=--storage-driver=overlay ++ hostname + GIT_VOLUME=--volumes-from=146d17eb6a89 + . script/test/all ++ set -e ++ echo 'Running lint checks' Running lint checks ++ docker run --rm --tty --volumes-from=146d17eb6a89 dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 tox -e pre-commit 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. 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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='2292686953' 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. 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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='833093446' 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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='2324250643' 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... [INFO] Initializing environment for git://github.com/asottile/reorder_python_imports. 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 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] 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. [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_config_with_hash_option PASSED [ 3%] [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.18.3,PyYAML==5.1.2,six==1.12.0,toml==0.10.0,virtualenv==16.7.5,zipp==0.6.0 pre-commit runtests: PYTHONHASHSEED='2678217788' 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_create PASSED [ 3%] [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_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_create_with_no_recreate 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%] [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_down_signal 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_down PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_invalid_rmi_flag PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] 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 [ 3%] Check for added large files..............................................Passed 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_events_json PASSED [ 4%] Check for added large files..............................................Passed Check for added large files..............................................Passed Check docstring is first.................................................Passed Check for merge conflicts................................................Passed Check docstring is first.................................................Passed Check for merge conflicts................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] Check docstring is first.................................................Passed Check for merge conflicts................................................Passed Debug Statements (Python)................................................Passed Check for added large files..............................................Passed Debug Statements (Python)................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed Fix End of Files.........................................................Passed Debug Statements (Python)................................................Passed Fix End of Files.........................................................Passed 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 Fix End of Files.........................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] Check docstring is first.................................................Passed Check for merge conflicts................................................Passed Check Yaml...............................................................Passed Check JSON...............................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user PASSED [ 4%] Debug Statements (Python)................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] Fix End of Files.........................................................Passed 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_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden 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%] Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed 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 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 :) Trim Trailing Whitespace.................................................Passed tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 19.03.2 == '' ']' ++ '[' 19.03.2 == all ']' ++ BUILD_NUMBER=jenkins-compose-PR-6900-2 ++ PY_TEST_VERSIONS=py27 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 19.03.2' Running tests against Docker 19.03.2 ++ daemon_container=compose-dind-19.03.2-jenkins-compose-PR-6900-2 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-19.03.2-jenkins-compose-PR-6900-2 --privileged --volume=/var/lib/docker dockerswarm/dind:19.03.2 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 18.09.9 == '' ']' ++ '[' 18.09.9 == all ']' ++ BUILD_NUMBER=jenkins-compose-PR-6900-2 ++ 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-PR-6900-2 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-18.09.9-jenkins-compose-PR-6900-2 --privileged --volume=/var/lib/docker dockerswarm/dind:18.09.9 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 18.09.9 == '' ']' ++ '[' 18.09.9 == all ']' ++ BUILD_NUMBER=jenkins-compose-PR-6900-2 ++ 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-PR-6900-2 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ tail ++ -n docker 10 run -d --name compose-dind-18.09.9-jenkins-compose-PR-6900-2 --privileged --volume=/var/lib/docker dockerswarm/dind:18.09.9 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] Flake8...................................................................Passed Tests should end in _test.py.............................................Passed Fix requirements.txt.....................................................Passed Trim Trailing Whitespace.................................................Passed ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 18.09.9 == '' ']' ++ '[' 18.09.9 == all ']' ++ BUILD_NUMBER=jenkins-compose-PR-6900-2 ++ 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-PR-6900-2 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-18.09.9-jenkins-compose-PR-6900-2 --privileged --volume=/var/lib/docker dockerswarm/dind:18.09.9 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 Reorder python imports...................................................Passed ___________________________________ summary ____________________________________  pre-commit: commands succeeded  congratulations :) ++ get_versions='docker run --rm --entrypoint=/code/.tox/py27/bin/python dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 /code/script/test/versions.py docker/docker-ce,moby/moby' ++ '[' 19.03.2 == '' ']' ++ '[' 19.03.2 == all ']' ++ BUILD_NUMBER=jenkins-compose-PR-6900-2 ++ PY_TEST_VERSIONS=py37 ++ for version in $DOCKER_VERSIONS ++ echo 'Running tests against Docker 19.03.2' Running tests against Docker 19.03.2 ++ daemon_container=compose-dind-19.03.2-jenkins-compose-PR-6900-2 ++ trap on_exit EXIT ++ repo=dockerswarm/dind ++ docker run -d --name compose-dind-19.03.2-jenkins-compose-PR-6900-2 --privileged --volume=/var/lib/docker dockerswarm/dind:19.03.2 dockerd -H tcp://0.0.0.0:2375 --storage-driver=overlay ++ tail -n 10 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_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_detach_long_form PASSED [ 4%] 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%] 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 8a7595fdf80aa3eb0dc9cbedff27a63779c5b687c3f5e8d4873d2916e2d927ab ++ docker run --rm --tty --link=compose-dind-18.09.9-jenkins-compose-PR-6900-2:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=18.09.9 --entrypoint=tox dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 -e py37 -- --verbose py37 develop-inst-nodeps: /code tests/acceptance/cli_test.py::CLITestCase::test_exec_without_tty PASSED [ 4%] b0b8081c21b9: Verifying Checksum b0b8081c21b9: Download complete b0b8081c21b9: Pull complete ba9cff046749: Pull complete dad4b1f930b9: Pull complete 4e57b2d52db1: Pull complete 005548a7ad09: Pull complete Digest: sha256:7e0543b2f958d6f5bbc0b88127d4dc6a83b4e5f4e7a1f881b78d2abb97094362 Status: Downloaded newer image for dockerswarm/dind:19.03.2 9748363222a117c32d216cfa2b9356f3145eb3665e68db72033cfcb9d60eb0ab ++ docker run --rm --tty --link=compose-dind-19.03.2-jenkins-compose-PR-6900-2:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=19.03.2 --entrypoint=tox dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 -e py27 -- --verbose py27 develop-inst-nodeps: /code 005548a7ad09: Download complete 4e57b2d52db1: Verifying Checksum b0b8081c21b9: Pull complete ba9cff046749: Pull complete dad4b1f930b9: Pull complete 4e57b2d52db1: Pull complete 005548a7ad09: Pull complete Digest: sha256:7e0543b2f958d6f5bbc0b88127d4dc6a83b4e5f4e7a1f881b78d2abb97094362 Status: Downloaded newer image for dockerswarm/dind:19.03.2 b9eacbf514acbb10b58ace4b53becc69a75beb3779f89edcdd521cd3e6113665 ++ docker run --rm --tty --link=compose-dind-19.03.2-jenkins-compose-PR-6900-2:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=19.03.2 --entrypoint=tox dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 -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 2c020daada14dad65d113f73c9e2718daf023c6390a99d92fc05ea4d3ac5d1fe ++ docker run --rm --tty --link=compose-dind-18.09.9-jenkins-compose-PR-6900-2:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=18.09.9 --entrypoint=tox dockerbuildbot/compose:alpine-e8c0e533895a934aeba70739e8418809c8c88563 -e py37 -- --verbose py37 develop-inst-nodeps: /code py37 installed: altgraph==0.16.1,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyInstaller==3.5,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py37 runtests: PYTHONHASHSEED='1860775964' 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 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 7e429ba6c37ef54d350c9d7bfa08ba9499d95917afe370a7ae0713934f31e21f ++ docker run --rm --tty --link=compose-dind-18.09.9-jenkins-compose-PR-6900-2:docker --env=DOCKER_HOST=tcp://docker:2375 --env=DOCKER_VERSION=18.09.9 --entrypoint=tox dockerbuildbot/compose:debian-e8c0e533895a934aeba70739e8418809c8c88563 -e py27 -- --verbose py27 develop-inst-nodeps: /code ============================= 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,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py27 runtests: PYTHONHASHSEED='593080288' 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 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,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,backports.ssl-match-hostname==3.5.0.1,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,configparser==4.0.2,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py27 runtests: PYTHONHASHSEED='1385056882' 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 py37 develop-inst-nodeps: /code py37 installed: altgraph==0.16.1,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyInstaller==3.5,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py37 runtests: PYTHONHASHSEED='4151112312' 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 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 tests/acceptance/cli_test.py::CLITestCase::test_exec_workdir PASSED [ 4%] py37 installed: altgraph==0.16.1,asn1crypto==0.24.0,atomicwrites==1.3.0,attrs==19.1.0,bcrypt==3.1.7,cached-property==1.3.0,certifi==2017.4.17,cffi==1.12.3,chardet==3.0.4,coverage==4.4.2,cryptography==2.7,ddt==1.2.0,docker==4.0.1,# Editable install with no version control (docker-compose==1.25.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.4.2,pluggy==0.6.0,py==1.8.0,pyasn1==0.4.7,pycodestyle==2.3.1,pycparser==2.19,pyflakes==1.6.0,PyInstaller==3.5,PyNaCl==1.3.0,pyrsistent==0.15.4,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.3,websocket-client==0.32.0 py37 runtests: PYTHONHASHSEED='1347129538' 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  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 767 items  collecting 767 items  collecting 771 items  collecting 771 items  collecting 915 items  collecting 923 items  collecting 931 items  collecting 934 items  collecting 944 items  collecting 955 items  collecting 961 items  collecting 967 items  collecting 970 items  collecting 975 items  collecting 983 items  collecting 987 items  collecting 993 items  collecting 996 items  collecting 999 items  collecting 1011 items  collecting 1041 items  collecting 1044 items  collecting 1047 items  collecting 1054 items  collecting 1058 items  collecting 1060 items  collecting 1075 items  collecting 1075 items  collecting 1080 items  collecting 1080 items  collecting 1101 items  collecting 1113 items  collecting 1113 items  collecting 1113 items  collecting 1122 items  collecting 1122 items  collecting 1134 items  collecting 1134 items  collecting 1143 items  collecting 1143 items  collecting 1145 items  collected 1145 items  tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop 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 767 items  collecting 767 items  collecting 771 items  collecting 771 items  collecting 915 items  collecting 923 items  collecting 931 items  collecting 934 items  collecting 944 items  collecting 955 items  collecting 961 items  collecting 967 items  collecting 970 items  collecting 975 items  collecting 983 items  collecting 987 items  collecting 993 items  collecting 996 items  collecting 999 items  collecting 1011 items  collecting 1041 items  collecting 1044 items  collecting 1047 items  collecting 1054 items  collecting 1058 items  collecting 1060 items  collecting 1075 items  collecting 1075 items  collecting 1080 items  collecting 1080 items  collecting 1101 items  collecting 1113 items  collecting 1113 items  collecting 1113 items  collecting 1122 items  collecting 1122 items  collecting 1134 items  collecting 1134 items  collecting 1143 items  collecting 1143 items  collecting 1145 items  collected 1145 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 767 items  collecting 767 items  collecting 771 items  collecting 771 items  collecting 915 items  collecting 923 items  collecting 931 items  collecting 934 items  collecting 944 items  collecting 955 items  collecting 961 items  collecting 967 items  collecting 970 items  collecting 975 items  collecting 983 items  collecting 987 items  collecting 993 items  collecting 996 items  collecting 999 items  collecting 1011 items  collecting 1041 items  collecting 1044 items  collecting 1047 items  collecting 1054 items  collecting 1058 items  collecting 1060 items  collecting 1075 items  collecting 1075 items  collecting 1080 items  collecting 1080 items  collecting 1101 items  collecting 1113 items  collecting 1113 items  collecting 1113 items  collecting 1122 items  collecting 1122 items  collecting 1134 items  collecting 1134 items  collecting 1143 items  collecting 1143 items  collecting 1145 items  collected 1145 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 767 items  collecting 767 items  collecting 771 items  collecting 771 items  collecting 915 items  collecting 923 items  collecting 931 items  collecting 934 items  collecting 944 items  collecting 955 items  collecting 961 items  collecting 967 items  collecting 970 items  collecting 975 items  collecting 983 items  collecting 987 items  collecting 993 items  collecting 996 items  collecting 999 items  collecting 1011 items  collecting 1041 items  collecting 1044 items  collecting 1047 items  collecting 1054 items  collecting 1058 items  collecting 1060 items  collecting 1075 items  collecting 1075 items  collecting 1080 items  collecting 1080 items  collecting 1101 items  collecting 1113 items  collecting 1113 items  collecting 1113 items  collecting 1122 items  collecting 1122 items  collecting 1134 items  collecting 1134 items  collecting 1143 items  collecting 1143 items  collecting 1145 items  collected 1145 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 767 items  collecting 767 items  collecting 771 items  collecting 771 items  collecting 915 items  collecting 923 items  collecting 931 items  collecting 934 items  collecting 944 items  collecting 955 items  collecting 961 items  collecting 967 items  collecting 970 items  collecting 975 items  collecting 983 items  collecting 987 items  collecting 993 items  collecting 996 items  collecting 999 items  collecting 1011 items  collecting 1041 items  collecting 1044 items  collecting 1047 items  collecting 1054 items  collecting 1058 items  collecting 1060 items  collecting 1075 items  collecting 1075 items  collecting 1080 items  collecting 1080 items  collecting 1101 items  collecting 1113 items  collecting 1113 items  collecting 1113 items  collecting 1122 items  collecting 1122 items  collecting 1134 items  collecting 1134 items  collecting 1143 items  collecting 1143 items  collecting 1145 items  collected 1145 items  tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port 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 PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port 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_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_build_failed_forcerm PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port 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_build_log_level PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent 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_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_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_log_level 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_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_memory_build_option PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable 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_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] 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_build_no_cache PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_no_cache PASSED [ 0%] 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 PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image 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 [ 4%] 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_home_and_env_var_in_volume_path 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_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] 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_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] 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_override_dir_invalid_path PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_override_dir_invalid_path PASSED [ 0%] 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_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] 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_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_parallel PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_plain PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_pull PASSED [ 0%] tests/acceptance/cli_test.py::CLITestCase::test_build_rm XPASS [ 1%] 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_build_rm XPASS [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 5%] 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_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_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_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_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_shm_size_build_option PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 1%] 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_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_cli_override PASSED [ 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_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_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_with_buildarg_from_compose_file PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] 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_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_logs_on_stopped_containers_exits PASSED [ 6%] 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_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_build_with_buildarg_old_api_version PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_config_compatibility_mode 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_logs_tail PASSED [ 6%] 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_config_default PASSED [ 1%] 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_old_api_version PASSED [ 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_config_external_network 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_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_network 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_v3_5 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_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_network_v3_5 PASSED [ 1%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] 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_pause_no_containers PASSED [ 6%] 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_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_network 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_volume_v2_x 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_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_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_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_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v2_x PASSED [ 2%] 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_list_volumes PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_4 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] 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_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_external_volume_v3_x PASSED [ 2%] 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_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_quiet PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_list_services PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] 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_quiet_with_error PASSED [ 2%] 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_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_restart PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] 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_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] 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_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env PASSED [ 2%] 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_restart 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_with_dot_env_and_override_dir PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_v1 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] 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_config_v3 PASSED [ 2%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] 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_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_dot_env_and_override_dir 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 [ 2%] 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_alternate_composefile PASSED [ 7%] 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%] tests/acceptance/cli_test.py::CLITestCase::test_config_with_env_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] 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_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_with_hash_option PASSED [ 3%] 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_create_with_force_recreate_and_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create PASSED [ 3%] 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_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_create_with_force_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_force_recreate PASSED [ 3%] 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_create_with_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_create_with_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_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_create_with_no_recreate 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_pull_with_build PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status 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 PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_build PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status 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_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_build PASSED [ 7%] 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_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_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers 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_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet 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_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal 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_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal 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_restart_no_containers PASSED [ 8%] 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_quiet_build 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_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_down_signal PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout 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_env_file_relative_to_compose_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_down_timeout PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_env_file_relative_to_compose_file PASSED [ 3%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container 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_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_events_human_readable PASSED [ 4%] 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_events_json PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exec_custom_user 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_rm_all PASSED [ 8%] 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_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_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_exec_custom_user PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden 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_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_exec_service_with_environment_overridden PASSED [ 4%] 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_rm_stop PASSED [ 8%] 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_exec_service_with_environment_overridden PASSED [ 4%] 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_exec_workdir 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_exec_without_tty PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] 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_run_handles_sighup PASSED [ 9%] 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_exec_workdir 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_workdir PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup 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_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_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop 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_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_exit_code_from_signal_stop PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_label_flag PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_expanded_port PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume 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_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_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_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_one_off_with_volume_merge 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_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume_merge PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_forward_exitval PASSED [ 4%] 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_help 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_forward_exitval PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_run_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 4%] 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_volumes_from_container 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_run_service_with_compose_file_entrypoint_and_command_overridden 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_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_images PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_help PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent 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_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_help_nonexistent PASSED [ 4%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable_volumes_from_container 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_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_command_overridden 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_volumes_from_container 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_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_host_not_reachable PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images 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_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_host_not_reachable_volumes_from_container PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] 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_images_tagless_image 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_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_default_composefile PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dependencies PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_tagless_image PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_images_use_service_tag PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill 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_run_service_with_dockerfile_entrypoint_and_command_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_kill_signal_sigstop 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_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 [ 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_kill_signal_sigstop PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden 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 [ 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_environment_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 5%] 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_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 [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_kill_stopped_service PASSED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_default SKIPPED [ 5%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_dockerfile_entrypoint_overridden 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_run_service_with_environment_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_logs_invalid_service_name 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_run_service_with_explicitly_mapped_ports 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_logs_invalid_service_name PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_explicitly_mapped_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_logs_on_stopped_containers_exits PASSED [ 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_logs_timestamps PASSED [ 6%] 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_logs_on_stopped_containers_exits PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers 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_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_pause_no_containers PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_tail PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_logs_timestamps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause 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_run_service_with_scaled_dependencies PASSED [ 11%] 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_run_service_with_scaled_dependencies PASSED [ 11%] 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_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_pause_unpause PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_port PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases 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_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all 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_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 6%] 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_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_ps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile 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_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps PASSED [ 6%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_port_with_scale 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 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_run_service_with_workdir_overridden_short_form PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile 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_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_all PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] 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_ps_alternate_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_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_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_ps_default_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_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_default_composefile PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name 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_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_ps_services_filter_status PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_option PASSED [ 7%] 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_run_with_no_deps PASSED [ 12%] 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 PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_build PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_build PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status 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_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] 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_pull PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_build PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_ps_services_filter_status 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_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_build PASSED [ 7%] 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_pull_with_no_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_build 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_pull_with_parallel_failure PASSED [ 8%] 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_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_digest PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] 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_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_include_deps PASSED [ 7%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] 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_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_parallel_failure PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_pull_with_quiet PASSED [ 8%] 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_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] 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_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] 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_shorthand_host_opt_interactive 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_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart_no_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers 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_start_no_containers PASSED [ 12%] 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_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_quiet_build PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] 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_stop 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_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_restart_stopped_container PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] 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_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_rm_all PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop 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_top_services_running PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_rm_stop PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_does_not_recreate_linked_containers PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system 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_up_detached_long_form PASSED [ 13%] 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_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_detached_connects_to_network PASSED [ 8%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_env_values_from_system 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_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm 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_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_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_up_external_networks PASSED [ 13%] 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_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] 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_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sighup PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit_code PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_handles_sigterm PASSED [ 9%] 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/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] 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_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] 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_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging 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/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_multiple_volumes PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] 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_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_logging PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_interactive_connects_to_network PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume 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_merge 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_up_no_ansi 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_missing_network PASSED [ 14%] 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_rm PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_run_one_off_with_volume PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services 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_one_off_with_volume 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_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 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_no_services PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] 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_merge PASSED [ 9%] 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_up_no_start 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_compose_file_entrypoint_and_empty_string_command 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_rm PASSED [ 9%] 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_run_service_with_compose_file_entrypoint PASSED [ 9%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans 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_service_with_compose_file_entrypoint_and_empty_string_command PASSED [ 10%] 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_remove_orphans 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_run_service_with_compose_file_entrypoint_overridden PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_compose_file_entrypoint PASSED [ 9%] 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_and_empty_string_command 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_compose_file_entrypoint_and_command_overridden 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_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_up_scale_reset 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_up_scale_reset PASSED [ 14%] 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_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_dependencies 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_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_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_dependencies 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_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_up_scale_scale_up 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_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_up_scale_scale_up PASSED [ 14%] 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_environment_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_up_scale_to_zero PASSED [ 14%] 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_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_up_scale_to_zero PASSED [ 14%] 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 [ 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_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_up_with_default_network_config PASSED [ 15%] 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_network_config PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links 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_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_dockerfile_entrypoint_overridden 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_environment_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_links 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_up_with_extends 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_run_service_with_dockerfile_entrypoint_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_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_environment_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_up_with_extends PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends 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_explicitly_mapped_ip_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 11%] 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_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_links PASSED [ 10%] 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_map_ports PASSED [ 10%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_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/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_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_scaled_dependencies 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_scaled_dependencies 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_scaled_dependencies PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_user_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_run_service_with_user_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] 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_workdir_overridden PASSED [ 11%] 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_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_unset_entrypoint 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_up_with_links_v1 PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links 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_unset_entrypoint PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_use_aliases 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_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_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_user_overridden PASSED [ 11%] 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_run_service_with_use_aliases PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] 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_multiple_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_unicode_env_values_from_system PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 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_workdir_overridden PASSED [ 11%] 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 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_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_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_with_custom_name PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_with_workdir_overridden PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_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_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports 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_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_service_without_map_ports PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] 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_service_without_links PASSED [ 11%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] 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_run_service_without_map_ports PASSED [ 11%] 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_labels PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_custom_name 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_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal 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_run_without_command PASSED [ 12%] 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_up_with_network_mode <- tests/integration/testcases.py PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_with_expose_ports PASSED [ 11%] 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_run_with_no_deps PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode <- 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_up_with_network_mode PASSED [ 16%] 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_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 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_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_run_without_command PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] 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_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] 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_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] 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_scale PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_scale_v2_2 PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers 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_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_start_no_containers PASSED [ 12%] 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_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_shorthand_host_opt_interactive PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] 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_top_processes_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode <- tests/integration/testcases.py PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_stop PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_stop_signal PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout 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/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] 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_up_with_volume_labels PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] 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/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_services_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached 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/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] 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/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_top_processes_running PASSED [ 12%] 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_not_running PASSED [ 12%] tests/acceptance/cli_test.py::CLITestCase::test_up_attached 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_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 13%] 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/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/integration/project_test.py::ProjectTest::test_containers 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_detached PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_top_services_running PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_unpause_no_containers PASSED [ 13%] tests/integration/project_test.py::ProjectTest::test_containers_stopped 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_containers_with_extra_service PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up PASSED [ 13%] 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 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/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] 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/acceptance/cli_test.py::CLITestCase::test_up_attached PASSED [ 13%] 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/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_up_handles_abort_on_container_exit 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_attached 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_handles_abort_on_container_exit PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached_long_form PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_detached 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_handles_force_shutdown PASSED [ 13%] 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_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_abort_on_container_exit PASSED [ 13%] 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/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm 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_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_external_networks PASSED [ 13%] 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_handles_abort_on_container_exit_code 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/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_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging 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_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] 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/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_logging PASSED [ 14%] 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_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_force_shutdown PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network 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_sigint PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_handles_sigterm PASSED [ 13%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container <- 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/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi PASSED [ 14%] 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/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_project_up PASSED [ 19%] 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_logging_legacy 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_logging_legacy PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_logging PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_missing_network PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi 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/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_ansi 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_services 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_no_ansi PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_services 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_healthy_dependency 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_scale_reset PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] 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/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_no_start_remove_orphans PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] 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_name_starts_with_illegal_char <- tests/integration/testcases.py PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset 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_scale_scale_up PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_reset PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_name_starts_with_illegal_char PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] 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/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_down PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services 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_default_network_config 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_scale_scale_down PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] 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/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_override_file PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_duplicate_override_yaml_files 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_volumes PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 15%] 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_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_recreate_with_tmpfs_volume PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_scale_up PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile 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_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_starts_uncreated_services PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] 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 [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_scale_to_zero PASSED [ 14%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] 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_force_recreate PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_stopped PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_default_network_config 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_up_with_external_default_network PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] 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_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] 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_with_network_label PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] 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_volumes PASSED [ 20%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_extends PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_external_default_network PASSED [ 15%] 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_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_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_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_force_recreate PASSED [ 15%] 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/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] 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_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_unscale_after_restart PASSED [ 22%] 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/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] 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/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_project_up_with_no_recreate_stopped PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] 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/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_ignore_remove_orphans PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove 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_network_link_local_ips PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_healthcheck PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services 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_ignore_remove_orphans PASSED [ 15%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 <- tests/integration/testcases.py PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] 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/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_isolation PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_is_invalid PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_up_with_invalid_runtime PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] 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/acceptance/cli_test.py::CLITestCase::test_up_with_links_v1 PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config 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_v1 PASSED [ 16%] 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_ipam_options PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 22%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] 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/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_multiple_files PASSED [ 15%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips 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_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_net_v1 <- tests/integration/testcases.py PASSED [ 16%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build PASSED [ 23%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_internal PASSED [ 16%] 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_net_v1 PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_aliases PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode <- tests/integration/testcases.py PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] 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_networks PASSED [ 16%] 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_build_with_build_args_override PASSED [ 24%] 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/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] 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_ipam_config PASSED [ 22%] 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_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/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_labels PASSED [ 16%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode <- tests/integration/testcases.py PASSED [ 16%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks 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_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_mode PASSED [ 16%] 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/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] 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/acceptance/cli_test.py::CLITestCase::test_up_with_network_static_addresses PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 24%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_build_with_network <- tests/integration/testcases.py PASSED [ 24%] 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/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_build_with_target <- tests/integration/testcases.py PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] 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_cap_drop_list PASSED [ 25%] 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/acceptance/cli_test.py::CLITestCase::test_up_with_networks PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] 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/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_deps PASSED [ 16%] 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_build_with_extra_hosts PASSED [ 24%] 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_git_url PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode <- tests/integration/testcases.py PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] 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/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_no_recreate PASSED [ 16%] 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/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode PASSED [ 16%] 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_dicts PASSED [ 26%] 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_containers_stopped PASSED [ 17%] 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_create_container_with_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_override_yaml PASSED [ 16%] 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/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] 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_create_container_with_init_bool PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/integration/service_test.py::ServiceTest::test_build_with_network <- tests/integration/testcases.py PASSED [ 24%] 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/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] 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_build_args_override PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_build_with_target <- tests/integration/testcases.py 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_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_cap_add_list PASSED [ 25%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] 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/acceptance/cli_test.py::CLITestCase::test_up_with_pid_mode PASSED [ 16%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] 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_stopped PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_timeout PASSED [ 17%] 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_create_container_with_shm_size PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/acceptance/cli_test.py::CLITestCase::test_up_with_volume_labels PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_create_container_with_specified_volume PASSED [ 27%] 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/service_test.py::ServiceTest::test_create_container_with_storage_opt xfail [ 27%] tests/integration/project_test.py::ProjectTest::test_create_strategy_always PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/integration/project_test.py::ProjectTest::test_create_strategy_never PASSED [ 18%] 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/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/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] 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/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_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_create PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip 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/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/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] 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/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] 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 [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] 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_containers PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] 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_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] 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/project_test.py::ProjectTest::test_containers_with_extra_service PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_containers PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_build_with_network PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_containers_stopped PASSED [ 17%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_containers_with_extra_service 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/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/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/integration/project_test.py::ProjectTest::test_containers_with_service_names PASSED [ 17%] 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_build_with_target PASSED [ 24%] 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_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_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_create_twice PASSED [ 18%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_create_with_links PASSED [ 18%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] 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/service_test.py::ServiceTest::test_cap_drop_list 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_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_oom_kill_disable PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] 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_containers PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt 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_shm_size 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_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_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_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_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_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew 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_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] 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_create_container_with_cpu_shares PASSED [ 25%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 26%] 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_volume_mount 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_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] 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_custom_container_name PASSED [ 28%] 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_create_container_with_host_mount PASSED [ 26%] 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_network_mode_from_container <- tests/integration/testcases.py PASSED [ 19%] 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_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale 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/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] 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_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/project_test.py::ProjectTest::test_project_up PASSED [ 19%] 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_legacy_tmpfs_mount PASSED [ 26%] 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 PASSED [ 19%] 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_duplicate_volume_trailing_slash 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/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] 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/project_test.py::ProjectTest::test_project_up_ignore_orphans 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 <- 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/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container <- tests/integration/testcases.py PASSED [ 19%] 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_security_opt PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver 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/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_network_mode_from_container PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] 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_config_scale PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files 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_parallel_pull_with_no_image PASSED [ 19%] 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_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 PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale 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 PASSED [ 19%] 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_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 27%] 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_named_volumes_in_binds PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency 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_volume_mount PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans 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_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] 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/project_test.py::ProjectTest::test_project_up_config_scale PASSED [ 19%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] 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_dns_no_value PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_healthy_dependency 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_name_starts_with_illegal_char PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] 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_healthy_dependency PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_ignore_orphans PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 20%] 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_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] 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/project_test.py::ProjectTest::test_project_up_implicit_volume_driver PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends 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_no_healthcheck_dependency PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] 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/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_logging_with_multiple_files PASSED [ 19%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] 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_orphans PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_env_from_file_combined_with_env 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_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/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_name_starts_with_illegal_char 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 [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_named_volumes_in_binds PASSED [ 20%] 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_recreate_with_tmpfs_volume PASSED [ 20%] 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/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] 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/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports 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_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_networks PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_project_up_no_healthcheck_dependency PASSED [ 20%] 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/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_project_up_orphans PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_project_up_port_mappings_with_multiple_files PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] 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_uncreated_services PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] 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/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] 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/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_unhealthy_dependency PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_project_up_seccomp_profile PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] 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_volumes PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] 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_image_with_volume_is_removed PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_depends PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_links PASSED [ 20%] 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/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target 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_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_starts_uncreated_services 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_starts_uncreated_services PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice 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_with_no_deps PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] 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_resolve_env PASSED [ 31%] 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/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_volumes PASSED [ 20%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] 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_recreate_twice_with_mount PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] 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_recreate_stopped PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_with_added_secrets PASSED [ 21%] 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_scale PASSED [ 32%] 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_secrets PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_internal PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_network_label PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_project_up_without_all_services PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_deps PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] 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/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_no_recreate_running PASSED [ 21%] 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/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] 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/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] 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_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 33%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_project_up_with_secrets PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_project_up_with_volume_labels 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_network_link_local_ips PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] 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_unscale_after_restart PASSED [ 22%] 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_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_enable_ipv6 PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_mounts PASSED [ 21%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] 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_up_with_custom_name_resources PASSED [ 22%] 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_creates_links <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_recreate_preserves_volumes PASSED [ 21%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] 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_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_up_with_ipam_options PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names <- tests/integration/testcases.py PASSED [ 33%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config 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_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_start_pause_unpause_stop_kill_remove PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] 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_without_start PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] 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_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_unscale_after_restart PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_build_non_ascii_filename PASSED [ 23%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_custom_name_resources PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_group_add_value 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_scale_with_stopped_containers PASSED [ 32%] 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_labels PASSED [ 30%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities 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_build_with_build_args PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_up_with_network_static_addresses PASSED [ 22%] 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_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_config 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_up_with_network_priorities PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] 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_split_env PASSED [ 33%] tests/integration/project_test.py::ProjectTest::test_up_with_ipam_options PASSED [ 22%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] 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_ipam_options 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 <- tests/integration/testcases.py SKIPPED [ 23%] 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/project_test.py::ProjectTest::test_up_with_isolation PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] 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/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] 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_network_mode_host PASSED [ 31%] tests/integration/project_test.py::ProjectTest::test_up_with_network_link_local_ips PASSED [ 22%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] 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_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] 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_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] 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_pid_mode_none_defined 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_working_dir_param PASSED [ 34%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities 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/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/project_test.py::ProjectTest::test_up_with_network_priorities PASSED [ 22%] tests/integration/service_test.py::ServiceTest::test_build_with_illegal_leading_chars PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 35%] 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_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::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/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_build_args_override PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names <- tests/integration/testcases.py PASSED [ 33%] tests/integration/project_test.py::ProjectTest::test_up_with_runtime PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] 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_build_args PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_build_with_network PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] 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_build_labels PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_build_with_target PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args_override PASSED [ 24%] tests/integration/resilience_test.py::ResilienceTest::test_create_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_build_labels PASSED [ 24%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_build_with_cachefrom PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/resilience_test.py::ResilienceTest::test_start_failure 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/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/resilience_test.py::ResilienceTest::test_successful_recreate PASSED [ 23%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] 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_with_git_url 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_build_non_ascii_filename PASSED [ 23%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] 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_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_git_url PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_quota PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_build_args PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] 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_build_args_override 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_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_create_container_with_cpus PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] 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/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] 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_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_build_with_network 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_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_start_normal_container_does_not_create_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_build_with_network <- tests/integration/testcases.py PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_build_with_target PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_build_with_extra_hosts PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] 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/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_build_with_extra_hosts PASSED [ 24%] 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_init_path XPASS [ 26%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_build_with_git_url PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list 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_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_build_with_gzip PASSED [ 24%] 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_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_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] 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_userns_mode_host PASSED [ 34%] 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_gzip PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_read_only_root_fs PASSED [ 27%] 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_cpu_quota PASSED [ 25%] 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_create_container_with_cpu_rt xfail [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_security_opt PASSED [ 27%] 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_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_create_container_with_cpu_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_build_with_network PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_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_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 35%] 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_cpu_set PASSED [ 25%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_build_with_network <- tests/integration/testcases.py PASSED [ 24%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps 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_create_container_with_cpus PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation 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_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_build_with_target PASSED [ 24%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpus PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_device_cgroup_rules 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_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_unspecified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_extra_hosts_dicts PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_cap_drop_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 28%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_cap_add_list PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged 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_cap_drop_list 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_volume_mount PASSED [ 28%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] 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_path XPASS [ 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/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_mount PASSED [ 26%] 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_init_bool 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/service_test.py::ServiceTest::test_create_container_with_blkio_config PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_legacy_tmpfs_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 26%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] 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_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_devices 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_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_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_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] 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_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_set PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] 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_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_create_container_with_cpu_set PASSED [ 25%] 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_cpus PASSED [ 26%] 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_security_opt PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_cpu_shares PASSED [ 25%] tests/integration/service_test.py::ServiceTest::test_dns_search PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers 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_cpus PASSED [ 26%] 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_shm_size 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_specified_volume 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_storage_opt xfail [ 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_extra_hosts_list PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_create_container_with_healthcheck_config PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_host_mount PASSED [ 26%] 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_empty_labels 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_create_container_with_unspecified_volume PASSED [ 27%] 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/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] 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_tmpfs_mount PASSED [ 27%] 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_driver PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_bool 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_legacy_mount PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_init_path XPASS [ 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_legacy_tmpfs_mount PASSED [ 26%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from 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_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_create_with_image_id PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 28%] 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_legacy_tmpfs_mount PASSED [ 26%] 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_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_create_container_with_mac_address PASSED [ 26%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] 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_pids_limit XPASS [ 27%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_dns_list 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_create_with_image_id PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_pids_limit XPASS [ 27%] 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_create_container_with_security_opt PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_devices 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_specified_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_storage_opt xfail [ 27%] 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_shm_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] 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_dns_no_value PASSED [ 28%] 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 PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_dns_opt_value 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_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_create_container_with_tmpfs_mount_tmpfs_size PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_dns_search 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_unspecified_volume PASSED [ 27%] tests/integration/service_test.py::ServiceTest::test_duplicate_containers PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 28%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_create_container_with_unspecified_volume PASSED [ 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_volume_mount PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_driver PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_create_container_with_volume_mount 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_duplicate_volume_trailing_slash PASSED [ 28%] 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_create_container_with_volumes_from PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_empty_labels PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links PASSED [ 34%] 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_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_custom_container_name PASSED [ 28%] 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_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_devices PASSED [ 28%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_list PASSED [ 28%] 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_dns_opt_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_dns_no_value PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] 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/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_renew 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_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_start_one_off_container_creates_links_to_its_own_service PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] 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_duplicate_volume_trailing_slash PASSED [ 28%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] 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/service_test.py::ServiceTest::test_env_from_file_combined_with_env PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_image_with_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_anonymous_volume_recreate_then_renew PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] 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_host_volume_is_removed 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_execute_convergence_plan_anonymous_volume_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] 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_anonymous_volume_renew PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] 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_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] 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_recreate_twice PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/integration/state_test.py::BasicProjectTest::test_no_change 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_execute_convergence_plan_image_with_volume_is_removed 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_execute_convergence_plan_recreate PASSED [ 29%] 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_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate PASSED [ 29%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_change_mount_target PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice PASSED [ 29%] 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_recreate_twice_with_mount PASSED [ 29%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_containers_are_stopped PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_recreate_twice_with_mount PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] 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_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_image_volume_masks_config PASSED [ 30%] 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/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] 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_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_none PASSED [ 30%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_when_host_volume_is_removed PASSED [ 29%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] 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_swappiness 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_network_mode_bridged PASSED [ 31%] 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/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_when_image_volume_masks_config PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface 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_execute_convergence_plan_when_image_volume_masks_config PASSED [ 30%] 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/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_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_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_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start 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_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_group_add_value PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 31%] 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_bridged PASSED [ 31%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_network_mode_host 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_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness 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_oom_score_adj_value 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_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_with_image_declared_volume_renew PASSED [ 30%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] 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_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_execute_convergence_plan_without_start PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_group_add_value 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_expose_does_not_publish_ports PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_group_add_value 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_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_labels PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] 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_mem_reservation PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_log_drive_none PASSED [ 30%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_mem_reservation PASSED [ 30%] 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_bridged 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/service_test.py::ServiceTest::test_mem_swappiness PASSED [ 31%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 37%] 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_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_network_mode_bridged PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_network_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_network_mode_none PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_recreate_volume_to_mount PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_resolve_env PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_oom_score_adj_value PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_pid_mode_host PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_pid_mode_none_defined PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_port_with_explicit_interface PASSED [ 31%] 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/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_project_is_added_to_container_name PASSED [ 31%] tests/integration/service_test.py::ServiceTest::test_recreate_preserves_volume_with_trailing_slash PASSED [ 31%] 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 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_scale_with_desired_number_already_achieved 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_sets_ports PASSED [ 32%] 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_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_custom_container_name_outputs_warning PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names 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_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit 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_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_restart_always_value 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_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_restart_always_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] 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_and_needing_creation PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_restart_on_failure_value PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] 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_when_it_is_different_to_internal_port 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_scale_with_api_error PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_sets_ports PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] 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_api_error PASSED [ 32%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved 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_builds_images PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_desired_number_already_achieved PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] 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/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/integration/service_test.py::ServiceTest::test_scale_with_immediate_exit PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names 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_scale_with_stopped_containers PASSED [ 32%] 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_links <- tests/integration/testcases.py PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports 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_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/service_test.py::ServiceTest::test_scale_with_stopped_containers_and_needing_creation PASSED [ 32%] 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/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_passes_through_options PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_scale_with_unexpected_exception PASSED [ 32%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged 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_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_split_env PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_becomes_privileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] 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/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 39%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 37%] 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/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_working_dir_param PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_builds_images PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] 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_when_it_is_different_to_internal_port PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] 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 [ 40%] 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 [ 41%] 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/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 35%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports PASSED [ 33%] 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/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/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 [ 42%] 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 [ 43%] 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 [ 44%] 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 [ 45%] 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/integration/service_test.py::ServiceTest::test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port PASSED [ 33%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] 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_down_with_no_resources PASSED [ 45%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/integration/service_test.py::ServiceTest::test_start_normal_container_does_not_create_links_to_its_own_service PASSED [ 34%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links <- tests/integration/testcases.py PASSED [ 33%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 46%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_links_with_names PASSED [ 33%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] 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_with_external_links <- tests/integration/testcases.py PASSED [ 34%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] 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_with_names <- tests/integration/testcases.py PASSED [ 33%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_port_with_explicit_protocol PASSED [ 33%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/integration/service_test.py::ServiceTest::test_start_container_creates_ports PASSED [ 33%] 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_passes_through_options PASSED [ 33%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/integration/service_test.py::ServiceTest::test_start_container_inherits_options_from_constructor PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/integration/service_test.py::ServiceTest::test_start_container_passes_through_options PASSED [ 33%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 47%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] 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/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_one_off_container_creates_links_to_its_own_service <- tests/integration/testcases.py PASSED [ 34%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/integration/service_test.py::ServiceTest::test_start_container_stays_unprivileged PASSED [ 33%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] 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/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] 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/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] 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/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/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/integration/service_test.py::ServiceTest::test_start_container_uses_tagged_image_if_it_exists PASSED [ 34%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] 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/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links PASSED [ 34%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 35%] 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/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_with_custom_labels PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] 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::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/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/integration/service_test.py::ServiceTest::test_start_container_with_external_links <- tests/integration/testcases.py PASSED [ 34%] 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 [ 49%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/integration/service_test.py::ServiceTest::test_start_one_off_container_creates_links_to_its_own_service PASSED [ 34%] 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::BasicProjectTest::test_all_change PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] 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/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] 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/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] 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_up_build_cli PASSED [ 34%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] 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_get_container_create_options_does_not_mutate_options PASSED [ 50%] tests/integration/service_test.py::ServiceTest::test_stop_signal PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/integration/service_test.py::ServiceTest::test_tmpfs PASSED [ 34%] tests/integration/service_test.py::ServiceTest::test_userns_mode_none_defined PASSED [ 34%] 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::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] 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/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/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] tests/integration/service_test.py::ServiceTest::test_up_build_cli PASSED [ 34%] 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/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/service_test.py::ServiceTest::test_userns_mode_host PASSED [ 34%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 35%] tests/integration/volume_test.py::VolumeTest::test_volume_default_labels <- tests/integration/testcases.py PASSED [ 38%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] 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::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/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 51%] tests/integration/service_test.py::ConfigHashTest::test_config_hash_sticks_around PASSED [ 35%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] 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/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle 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/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] 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 [ 40%] 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 [ 41%] 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_mem_reservation PASSED [ 51%] tests/integration/service_test.py::ConfigHashTest::test_no_config_hash_when_overriding_options PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] 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 [ 42%] 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_no_default_hostname_when_not_using_networking PASSED [ 51%] 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 [ 43%] 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 [ 44%] 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 [ 45%] 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_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] 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_parse_proxy_config_per_host PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/integration/state_test.py::BasicProjectTest::test_all_change PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] 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/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 52%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/integration/state_test.py::BasicProjectTest::test_no_change PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] 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_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_secrets_secret_file_warning PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/integration/state_test.py::BasicProjectTest::test_partial_change PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] 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/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] 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/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] 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/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] 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_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] 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/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] 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_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/integration/state_test.py::ProjectWithDependenciesTest::test_change_leaf PASSED [ 35%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] 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_no_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 54%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_build_isolation_from_build_override_service_config PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] 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_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] 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::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 [ 55%] tests/unit/service_test.py::ServiceTest::test_build_with_override_build_args PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle PASSED [ 35%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] 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_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_dict 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_config_dict_with_network_mode_from_container PASSED [ 49%] 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::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_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] 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::ServiceTest::test_create_container PASSED [ 49%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] 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_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] 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_get_container 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 [ 57%] 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 [ 58%] 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 [ 59%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 50%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] 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/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] 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 [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 60%] 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 [ 61%] 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 [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 62%] 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 [ 63%] 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 [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 64%] 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_get_container_create_options_with_name_option PASSED [ 50%] 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_get_container_not_found PASSED [ 50%] 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_get_create_options_with_proxy_config PASSED [ 50%] 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 [ 65%] 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 [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 66%] 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_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/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] 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 [ 71%] 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/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] 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 [ 73%] 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 [ 75%] 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/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] 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 [ 77%] 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 [ 79%] 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 [ 80%] 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::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] 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 [ 81%] 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 [ 82%] 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 [ 83%] 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 [ 84%] 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 [ 86%] 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 [ 88%] 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_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%] 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::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] 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/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 37%] 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_image_name_default PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root PASSED [ 35%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] 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 87 13 22 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166 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 34 2 8 1 93% 17-18, 15->17 compose/cli/log_printer.py 149 10 52 6 91% 76, 103, 110-115, 164, 173, 226-229, 259, 43->exit, 75->76, 98->103, 171->173, 225->226, 234->240 compose/cli/main.py 693 90 290 40 84% 83-84, 86-87, 168, 329, 361-363, 446, 506, 510, 515-516, 526-555, 567, 585-587, 658-659, 697-698, 716, 737-738, 750, 773, 791, 838, 1070, 1079, 1108-1117, 1157-1160, 1168-1172, 1174-1179, 1202, 1224-1253, 1260-1261, 1263-1265, 1280, 1286, 1470, 1488, 1504, 1508-1509, 1520, 1525, 1528, 1554, 1573-1575, 1585, 1596, 60->63, 82->83, 85->86, 167->168, 328->329, 360->361, 445->446, 505->506, 509->510, 520->526, 564->567, 584->585, 656->658, 715->716, 736->737, 749->750, 772->773, 828->838, 830->exit, 1069->1070, 1078->1079, 1167->1168, 1173->1174, 1201->1202, 1259->1260, 1262->1263, 1279->1280, 1285->1286, 1469->1470, 1487->1488, 1503->1504, 1519->1520, 1524->1525, 1527->1528, 1546->exit, 1553->1554, 1567->1575, 1569->1573, 1584->1585, 1594->1596 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 30 388 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 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 36 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 441 34 182 15 91% 61, 157, 213-214, 255-256, 366-367, 370-375, 389-392, 445, 496, 500, 527, 631, 637, 640-643, 768-769, 775-778, 833, 842-845, 58->61, 153->157, 332->334, 364->366, 369->370, 388->389, 444->445, 495->496, 499->500, 526->527, 630->631, 636->637, 639->640, 687->exit, 771->778 compose/service.py 915 56 402 30 93% 67, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 492, 495, 513, 580, 625-626, 734, 953-954, 974-975, 1076, 1123, 1184, 1226, 1248-1263, 1303, 1342-1346, 1534, 1538, 1694, 1780, 1818, 1831, 1835-1836, 1840-1841, 64->67, 223->exit, 276->278, 299->300, 434->435, 476->477, 491->492, 494->495, 512->513, 570->580, 729->734, 952->953, 973->974, 1075->1076, 1122->1123, 1183->1184, 1225->1226, 1302->1303, 1339->1342, 1533->1534, 1537->1538, 1586->exit, 1594->1593, 1631->1628, 1693->1694, 1779->1780, 1817->1818, 1830->1831, 1834->1835, 1839->1840 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 5624 441 2254 206 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:2424: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2403: 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/unit/config/config_test.py:3777: windows paths SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 ======= 1129 passed, 11 skipped, 2 xfailed, 3 xpassed in 880.37 seconds ======== ___________________________________ summary ____________________________________  py27: commands succeeded  congratulations :) tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-18.09.9-jenkins-compose-PR-6900-2 tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] compose-dind-18.09.9-jenkins-compose-PR-6900-2 tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] [Pipeline] } tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } 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/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_always_recreate_deps PASSED [ 35%] 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/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] 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/integration/state_test.py::ProjectWithDependenciesTest::test_change_root_no_recreate PASSED [ 36%] 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 [ 54%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] 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/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 55%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_recreated_when_dependency_created PASSED [ 36%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] 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 [ 56%] 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::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] 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 [ 57%] 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 [ 58%] 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 [ 59%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] 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_change_leaf PASSED [ 36%] 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 [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 60%] 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 [ 61%] 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 [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 62%] 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 [ 63%] 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 [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 64%] 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/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] 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 [ 65%] 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/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] 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 [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 66%] 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_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 [ 71%] 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 [ 73%] 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 [ 75%] 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/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_build PASSED [ 37%] 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 [ 77%] 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 [ 79%] 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 [ 80%] 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::ServiceStateTest::test_trigger_recreate_with_config_change PASSED [ 37%] 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 [ 81%] 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/integration/state_test.py::ProjectWithDependenciesTest::test_service_removed_while_down PASSED [ 36%] 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 [ 82%] 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 [ 83%] 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 [ 84%] 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 [ 86%] 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 [ 88%] 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_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%] 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/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/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/integration/state_test.py::ProjectWithDependenciesTest::test_up PASSED [ 36%] 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/bundle_test.py::test_get_image_digest_exists PASSED [ 39%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] 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/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 [ 40%] 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 [ 41%] 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::ProjectWithDependsOnDependenciesTest::test_change_leaf 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 [ 42%] 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 [ 43%] 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 [ 44%] 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 [ 45%] 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_middle_always_recreate_deps PASSED [ 36%] 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_down_with_no_resources PASSED [ 45%] 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 87 13 22 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166 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 34 2 8 1 93% 17-18, 15->17 compose/cli/log_printer.py 149 10 52 6 91% 76, 103, 110-115, 164, 173, 226-229, 259, 43->exit, 75->76, 98->103, 171->173, 225->226, 234->240 compose/cli/main.py 693 90 290 40 84% 83-84, 86-87, 168, 329, 361-363, 446, 506, 510, 515-516, 526-555, 567, 585-587, 658-659, 697-698, 716, 737-738, 750, 773, 791, 838, 1070, 1079, 1108-1117, 1157-1160, 1168-1172, 1174-1179, 1202, 1224-1253, 1260-1261, 1263-1265, 1280, 1286, 1470, 1488, 1504, 1508-1509, 1520, 1525, 1528, 1554, 1573-1575, 1585, 1596, 60->63, 82->83, 85->86, 167->168, 328->329, 360->361, 445->446, 505->506, 509->510, 520->526, 564->567, 584->585, 656->658, 715->716, 736->737, 749->750, 772->773, 828->838, 830->exit, 1069->1070, 1078->1079, 1167->1168, 1173->1174, 1201->1202, 1259->1260, 1262->1263, 1279->1280, 1285->1286, 1469->1470, 1487->1488, 1503->1504, 1519->1520, 1524->1525, 1527->1528, 1546->exit, 1553->1554, 1567->1575, 1569->1573, 1584->1585, 1594->1596 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 30 388 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 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 36 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 441 34 182 15 91% 61, 157, 213-214, 255-256, 366-367, 370-375, 389-392, 445, 496, 500, 527, 631, 637, 640-643, 768-769, 775-778, 833, 842-845, 58->61, 153->157, 332->334, 364->366, 369->370, 388->389, 444->445, 495->496, 499->500, 526->527, 630->631, 636->637, 639->640, 687->exit, 771->778 compose/service.py 915 56 402 30 93% 67, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 492, 495, 513, 580, 625-626, 734, 953-954, 974-975, 1076, 1123, 1184, 1226, 1248-1263, 1303, 1342-1346, 1534, 1538, 1694, 1780, 1818, 1831, 1835-1836, 1840-1841, 64->67, 223->exit, 276->278, 299->300, 434->435, 476->477, 491->492, 494->495, 512->513, 570->580, 729->734, 952->953, 973->974, 1075->1076, 1122->1123, 1183->1184, 1225->1226, 1302->1303, 1339->1342, 1533->1534, 1537->1538, 1586->exit, 1594->1593, 1631->1628, 1693->1694, 1779->1780, 1817->1818, 1830->1831, 1834->1835, 1839->1840 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 5624 441 2254 207 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:90: Needs pywin32 SKIP [1] tests/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 SKIP [1] tests/unit/config/config_test.py:3777: windows paths SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/acceptance/cli_test.py:2424: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2403: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 ======= 1129 passed, 11 skipped, 2 xfailed, 3 xpassed in 914.23 seconds ======== ___________________________________ summary ____________________________________  py27: commands succeeded  congratulations :) tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-19.03.2-jenkins-compose-PR-6900-2 tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] compose-dind-19.03.2-jenkins-compose-PR-6900-2 tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } 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_uid_gid_mode_warning PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_leaf PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] 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/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/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 47%] 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_no_warning_on_stop PASSED [ 47%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] 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/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] 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/service_test.py::ServiceTest::test_build_with_isolation_from_service_config 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::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 49%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] 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%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 50%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] 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 [ 51%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_middle_always_recreate_deps PASSED [ 36%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 52%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] 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 [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 37%] 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 [ 54%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root PASSED [ 36%] 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 [ 55%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] 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 [ 56%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate PASSED [ 36%] 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 [ 57%] 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 [ 58%] 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 [ 59%] 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 [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 60%] 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 [ 61%] 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 [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 62%] 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 [ 63%] 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 [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 64%] 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 [ 65%] 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 [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 66%] 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_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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] 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 [ 71%] 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 [ 73%] 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 [ 75%] 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 [ 77%] 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 [ 79%] 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 [ 80%] 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 [ 81%] 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 [ 82%] 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 [ 83%] 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 [ 84%] 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 [ 86%] 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 [ 88%] 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_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_always_recreate_deps PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 37%] 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 87 13 24 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166 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 34 2 10 1 93% 17-18, 15->17 compose/cli/log_printer.py 149 10 54 6 91% 76, 103, 110-115, 164, 173, 226-229, 259, 43->exit, 75->76, 98->103, 171->173, 225->226, 234->240 compose/cli/main.py 693 90 305 40 85% 83-84, 86-87, 168, 329, 361-363, 446, 506, 510, 515-516, 526-555, 567, 585-587, 658-659, 697-698, 716, 737-738, 750, 773, 791, 838, 1070, 1079, 1108-1117, 1157-1160, 1168-1172, 1174-1179, 1202, 1224-1253, 1260-1261, 1263-1265, 1280, 1286, 1470, 1488, 1504, 1508-1509, 1520, 1525, 1528, 1554, 1573-1575, 1585, 1596, 60->63, 82->83, 85->86, 167->168, 328->329, 360->361, 445->446, 505->506, 509->510, 520->526, 564->567, 584->585, 656->658, 715->716, 736->737, 749->750, 772->773, 828->838, 830->exit, 1069->1070, 1078->1079, 1167->1168, 1173->1174, 1201->1202, 1259->1260, 1262->1263, 1279->1280, 1285->1286, 1469->1470, 1487->1488, 1503->1504, 1519->1520, 1524->1525, 1527->1528, 1546->exit, 1553->1554, 1567->1575, 1569->1573, 1584->1585, 1594->1596 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 30 428 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 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 36 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 441 34 213 15 91% 61, 157, 213-214, 255-256, 366-367, 370-375, 389-392, 445, 496, 500, 527, 631, 637, 640-643, 768-769, 775-778, 833, 842-845, 58->61, 153->157, 332->334, 364->366, 369->370, 388->389, 444->445, 495->496, 499->500, 526->527, 630->631, 636->637, 639->640, 687->exit, 771->778 compose/service.py 915 58 455 32 93% 65, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 492, 495, 513, 580, 625-626, 734, 953-954, 974-975, 1076, 1123, 1184, 1226, 1248-1263, 1303, 1342-1346, 1534, 1538, 1654, 1694, 1706, 1780, 1818, 1831, 1835-1836, 1840-1841, 64->65, 223->exit, 276->278, 299->300, 434->435, 476->477, 491->492, 494->495, 512->513, 570->580, 729->734, 952->953, 973->974, 1075->1076, 1122->1123, 1183->1184, 1225->1226, 1302->1303, 1339->1342, 1533->1534, 1537->1538, 1586->exit, 1594->1593, 1631->1628, 1653->1654, 1693->1694, 1705->1706, 1779->1780, 1817->1818, 1830->1831, 1834->1835, 1839->1840 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 5624 444 2431 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:2424: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2403: 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:3777: windows paths ======= 1128 passed, 12 skipped, 2 xfailed, 3 xpassed in 939.61 seconds ======== ___________________________________ summary ____________________________________  py37: commands succeeded  congratulations :) 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_root_always_recreate_deps PASSED [ 36%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-19.03.2-jenkins-compose-PR-6900-2 compose-dind-19.03.2-jenkins-compose-PR-6900-2 [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_change_root_no_recreate 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/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_added PASSED [ 36%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed 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/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_dependency_added PASSED [ 36%] 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/bundle_test.py::test_get_image_digest_exists PASSED [ 39%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] 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%] 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 [ 40%] 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 [ 41%] 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/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 [ 42%] 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 [ 43%] 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 [ 44%] 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 [ 45%] 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/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_down_with_no_resources PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 46%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] 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/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/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/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/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] 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_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_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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] 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_image_changed_to_build PASSED [ 37%] tests/integration/state_test.py::ServiceStateTest::test_trigger_create PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_dependency_removed PASSED [ 37%] 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/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] 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_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_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 [ 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_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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_image_change PASSED [ 37%] 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/integration/state_test.py::ServiceStateTest::test_trigger_recreate_with_nonexistent_image_tag PASSED [ 37%] 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/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/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 [ 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/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/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_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] 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/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] 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/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/bundle_test.py::test_set_command_and_args_from_both PASSED [ 40%] 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 [ 41%] 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_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/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 [ 42%] 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_image_name_default PASSED [ 51%] 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 [ 43%] 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 [ 44%] 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 [ 45%] 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_image_name_from_config PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] 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_memory_swap_limit PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_no_default_hostname_when_not_using_networking PASSED [ 51%] 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/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 46%] 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/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_down PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 52%] 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_pull_image_with_default_platform PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] 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/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_recreate_container PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] 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/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_remove_image_all_does_remove PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] 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/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/project_test.py::ProjectTest::test_net_unset PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode PASSED [ 47%] 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 [ 53%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] 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/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_specifies_host_port_with_container_port PASSED [ 53%] 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/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] 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/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/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true 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_specifies_host_port_with_host_port PASSED [ 53%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_service_removed_while_up PASSED [ 37%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull 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_specifies_host_port_with_no_ports 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_build_isolation_from_build_override_service_config PASSED [ 48%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] 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/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] 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/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] 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_build_with_override_build_args PASSED [ 48%] 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 [ 40%] 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 [ 41%] 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_stop_grace_period PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] 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_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] 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 [ 42%] 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::NetTestCase::test_network_mode PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 49%] 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_config_hash_matches_label PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] 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 [ 43%] 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 [ 44%] 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 [ 45%] 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::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_containers PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] 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_build_container_operation_with_timeout_func_does_not_mutate_options_with_timeout PASSED [ 45%] 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/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_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_container_without_name PASSED [ 45%] 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_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/integration/state_test.py::ProjectWithDependsOnDependenciesTest::test_up PASSED [ 37%] tests/unit/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] 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_error_parallel_pull PASSED [ 45%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_container_only_option PASSED [ 55%] 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 PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 56%] 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_container_create_options_does_not_mutate_options PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 46%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 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/integration/state_test.py::ServiceStateTest::test_trigger_noop PASSED [ 37%] 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/project_test.py::ProjectTest::test_from_config_v2 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 [ 57%] 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 [ 58%] 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 [ 59%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] 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/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only 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/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def 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 [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 60%] 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 [ 61%] 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 [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 62%] 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 [ 63%] 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 [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 64%] 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_get_volumes_from_service_container_exists PASSED [ 50%] 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/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] 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/bundle_test.py::test_get_image_digest_exists PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_get_secrets_uid_gid_mode_warning 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 [ 65%] 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 [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 66%] 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_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/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/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] 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 [ 71%] 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/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] 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 [ 51%] tests/unit/project_test.py::ProjectTest::test_get_services_removes_duplicates_following_links PASSED [ 46%] 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 [ 73%] 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/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] 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 [ 75%] 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 [ 77%] 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 [ 79%] 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 [ 80%] 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/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 [ 40%] 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 [ 41%] 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_log_opt PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_listed_services_with_args PASSED [ 46%] 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 [ 81%] 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 [ 82%] 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/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/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] 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 [ 83%] 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 [ 84%] 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 [ 86%] 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 [ 88%] 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_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%] 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/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 [ 42%] 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_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_net_unset PASSED [ 47%] 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/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 [ 43%] 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 [ 44%] 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 [ 45%] 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_parse_proxy_config PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] 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/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/project_test.py::ProjectTest::test_no_warning_in_normal_mode 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_container_without_name PASSED [ 45%] 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_no_warning_on_stop PASSED [ 47%] 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/project_test.py::ProjectTest::test_down_with_no_resources PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_project_platform_value PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/bundle_test.py::test_get_image_digest_exists PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_use_net_from_container PASSED [ 47%] 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/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/bundle_test.py::test_get_image_digest_image_uses_digest PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_use_net_from_service PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/bundle_test.py::test_get_image_digest_from_repository PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_container PASSED [ 47%] tests/unit/project_test.py::ProjectTest::test_get_secrets_no_secret_def PASSED [ 46%] 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/bundle_test.py::test_get_image_digest_no_image PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] 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/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] tests/unit/bundle_test.py::test_push_image_with_saved_digest PASSED [ 39%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] 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_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_uses_default_network_false PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] 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 [ 40%] 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 [ 41%] 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_services_returns_listed_services_with_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/cli_test.py::CLITestCase::test_run_interactive_passes_logs_false PASSED [ 41%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 47%] 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 87 13 24 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166 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 34 2 10 1 93% 17-18, 15->17 compose/cli/log_printer.py 149 10 54 6 91% 76, 103, 110-115, 164, 173, 226-229, 259, 43->exit, 75->76, 98->103, 171->173, 225->226, 234->240 compose/cli/main.py 693 90 305 40 85% 83-84, 86-87, 168, 329, 361-363, 446, 506, 510, 515-516, 526-555, 567, 585-587, 658-659, 697-698, 716, 737-738, 750, 773, 791, 838, 1070, 1079, 1108-1117, 1157-1160, 1168-1172, 1174-1179, 1202, 1224-1253, 1260-1261, 1263-1265, 1280, 1286, 1470, 1488, 1504, 1508-1509, 1520, 1525, 1528, 1554, 1573-1575, 1585, 1596, 60->63, 82->83, 85->86, 167->168, 328->329, 360->361, 445->446, 505->506, 509->510, 520->526, 564->567, 584->585, 656->658, 715->716, 736->737, 749->750, 772->773, 828->838, 830->exit, 1069->1070, 1078->1079, 1167->1168, 1173->1174, 1201->1202, 1259->1260, 1262->1263, 1279->1280, 1285->1286, 1469->1470, 1487->1488, 1503->1504, 1519->1520, 1524->1525, 1527->1528, 1546->exit, 1553->1554, 1567->1575, 1569->1573, 1584->1585, 1594->1596 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 30 428 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 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 36 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 441 34 213 15 91% 61, 157, 213-214, 255-256, 366-367, 370-375, 389-392, 445, 496, 500, 527, 631, 637, 640-643, 768-769, 775-778, 833, 842-845, 58->61, 153->157, 332->334, 364->366, 369->370, 388->389, 444->445, 495->496, 499->500, 526->527, 630->631, 636->637, 639->640, 687->exit, 771->778 compose/service.py 915 58 455 32 93% 65, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 492, 495, 513, 580, 625-626, 734, 953-954, 974-975, 1076, 1123, 1184, 1226, 1248-1263, 1303, 1342-1346, 1534, 1538, 1654, 1694, 1706, 1780, 1818, 1831, 1835-1836, 1840-1841, 64->65, 223->exit, 276->278, 299->300, 434->435, 476->477, 491->492, 494->495, 512->513, 570->580, 729->734, 952->953, 973->974, 1075->1076, 1122->1123, 1183->1184, 1225->1226, 1302->1303, 1339->1342, 1533->1534, 1537->1538, 1586->exit, 1594->1593, 1631->1628, 1653->1654, 1693->1694, 1705->1706, 1779->1780, 1817->1818, 1830->1831, 1834->1835, 1839->1840 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 5624 444 2431 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:2424: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2403: 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:3777: windows paths ======= 1128 passed, 12 skipped, 2 xfailed, 3 xpassed in 834.88 seconds ======== 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_build_isolation_from_build_override_service_config PASSED [ 48%] 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 [ 42%] 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/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%] ___________________________________ summary ____________________________________  py37: commands succeeded  congratulations :) tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_service_with_proxy_config PASSED [ 48%] 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 [ 43%] 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 [ 44%] 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 [ 45%] 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_no_warning_on_stop PASSED [ 47%] 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_build_volume_options_duplicate_binds PASSED [ 48%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-18.09.9-jenkins-compose-PR-6900-2 tests/unit/project_test.py::ProjectTest::test_avoid_multiple_push PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_no_warning_with_no_swarm_info PASSED [ 47%] 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/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_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_with_isolation_from_service_config PASSED [ 48%] compose-dind-18.09.9-jenkins-compose-PR-6900-2 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_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_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_build_with_override_build_args PASSED [ 48%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry 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%] [Pipeline] } [Pipeline] // node [Pipeline] } tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_build_with_platform PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_error_parallel_pull PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] 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 [ 54%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_events PASSED [ 45%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/project_test.py::ProjectTest::test_events_legacy PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] 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_config_dict_with_network_mode_from_container PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_from_config_v1 PASSED [ 46%] 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_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_from_config_v2 PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] 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::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_secrets_external_warning PASSED [ 46%] 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::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_containers PASSED [ 49%] 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::NetTestCase::test_network_mode PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_secrets_secret_file_warning PASSED [ 46%] 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::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_create_container PASSED [ 49%] 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/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_create_when_removed_containers_are_listed PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_service PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_config_hash_matches_label PASSED [ 49%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build 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::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_services_returns_all_services_without_args PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] 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_ensure_image_exists_no_build_but_needs_build 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_containers_with_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_create_container PASSED [ 49%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] tests/unit/project_test.py::ProjectTest::test_get_services_with_include_links PASSED [ 46%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] 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_container_create_options_does_not_mutate_options PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_net_unset PASSED [ 47%] 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/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 56%] 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_container_create_options_no_affinity_without_binds PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_no_such_service_unicode PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build_but_needs_build PASSED [ 49%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_volume_when_masked PASSED [ 56%] 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_in_normal_mode PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] 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_get_container_create_options_with_name_option PASSED [ 50%] tests/unit/project_test.py::ProjectTest::test_no_warning_on_stop PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_no_affinity_without_binds 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 [ 57%] 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 [ 58%] 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 [ 59%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found 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_create_options_sets_affinity_with_binds PASSED [ 50%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] 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/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/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 [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 60%] 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 [ 61%] 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 [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 62%] 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 [ 63%] 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 [ 64%] 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_create_options_with_proxy_config PASSED [ 50%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 64%] 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_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_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] 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 [ 65%] 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 [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 66%] 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/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] 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 PASSED [ 50%] 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_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/project_test.py::ProjectTest::test_use_volumes_from_service_container PASSED [ 47%] 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 [ 71%] 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 [ 73%] 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/project_test.py::ProjectTest::test_use_volumes_from_service_no_container PASSED [ 47%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists_with_flags PASSED [ 50%] 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 [ 75%] 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 [ 77%] 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 [ 79%] 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 [ 80%] 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/project_test.py::ProjectTest::test_uses_default_network_false PASSED [ 48%] 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/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 [ 81%] 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 [ 82%] 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 [ 83%] tests/unit/project_test.py::ProjectTest::test_uses_default_network_true PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 51%] 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 [ 84%] 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 [ 86%] 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 [ 88%] 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_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%] 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_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_image_name_default PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_build_does_not_pull PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_image_name_from_config PASSED [ 51%] 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/service_test.py::ServiceTest::test_image_name_from_config 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_log_opt PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] 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_build_service_with_proxy_config PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_build_volume_options_duplicate_binds PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_memory_swap_limit 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_build_with_default_platform 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_with_isolation_from_service_config PASSED [ 48%] 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_build_with_override_build_args PASSED [ 48%] 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_build_with_platform PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_cgroup_parent PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_parse_repository_tag 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 [ 52%] tests/unit/service_test.py::ServiceTest::test_config_dict PASSED [ 48%] tests/unit/service_test.py::ServiceTest::test_pull_image PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_config_dict_with_network_mode_from_container PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] 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_config_hash_matches_label PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_container_without_name PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_containers PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_containers_with_containers PASSED [ 49%] 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 87 13 24 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166 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 34 2 10 1 93% 17-18, 15->17 compose/cli/log_printer.py 149 10 54 6 91% 76, 103, 110-115, 164, 173, 226-229, 259, 43->exit, 75->76, 98->103, 171->173, 225->226, 234->240 compose/cli/main.py 693 90 305 40 85% 83-84, 86-87, 168, 329, 361-363, 446, 506, 510, 515-516, 526-555, 567, 585-587, 658-659, 697-698, 716, 737-738, 750, 773, 791, 838, 1070, 1079, 1108-1117, 1157-1160, 1168-1172, 1174-1179, 1202, 1224-1253, 1260-1261, 1263-1265, 1280, 1286, 1470, 1488, 1504, 1508-1509, 1520, 1525, 1528, 1554, 1573-1575, 1585, 1596, 60->63, 82->83, 85->86, 167->168, 328->329, 360->361, 445->446, 505->506, 509->510, 520->526, 564->567, 584->585, 656->658, 715->716, 736->737, 749->750, 772->773, 828->838, 830->exit, 1069->1070, 1078->1079, 1167->1168, 1173->1174, 1201->1202, 1259->1260, 1262->1263, 1279->1280, 1285->1286, 1469->1470, 1487->1488, 1503->1504, 1519->1520, 1524->1525, 1527->1528, 1546->exit, 1553->1554, 1567->1575, 1569->1573, 1584->1585, 1594->1596 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 30 428 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 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 36 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 441 34 213 15 91% 61, 157, 213-214, 255-256, 366-367, 370-375, 389-392, 445, 496, 500, 527, 631, 637, 640-643, 768-769, 775-778, 833, 842-845, 58->61, 153->157, 332->334, 364->366, 369->370, 388->389, 444->445, 495->496, 499->500, 526->527, 630->631, 636->637, 639->640, 687->exit, 771->778 compose/service.py 915 58 455 32 93% 65, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 492, 495, 513, 580, 625-626, 734, 953-954, 974-975, 1076, 1123, 1184, 1226, 1248-1263, 1303, 1342-1346, 1534, 1538, 1654, 1694, 1706, 1780, 1818, 1831, 1835-1836, 1840-1841, 64->65, 223->exit, 276->278, 299->300, 434->435, 476->477, 491->492, 494->495, 512->513, 570->580, 729->734, 952->953, 973->974, 1075->1076, 1122->1123, 1183->1184, 1225->1226, 1302->1303, 1339->1342, 1533->1534, 1537->1538, 1586->exit, 1594->1593, 1631->1628, 1653->1654, 1693->1694, 1705->1706, 1779->1780, 1817->1818, 1830->1831, 1834->1835, 1839->1840 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 5624 444 2431 210 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:2424: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2403: 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:3777: windows paths ======= 1128 passed, 12 skipped, 2 xfailed, 3 xpassed in 846.43 seconds ======== 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_create_container PASSED [ 49%] ___________________________________ summary ____________________________________  py37: commands succeeded  congratulations :) tests/unit/service_test.py::ServiceTest::test_remove_image_none PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_create_when_removed_containers_are_listed PASSED [ 49%] + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-18.09.9-jenkins-compose-PR-6900-2 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 [ 53%] tests/unit/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_force_build PASSED [ 49%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_ensure_image_exists_no_build PASSED [ 49%] 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%] compose-dind-18.09.9-jenkins-compose-PR-6900-2 tests/unit/service_test.py::ServiceTest::test_remove_image_all_does_remove PASSED [ 52%] 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_container_port PASSED [ 53%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } tests/unit/service_test.py::ServiceTest::test_remove_image_local_with_image_name_doesnt_remove PASSED [ 52%] [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } tests/unit/service_test.py::ServiceTest::test_get_container PASSED [ 49%] 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_remove_image_local_without_image_name_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_does_not_mutate_options PASSED [ 50%] 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_remove_image_none PASSED [ 52%] 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/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_remove_image_with_error PASSED [ 52%] 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_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_remove_non_existing_image PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_container_create_options_with_name_option 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 [ 54%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_container_not_found PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_create_options_with_proxy_config PASSED [ 50%] 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_service_platform_precedence PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_container_read_only PASSED [ 50%] 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::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] 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_specifies_host_port_with_host_ip_and_port PASSED [ 53%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_container_exists PASSED [ 50%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 55%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] 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_volumes_from_service_container_exists_with_flags PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_get_volumes_from_service_no_container PASSED [ 50%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] 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_image_name_default PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] 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_image_name_from_config PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 54%] tests/unit/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_log_opt PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] 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 [ 56%] tests/unit/service_test.py::ServiceTest::test_mem_reservation PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] 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_memory_swap_limit PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_split_domainname_none PASSED [ 54%] 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_no_default_hostname_when_not_using_networking PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_only_log_warning_when_host_ports_clash PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_stop_grace_period PASSED [ 54%] 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 [ 57%] 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 [ 58%] 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 [ 59%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config PASSED [ 51%] tests/unit/service_test.py::ServiceTest::test_volumes_order_is_preserved PASSED [ 54%] tests/unit/service_test.py::ServiceTest::test_parse_proxy_config_per_host PASSED [ 51%] 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/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 [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 60%] 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 [ 61%] 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/service_test.py::ServiceTest::test_parse_repository_tag PASSED [ 51%] tests/unit/service_test.py::NetTestCase::test_network_mode PASSED [ 55%] 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 [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 62%] 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 [ 63%] 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 [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 64%] 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_pull_image PASSED [ 51%] tests/unit/service_test.py::NetTestCase::test_network_mode_container PASSED [ 55%] 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/service_test.py::ServiceTest::test_pull_image_digest PASSED [ 51%] tests/unit/service_test.py::NetTestCase::test_network_mode_service PASSED [ 55%] 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 [ 65%] 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 [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 66%] 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_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/service_test.py::ServiceTest::test_pull_image_no_tag PASSED [ 52%] 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/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 [ 71%] tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 71%] tests/unit/service_test.py::ServiceTest::test_pull_image_with_default_platform PASSED [ 52%] tests/unit/service_test.py::ServiceVolumesTest::test_build_volume_binding PASSED [ 55%] 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 [ 73%] 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/service_test.py::ServiceTest::test_pull_image_with_platform PASSED [ 52%] tests/unit/service_test.py::ServiceVolumesTest::test_create_with_special_volume_mode PASSED [ 55%] 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 [ 75%] 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 [ 77%] 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 [ 79%] 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 [ 80%] 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/service_test.py::ServiceTest::test_pull_image_with_platform_unsupported_api PASSED [ 52%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_create_options_with_different_host_path_in_container_json PASSED [ 55%] 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 [ 81%] 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 [ 82%] 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/service_test.py::ServiceTest::test_recreate_container PASSED [ 52%] tests/unit/service_test.py::ServiceVolumesTest::test_get_container_data_volumes PASSED [ 55%] 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 [ 83%] 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 [ 84%] 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 [ 86%] 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 [ 88%] 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_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%] 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/service_test.py::ServiceVolumesTest::test_merge_volume_bindings PASSED [ 55%] 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/service_test.py::ServiceVolumesTest::test_mount_same_host_path_to_two_volumes PASSED [ 55%] tests/unit/service_test.py::ServiceTest::test_recreate_container_with_timeout PASSED [ 52%] 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_image_all_does_remove PASSED [ 52%] tests/unit/service_test.py::ServiceVolumesTest::test_warn_on_masked_no_warning_with_same_path PASSED [ 56%] 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::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::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 [ 53%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_self_reference_external_link PASSED [ 53%] tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes_abspath PASSED [ 56%] tests/unit/service_test.py::ServiceTest::test_service_ignore_default_platform_with_unsupported_api PASSED [ 53%] 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 [ 57%] 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 [ 58%] 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 [ 59%] tests/unit/utils_test.py::TestMoreItertools::test_unique_everseen PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_service_platform_precedence PASSED [ 53%] tests/unit/volume_test.py::TestVolume::test_remove_local_volume PASSED [ 59%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port PASSED [ 53%] 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 [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_docker_client_no_home PASSED [ 60%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_container_port_range PASSED [ 53%] 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 [ 61%] 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 [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 62%] 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 [ 63%] 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 [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 64%] 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_specifies_host_port_with_host_ip_and_port PASSED [ 53%] 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_specifies_host_port_with_host_ip_and_port_range PASSED [ 53%] tests/unit/cli/main_test.py::TestCLIMainTestCase::test_filter_containers_to_service_names_all PASSED [ 64%] tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port PASSED [ 53%] 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 [ 65%] 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 [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 66%] 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_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/service_test.py::ServiceTest::test_specifies_host_port_with_host_ip_no_port_range PASSED [ 53%] 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 [ 71%] 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/service_test.py::ServiceTest::test_specifies_host_port_with_host_port PASSED [ 53%] 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 [ 73%] 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 [ 75%] 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/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 87 13 24 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166 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 34 2 10 1 93% 17-18, 15->17 compose/cli/log_printer.py 149 10 54 6 91% 76, 103, 110-115, 164, 173, 226-229, 259, 43->exit, 75->76, 98->103, 171->173, 225->226, 234->240 compose/cli/main.py 693 90 305 40 85% 83-84, 86-87, 168, 329, 361-363, 446, 506, 510, 515-516, 526-555, 567, 585-587, 658-659, 697-698, 716, 737-738, 750, 773, 791, 838, 1070, 1079, 1108-1117, 1157-1160, 1168-1172, 1174-1179, 1202, 1224-1253, 1260-1261, 1263-1265, 1280, 1286, 1470, 1488, 1504, 1508-1509, 1520, 1525, 1528, 1554, 1573-1575, 1585, 1596, 60->63, 82->83, 85->86, 167->168, 328->329, 360->361, 445->446, 505->506, 509->510, 520->526, 564->567, 584->585, 656->658, 715->716, 736->737, 749->750, 772->773, 828->838, 830->exit, 1069->1070, 1078->1079, 1167->1168, 1173->1174, 1201->1202, 1259->1260, 1262->1263, 1279->1280, 1285->1286, 1469->1470, 1487->1488, 1503->1504, 1519->1520, 1524->1525, 1527->1528, 1546->exit, 1553->1554, 1567->1575, 1569->1573, 1584->1585, 1594->1596 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 30 428 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 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 36 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 441 34 213 15 91% 61, 157, 213-214, 255-256, 366-367, 370-375, 389-392, 445, 496, 500, 527, 631, 637, 640-643, 768-769, 775-778, 833, 842-845, 58->61, 153->157, 332->334, 364->366, 369->370, 388->389, 444->445, 495->496, 499->500, 526->527, 630->631, 636->637, 639->640, 687->exit, 771->778 compose/service.py 915 58 455 32 93% 65, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 492, 495, 513, 580, 625-626, 734, 953-954, 974-975, 1076, 1123, 1184, 1226, 1248-1263, 1303, 1342-1346, 1534, 1538, 1654, 1694, 1706, 1780, 1818, 1831, 1835-1836, 1840-1841, 64->65, 223->exit, 276->278, 299->300, 434->435, 476->477, 491->492, 494->495, 512->513, 570->580, 729->734, 952->953, 973->974, 1075->1076, 1122->1123, 1183->1184, 1225->1226, 1302->1303, 1339->1342, 1533->1534, 1537->1538, 1586->exit, 1594->1593, 1631->1628, 1653->1654, 1693->1694, 1705->1706, 1779->1780, 1817->1818, 1830->1831, 1834->1835, 1839->1840 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 5624 444 2431 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:2424: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs SKIP [1] tests/acceptance/cli_test.py:2403: 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:3777: windows paths ======= 1128 passed, 12 skipped, 2 xfailed, 3 xpassed in 858.46 seconds ======== ___________________________________ summary ____________________________________  py37: commands succeeded  congratulations :) + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-19.03.2-jenkins-compose-PR-6900-2 tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_host_port_range PASSED [ 53%] 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 [ 77%] 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 [ 79%] 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 [ 80%] 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%] compose-dind-19.03.2-jenkins-compose-PR-6900-2 tests/unit/service_test.py::ServiceTest::test_specifies_host_port_with_no_ports PASSED [ 54%] 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 [ 81%] 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 [ 82%] 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/service_test.py::ServiceTest::test_split_domainname_both PASSED [ 54%] 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 [ 83%] 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 [ 84%] 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 [ 86%] 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 [ 88%] 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_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%] [Pipeline] } tests/unit/service_test.py::ServiceTest::test_split_domainname_fqdn PASSED [ 54%] [Pipeline] // stage [Pipeline] } 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%] [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/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/service_test.py::ServiceTest::test_split_domainname_weird PASSED [ 54%] 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_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 [ 55%] 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 [ 56%] 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 87 13 22 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166 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 34 2 8 1 93% 17-18, 15->17 compose/cli/log_printer.py 149 10 52 6 91% 76, 103, 110-115, 164, 173, 226-229, 259, 43->exit, 75->76, 98->103, 171->173, 225->226, 234->240 compose/cli/main.py 693 90 290 40 84% 83-84, 86-87, 168, 329, 361-363, 446, 506, 510, 515-516, 526-555, 567, 585-587, 658-659, 697-698, 716, 737-738, 750, 773, 791, 838, 1070, 1079, 1108-1117, 1157-1160, 1168-1172, 1174-1179, 1202, 1224-1253, 1260-1261, 1263-1265, 1280, 1286, 1470, 1488, 1504, 1508-1509, 1520, 1525, 1528, 1554, 1573-1575, 1585, 1596, 60->63, 82->83, 85->86, 167->168, 328->329, 360->361, 445->446, 505->506, 509->510, 520->526, 564->567, 584->585, 656->658, 715->716, 736->737, 749->750, 772->773, 828->838, 830->exit, 1069->1070, 1078->1079, 1167->1168, 1173->1174, 1201->1202, 1259->1260, 1262->1263, 1279->1280, 1285->1286, 1469->1470, 1487->1488, 1503->1504, 1519->1520, 1524->1525, 1527->1528, 1546->exit, 1553->1554, 1567->1575, 1569->1573, 1584->1585, 1594->1596 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 30 388 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 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 36 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 441 34 182 15 91% 61, 157, 213-214, 255-256, 366-367, 370-375, 389-392, 445, 496, 500, 527, 631, 637, 640-643, 768-769, 775-778, 833, 842-845, 58->61, 153->157, 332->334, 364->366, 369->370, 388->389, 444->445, 495->496, 499->500, 526->527, 630->631, 636->637, 639->640, 687->exit, 771->778 compose/service.py 915 56 402 30 93% 67, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 492, 495, 513, 580, 625-626, 734, 953-954, 974-975, 1076, 1123, 1184, 1226, 1248-1263, 1303, 1342-1346, 1534, 1538, 1694, 1780, 1818, 1831, 1835-1836, 1840-1841, 64->67, 223->exit, 276->278, 299->300, 434->435, 476->477, 491->492, 494->495, 512->513, 570->580, 729->734, 952->953, 973->974, 1075->1076, 1122->1123, 1183->1184, 1225->1226, 1302->1303, 1339->1342, 1533->1534, 1537->1538, 1586->exit, 1594->1593, 1631->1628, 1693->1694, 1779->1780, 1817->1818, 1830->1831, 1834->1835, 1839->1840 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 5624 441 2254 206 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/integration/service_test.py:1674: Broken on 1.11.0 - 17.03.0 SKIP [1] tests/acceptance/cli_test.py:2376: race condition between up and logs SKIP [1] tests/unit/config/config_test.py:3777: windows paths SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] tests/acceptance/cli_test.py:2424: race condition between up and logs SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/acceptance/cli_test.py:2403: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 ======= 1129 passed, 11 skipped, 2 xfailed, 3 xpassed in 865.82 seconds ======== ___________________________________ summary ____________________________________  py27: commands succeeded  congratulations :) + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-19.03.2-jenkins-compose-PR-6900-2 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%] compose-dind-19.03.2-jenkins-compose-PR-6900-2 tests/unit/service_test.py::ServiceSecretTest::test_get_secret_volumes PASSED [ 56%] [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // wrap [Pipeline] } [Pipeline] // withDockerRegistry [Pipeline] } [Pipeline] // node [Pipeline] } 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 [ 57%] 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 [ 58%] 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 [ 59%] 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 [ 60%] tests/unit/cli/docker_client_test.py::DockerClientTestCase::test_custom_timeout_error PASSED [ 60%] 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 [ 61%] 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 [ 62%] tests/unit/cli/errors_test.py::TestHandleConnectionErrors::test_generic_connection_error PASSED [ 62%] 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 [ 63%] 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 [ 64%] tests/unit/cli/log_printer_test.py::TestWatchEvents::test_start_event PASSED [ 64%] 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 [ 65%] 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 [ 66%] tests/unit/cli/main_test.py::TestCallDocker::test_with_http_host PASSED [ 66%] 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_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 [ 71%] 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 [ 73%] 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 [ 75%] 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 [ 77%] 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 [ 79%] 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 [ 80%] 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 [ 81%] 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 [ 82%] 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 [ 83%] 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 [ 84%] 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 [ 86%] 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 [ 88%] 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_validation_empty_dictionary PASSED [ 88%] tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%] 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.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 87 13 22 3 82% 67-77, 117-122, 166, 66->67, 116->117, 163->166 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 34 2 8 1 93% 17-18, 15->17 compose/cli/log_printer.py 149 10 52 6 91% 76, 103, 110-115, 164, 173, 226-229, 259, 43->exit, 75->76, 98->103, 171->173, 225->226, 234->240 compose/cli/main.py 693 90 290 40 84% 83-84, 86-87, 168, 329, 361-363, 446, 506, 510, 515-516, 526-555, 567, 585-587, 658-659, 697-698, 716, 737-738, 750, 773, 791, 838, 1070, 1079, 1108-1117, 1157-1160, 1168-1172, 1174-1179, 1202, 1224-1253, 1260-1261, 1263-1265, 1280, 1286, 1470, 1488, 1504, 1508-1509, 1520, 1525, 1528, 1554, 1573-1575, 1585, 1596, 60->63, 82->83, 85->86, 167->168, 328->329, 360->361, 445->446, 505->506, 509->510, 520->526, 564->567, 584->585, 656->658, 715->716, 736->737, 749->750, 772->773, 828->838, 830->exit, 1069->1070, 1078->1079, 1167->1168, 1173->1174, 1201->1202, 1259->1260, 1262->1263, 1279->1280, 1285->1286, 1469->1470, 1487->1488, 1503->1504, 1519->1520, 1524->1525, 1527->1528, 1546->exit, 1553->1554, 1567->1575, 1569->1573, 1584->1585, 1594->1596 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 30 388 18 95% 266, 277, 508, 621-622, 714, 757, 812-830, 952-953, 959, 979, 982, 1335, 1366, 1412, 265->266, 276->277, 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 36 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 441 34 182 15 91% 61, 157, 213-214, 255-256, 366-367, 370-375, 389-392, 445, 496, 500, 527, 631, 637, 640-643, 768-769, 775-778, 833, 842-845, 58->61, 153->157, 332->334, 364->366, 369->370, 388->389, 444->445, 495->496, 499->500, 526->527, 630->631, 636->637, 639->640, 687->exit, 771->778 compose/service.py 915 56 402 30 93% 67, 278-279, 300, 373-376, 424-429, 435-437, 477-478, 492, 495, 513, 580, 625-626, 734, 953-954, 974-975, 1076, 1123, 1184, 1226, 1248-1263, 1303, 1342-1346, 1534, 1538, 1694, 1780, 1818, 1831, 1835-1836, 1840-1841, 64->67, 223->exit, 276->278, 299->300, 434->435, 476->477, 491->492, 494->495, 512->513, 570->580, 729->734, 952->953, 973->974, 1075->1076, 1122->1123, 1183->1184, 1225->1226, 1302->1303, 1339->1342, 1533->1534, 1537->1538, 1586->exit, 1594->1593, 1631->1628, 1693->1694, 1779->1780, 1817->1818, 1830->1831, 1834->1835, 1839->1840 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 5624 441 2254 207 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/acceptance/cli_test.py:2376: race condition between up and logs SKIP [1] tests/integration/service_test.py:150: cpu_percent is not supported for Linux SKIP [1] /code/tests/integration/testcases.py:167: This daemon does not support the 'nvidia'' runtime SKIP [1] tests/unit/config/config_test.py:3777: windows paths SKIP [1] tests/unit/cli/errors_test.py:70: Needs pywin32 SKIP [1] tests/acceptance/cli_test.py:2424: race condition between up and logs SKIP [1] tests/unit/cli/errors_test.py:80: Needs pywin32 SKIP [1] tests/unit/cli/command_test.py:39: windows separator SKIP [1] tests/unit/cli/errors_test.py:90: Needs pywin32 SKIP [1] tests/acceptance/cli_test.py:2403: race condition between up and logs ======= 1129 passed, 11 skipped, 2 xfailed, 3 xpassed in 874.13 seconds ======== ___________________________________ summary ____________________________________  py27: commands succeeded  congratulations :) + on_exit + [[ 0 != \0 ]] + docker rm -vf compose-dind-18.09.9-jenkins-compose-PR-6900-2 compose-dind-18.09.9-jenkins-compose-PR-6900-2 [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