From 18fa4ad5f355f0be7588568a60dfc56c6f42d4c3 Mon Sep 17 00:00:00 2001 From: "Ilya.Kazakevich" Date: Tue, 19 Nov 2024 22:00:00 +0100 Subject: [PATCH] Python tests: Update docker image to include docker-cli which might be used in tests GitOrigin-RevId: cea406e7964fbaa6f88473a5ceef0b892108f2c4 --- python/setup-test-environment/Dockerfile | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/python/setup-test-environment/Dockerfile b/python/setup-test-environment/Dockerfile index c2a3d1878367..be4aa0648ae1 100644 --- a/python/setup-test-environment/Dockerfile +++ b/python/setup-test-environment/Dockerfile @@ -1,32 +1,40 @@ +# registry.jetbrains.team/p/ij/test-containers/pycharm-tests +# https://buildserver.labs.intellij.net/buildConfiguration/ijplatform_master_PyCharmEnvTestsLinuxInDocker_SetupTestEnvironment ARG BASE_IMAGE=debian:12 -FROM $BASE_IMAGE AS BUILDER -LABEL maintainer="Andrey Lisin" +FROM $BASE_IMAGE AS builder +LABEL maintainer="Ilya Kazakevich" # Pythons will go here ENV PYCHARM_PYTHONS=/pythons/ RUN apt-get update && \ - apt-get install -y curl gcc make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget \ + apt-get install -y curl gcc make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget pgp \ llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python3-pip default-jre-headless && \ rm -rf /var/lib/apt/lists/* +RUN curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /docker-archive-keyring.gpg +# To install docker ADD . . RUN ./gradlew build ############################ -FROM $BASE_IMAGE AS RUNNER +FROM $BASE_IMAGE AS runner +COPY --from=builder /docker-archive-keyring.gpg /usr/share/keyrings/docker-archive-keyring.gpg +RUN echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian bookworm stable" > /etc/apt/sources.list.d/docker.list + # xterm installs freetype, xlib, cb etc. GL is also required by some python tests -RUN apt-get update && apt-get install -y openssl libgl1 xterm locales libsqlite3-dev && \ - rm -rf /var/lib/apt/lists/* +# First, install certs to install docker. Then update, then install docker and other tools +# Docker cli is used in tests +RUN apt-get update && apt-get install -y ca-certificates && apt upgrade && apt-get update && apt-get install -y openssl libgl1 xterm locales libsqlite3-dev apt-transport-https ca-certificates curl software-properties-common docker-ce-cli && rm -rf /var/lib/apt/lists/* # UTF locale is required for testFileEncoding # libsqlite3 is for Django RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \ locale-gen -ENV LC_ALL en_US.UTF-8 +ENV LC_ALL=en_US.UTF-8 ENV PYCHARM_PYTHONS=/pythons/ ENV CONDA_PATH=/pythons/conda/bin/conda