2020-07-07 12:35:06 +00:00
|
|
|
# docker build -t yandex/clickhouse-testflows-runner .
|
|
|
|
FROM ubuntu:20.04
|
|
|
|
|
|
|
|
RUN apt-get update \
|
|
|
|
&& env DEBIAN_FRONTEND=noninteractive apt-get install --yes \
|
|
|
|
ca-certificates \
|
|
|
|
bash \
|
|
|
|
btrfs-progs \
|
|
|
|
e2fsprogs \
|
|
|
|
iptables \
|
|
|
|
xfsprogs \
|
|
|
|
tar \
|
|
|
|
pigz \
|
|
|
|
wget \
|
|
|
|
git \
|
|
|
|
iproute2 \
|
|
|
|
cgroupfs-mount \
|
|
|
|
python3-pip \
|
|
|
|
tzdata \
|
|
|
|
libreadline-dev \
|
|
|
|
libicu-dev \
|
|
|
|
bsdutils \
|
|
|
|
curl \
|
|
|
|
liblua5.1-dev \
|
|
|
|
luajit \
|
|
|
|
libssl-dev \
|
|
|
|
libcurl4-openssl-dev \
|
|
|
|
gdb \
|
|
|
|
&& rm -rf \
|
|
|
|
/var/lib/apt/lists/* \
|
|
|
|
/var/cache/debconf \
|
|
|
|
/tmp/* \
|
|
|
|
&& apt-get clean
|
|
|
|
|
|
|
|
ENV TZ=Europe/Moscow
|
|
|
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
|
|
|
|
2021-05-10 22:20:46 +00:00
|
|
|
RUN pip3 install urllib3 testflows==1.6.90 docker-compose==1.29.1 docker==5.0.0 dicttoxml kazoo tzlocal python-dateutil numpy
|
2020-07-07 12:35:06 +00:00
|
|
|
|
|
|
|
ENV DOCKER_CHANNEL stable
|
2021-05-10 20:59:47 +00:00
|
|
|
ENV DOCKER_VERSION 20.10.6
|
2020-07-07 12:35:06 +00:00
|
|
|
|
|
|
|
RUN set -eux; \
|
|
|
|
\
|
|
|
|
# this "case" statement is generated via "update.sh"
|
|
|
|
\
|
2020-09-01 07:08:54 +00:00
|
|
|
if ! wget -nv -O docker.tgz "https://download.docker.com/linux/static/${DOCKER_CHANNEL}/x86_64/docker-${DOCKER_VERSION}.tgz"; then \
|
2020-07-07 12:35:06 +00:00
|
|
|
echo >&2 "error: failed to download 'docker-${DOCKER_VERSION}' from '${DOCKER_CHANNEL}' for '${x86_64}'"; \
|
|
|
|
exit 1; \
|
|
|
|
fi; \
|
|
|
|
\
|
|
|
|
tar --extract \
|
|
|
|
--file docker.tgz \
|
|
|
|
--strip-components 1 \
|
|
|
|
--directory /usr/local/bin/ \
|
|
|
|
; \
|
|
|
|
rm docker.tgz; \
|
|
|
|
\
|
|
|
|
dockerd --version; \
|
|
|
|
docker --version
|
|
|
|
|
|
|
|
COPY modprobe.sh /usr/local/bin/modprobe
|
|
|
|
COPY dockerd-entrypoint.sh /usr/local/bin/
|
2021-02-26 11:43:58 +00:00
|
|
|
COPY process_testflows_result.py /usr/local/bin/
|
2020-07-07 12:35:06 +00:00
|
|
|
|
|
|
|
RUN set -x \
|
|
|
|
&& addgroup --system dockremap \
|
|
|
|
&& adduser --system dockremap \
|
|
|
|
&& adduser dockremap dockremap \
|
|
|
|
&& echo 'dockremap:165536:65536' >> /etc/subuid \
|
|
|
|
&& echo 'dockremap:165536:65536' >> /etc/subgid
|
|
|
|
|
|
|
|
VOLUME /var/lib/docker
|
|
|
|
EXPOSE 2375
|
|
|
|
ENTRYPOINT ["dockerd-entrypoint.sh"]
|
2021-02-26 22:20:49 +00:00
|
|
|
CMD ["sh", "-c", "python3 regression.py --no-color -o classic --local --clickhouse-binary-path ${CLICKHOUSE_TESTS_SERVER_BIN_PATH} --log test.log ${TESTFLOWS_OPTS}; cat test.log | tfs report results --format json > results.json; /usr/local/bin/process_testflows_result.py || echo -e 'failure\tCannot parse results' > check_status.tsv"]
|