@@ -4,31 +4,48 @@ FROM ubuntu:20.04 AS base
44ENV DEBIAN_FRONTEND=noninteractive
55RUN apt-get update && \
66 apt-get install -y locales && \
7- apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
87 localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 && \
9- rm -rf /var/lib/apt/lists/*
8+ apt-get clean && \
9+ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
1010ENV LANG=en_US.UTF-8
1111
1212# Using apt-get update alone in a RUN statement causes caching issues and subsequent apt-get install instructions fail.
13- RUN apt-get --quiet update && apt-get --quiet install -y \
14- software-properties-common \
15- bash \
16- python3 \
17- python3-pip \
18- git \
19- curl \
20- tar \
21- wget \
22- && rm -rf /var/lib/apt/lists/*
13+ RUN apt-get update && \
14+ apt-get install -y \
15+ software-properties-common \
16+ bash \
17+ python3 \
18+ python3-pip \
19+ git \
20+ curl \
21+ tar \
22+ wget && \
23+ apt-get clean && \
24+ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
2325
2426# Install Build Tools
2527RUN apt-get update && \
2628 apt-get install -y --no-install-recommends \
27- make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev \
28- libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev \
29- libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev \
29+ make \
30+ build-essential \
31+ libssl-dev \
32+ zlib1g-dev \
33+ libbz2-dev \
34+ libreadline-dev\
35+ libsqlite3-dev \
36+ wget \
37+ curl \
38+ llvm \
39+ libncurses5-dev \
40+ xz-utils \
41+ tk-dev\
42+ libxml2-dev \
43+ libxmlsec1-dev \
44+ libffi-dev \
45+ liblzma-dev\
3046 ca-certificates && \
31- apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
47+ apt-get clean && \
48+ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
3249
3350# Install pyenv
3451RUN git clone https://github.com/pyenv/pyenv.git .pyenv
@@ -62,20 +79,22 @@ RUN for version in $PYTHON_VERSIONS; do \
6279 python$version -m pip install -U coverage tox; \
6380 done
6481
82+ ARG TIME_WARP
83+ ENV DRIVER_TIME_WARP=$TIME_WARP
84+
6585
6686FROM base-py-install AS backend-timewarp
6787WORKDIR /home/root/testkit
6888COPY requirements*.txt .
69- COPY testkit/backend.py testkit/build.py testkit/_common.py .
89+ COPY testkit/backend.py testkit/build.py testkit/_common.py testkit/
7090RUN sed -i 's|-e \. .*$||' requirements*.txt
7191
72- ARG TIME_WARP
7392RUN for version in $PYTHON_VERSIONS; do \
74- TEST_BACKEND_VERSION="python$version" python build.py && \
75- python$version -m pip install --force-reinstall neo4j==${ TIME_WARP} ; \
93+ TEST_BACKEND_VERSION="python$version" python testkit/ build.py && \
94+ python$version -m pip install --force-reinstall neo4j==$TIME_WARP; \
7695 done
7796COPY testkitbackend ./testkitbackend
78- ENTRYPOINT ["python" , "backend.py" ]
97+ ENTRYPOINT ["python" , "testkit/ backend.py" ]
7998
8099
81100FROM base-py-install AS backend
@@ -88,7 +107,6 @@ RUN update-ca-certificates
88107
89108
90109FROM backend${TIME_WARP:+"-timewarp" } AS final
91- ARG TIME_WARP
92- ENV DRIVER_TIME_WARP=$TIME_WARP
110+ RUN env
93111WORKDIR /home/root/testkit
94112EXPOSE 9876/tcp
0 commit comments