@@ -72,17 +72,6 @@ RUN set -x \
7272 esac \
7373 && rm -rf "$GOPATH"
7474
75-
76-
77- FROM base AS docker-py
78- # Get the "docker-py" source so we can run their integration tests
79- ENV DOCKER_PY_COMMIT ac922192959870774ad8428344d9faa0555f7ba6
80- RUN git clone https://github.com/docker/docker-py.git /build \
81- && cd /build \
82- && git checkout -q $DOCKER_PY_COMMIT
83-
84-
85-
8675FROM base AS swagger
8776# Install go-swagger for validating swagger.yaml
8877ENV GO_SWAGGER_COMMIT c28258affb0b6251755d92489ef685af8d4ff3eb
@@ -93,7 +82,6 @@ RUN set -x \
9382 && go build -o /build/swagger github.com/go-swagger/go-swagger/cmd/swagger \
9483 && rm -rf "$GOPATH"
9584
96-
9785FROM base AS frozen-images
9886RUN apt-get update && apt-get install -y jq ca-certificates --no-install-recommends
9987# Get useful and necessary Hub images so we can "docker load" locally instead of pulling
@@ -144,6 +132,12 @@ COPY hack/dockerfile/install/install.sh ./install.sh
144132COPY hack/dockerfile/install/$INSTALL_BINARY_NAME.installer ./
145133RUN PREFIX=/build/ ./install.sh $INSTALL_BINARY_NAME
146134
135+ FROM base AS gotestsum
136+ ENV INSTALL_BINARY_NAME=gotestsum
137+ COPY hack/dockerfile/install/install.sh ./install.sh
138+ COPY hack/dockerfile/install/$INSTALL_BINARY_NAME.installer ./
139+ RUN PREFIX=/build ./install.sh $INSTALL_BINARY_NAME
140+
147141FROM base AS dockercli
148142ENV INSTALL_BINARY_NAME=dockercli
149143COPY hack/dockerfile/install/install.sh ./install.sh
@@ -186,25 +180,14 @@ RUN apt-get update && apt-get install -y \
186180 jq \
187181 libcap2-bin \
188182 libdevmapper-dev \
189- # libffi-dev and libssl-dev appear to be required for compiling paramiko on s390x/ppc64le
190- libffi-dev \
191- libssl-dev \
192183 libudev-dev \
193184 libsystemd-dev \
194185 binutils-mingw-w64 \
195186 g++-mingw-w64-x86-64 \
196187 net-tools \
197188 pigz \
198- python-backports.ssl-match-hostname \
199- python-dev \
200- # python-cffi appears to be required for compiling paramiko on s390x/ppc64le
201- python-cffi \
202- python-mock \
203- python-pip \
204- python-requests \
205- python-setuptools \
206- python-websocket \
207- python-wheel \
189+ python3-pip \
190+ python3-setuptools \
208191 thin-provisioning-tools \
209192 vim \
210193 vim-common \
@@ -213,9 +196,13 @@ RUN apt-get update && apt-get install -y \
213196 bzip2 \
214197 xz-utils \
215198 --no-install-recommends
199+
200+ RUN pip3 install yamllint==1.16.0
201+
216202COPY --from=swagger /build/swagger* /usr/local/bin/
217203COPY --from=frozen-images /build/ /docker-frozen-images
218204COPY --from=gometalinter /build/ /usr/local/bin/
205+ COPY --from=gotestsum /build/ /usr/local/bin/
219206COPY --from=tomlv /build/ /usr/local/bin/
220207COPY --from=vndr /build/ /usr/local/bin/
221208COPY --from=tini /build/ /usr/local/bin/
@@ -225,16 +212,6 @@ COPY --from=proxy /build/ /usr/local/bin/
225212COPY --from=dockercli /build/ /usr/local/cli
226213COPY --from=registry /build/registry* /usr/local/bin/
227214COPY --from=criu /build/ /usr/local/
228- COPY --from=docker-py /build/ /docker-py
229- # TODO: This is for the docker-py tests, which shouldn't really be needed for
230- # this image, but currently CI is expecting to run this image. This should be
231- # split out into a separate image, including all the `python-*` deps installed
232- # above.
233- RUN cd /docker-py \
234- && pip install docker-pycreds==0.4.0 \
235- && pip install paramiko==2.4.2 \
236- && pip install yamllint==1.5.0 \
237- && pip install -r test-requirements.txt
238215
239216ENV PATH=/usr/local/cli:$PATH
240217ENV DOCKER_BUILDTAGS apparmor seccomp selinux
0 commit comments