2022-01-13 18:03:34 +00:00
|
|
|
# rebuild in #33610
|
2021-09-06 11:33:39 +00:00
|
|
|
# docker build -t clickhouse/stateless-test .
|
2021-12-24 15:10:06 +00:00
|
|
|
ARG FROM_TAG=latest
|
|
|
|
FROM clickhouse/test-base:$FROM_TAG
|
2018-11-07 19:25:02 +00:00
|
|
|
|
2024-02-22 13:30:21 +00:00
|
|
|
ARG odbc_driver_url="https://github.com/ClickHouse/clickhouse-odbc/releases/download/v1.1.6.20200320/clickhouse-odbc-1.1.6-Linux.tar.gz"
|
2020-02-25 00:51:28 +00:00
|
|
|
|
2022-06-10 12:51:18 +00:00
|
|
|
# golang version 1.13 on Ubuntu 20 is enough for tests
|
2018-11-07 19:25:02 +00:00
|
|
|
RUN apt-get update -y \
|
|
|
|
&& env DEBIAN_FRONTEND=noninteractive \
|
|
|
|
apt-get install --yes --no-install-recommends \
|
2022-06-10 12:51:18 +00:00
|
|
|
awscli \
|
2020-08-27 10:17:17 +00:00
|
|
|
brotli \
|
2022-10-05 01:24:49 +00:00
|
|
|
lz4 \
|
2018-11-07 19:25:02 +00:00
|
|
|
expect \
|
2022-06-10 12:51:18 +00:00
|
|
|
golang \
|
2020-08-27 10:17:17 +00:00
|
|
|
lsof \
|
2022-06-10 12:51:18 +00:00
|
|
|
mysql-client=8.0* \
|
2020-08-27 10:17:17 +00:00
|
|
|
ncdu \
|
|
|
|
netcat-openbsd \
|
2022-07-18 14:14:23 +00:00
|
|
|
nodejs \
|
|
|
|
npm \
|
2023-06-19 16:49:54 +00:00
|
|
|
odbcinst \
|
2022-06-10 12:51:18 +00:00
|
|
|
openjdk-11-jre-headless \
|
2020-08-27 10:17:17 +00:00
|
|
|
openssl \
|
2022-06-10 12:51:18 +00:00
|
|
|
postgresql-client \
|
2020-10-02 16:54:07 +00:00
|
|
|
python3 \
|
2022-06-10 12:51:18 +00:00
|
|
|
python3-pip \
|
2020-08-27 10:17:17 +00:00
|
|
|
qemu-user-static \
|
2022-06-10 12:51:18 +00:00
|
|
|
sqlite3 \
|
2018-11-07 19:25:02 +00:00
|
|
|
sudo \
|
2020-02-06 15:06:44 +00:00
|
|
|
tree \
|
2020-02-25 00:51:28 +00:00
|
|
|
unixodbc \
|
2022-01-09 19:52:03 +00:00
|
|
|
rustc \
|
2022-02-19 17:23:19 +00:00
|
|
|
cargo \
|
2022-06-10 12:51:18 +00:00
|
|
|
zstd \
|
2022-07-14 19:41:32 +00:00
|
|
|
file \
|
2023-09-07 12:59:33 +00:00
|
|
|
jq \
|
2022-08-10 17:41:29 +00:00
|
|
|
pv \
|
2023-07-31 13:27:06 +00:00
|
|
|
zip \
|
2024-03-28 15:08:24 +00:00
|
|
|
unzip \
|
2023-07-31 13:27:06 +00:00
|
|
|
p7zip-full \
|
2024-01-29 13:00:22 +00:00
|
|
|
&& apt-get clean \
|
|
|
|
&& rm -rf /var/lib/apt/lists/* /var/cache/debconf /tmp/*
|
2019-02-12 19:19:12 +00:00
|
|
|
|
2024-03-28 15:08:24 +00:00
|
|
|
ARG PROTOC_VERSION=25.1
|
|
|
|
RUN curl -OL https://github.com/protocolbuffers/protobuf/releases/download/v${PROTOC_VERSION}/protoc-${PROTOC_VERSION}-linux-x86_64.zip \
|
|
|
|
&& unzip protoc-${PROTOC_VERSION}-linux-x86_64.zip -d /usr/local \
|
|
|
|
&& rm protoc-${PROTOC_VERSION}-linux-x86_64.zip
|
|
|
|
|
2024-07-03 19:58:18 +00:00
|
|
|
COPY requirements.txt /
|
|
|
|
RUN pip3 install --no-cache-dir -r /requirements.txt
|
2020-10-14 18:52:23 +00:00
|
|
|
|
2020-02-25 00:51:28 +00:00
|
|
|
RUN mkdir -p /tmp/clickhouse-odbc-tmp \
|
2024-02-22 13:30:21 +00:00
|
|
|
&& cd /tmp/clickhouse-odbc-tmp \
|
|
|
|
&& curl -L ${odbc_driver_url} | tar --strip-components=1 -xz clickhouse-odbc-1.1.6-Linux \
|
|
|
|
&& mkdir /usr/local/lib64 -p \
|
|
|
|
&& cp /tmp/clickhouse-odbc-tmp/lib64/*.so /usr/local/lib64/ \
|
|
|
|
&& odbcinst -i -d -f /tmp/clickhouse-odbc-tmp/share/doc/clickhouse-odbc/config/odbcinst.ini.sample \
|
|
|
|
&& odbcinst -i -s -l -f /tmp/clickhouse-odbc-tmp/share/doc/clickhouse-odbc/config/odbc.ini.sample \
|
|
|
|
&& sed -i 's"=libclickhouseodbc"=/usr/local/lib64/libclickhouseodbc"' /etc/odbcinst.ini \
|
|
|
|
&& rm -rf /tmp/clickhouse-odbc-tmp
|
2018-11-07 19:25:02 +00:00
|
|
|
|
2023-07-30 03:18:52 +00:00
|
|
|
ENV TZ=Europe/Amsterdam
|
2018-11-07 19:25:02 +00:00
|
|
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
|
|
|
|
2020-09-29 09:44:28 +00:00
|
|
|
ENV NUM_TRIES=1
|
2020-10-21 16:39:39 +00:00
|
|
|
ENV MAX_RUN_TIME=0
|
2020-09-29 09:44:28 +00:00
|
|
|
|
2022-06-10 16:11:45 +00:00
|
|
|
# Unrelated to vars in setup_minio.sh, but should be the same there
|
|
|
|
# to have the same binaries for local running scenario
|
|
|
|
ARG MINIO_SERVER_VERSION=2022-01-03T18-22-58Z
|
|
|
|
ARG MINIO_CLIENT_VERSION=2022-01-05T23-52-51Z
|
2022-01-06 09:04:17 +00:00
|
|
|
ARG TARGETARCH
|
|
|
|
|
2021-08-27 14:22:04 +00:00
|
|
|
# Download Minio-related binaries
|
2022-01-06 09:04:17 +00:00
|
|
|
RUN arch=${TARGETARCH:-amd64} \
|
2024-02-13 20:09:06 +00:00
|
|
|
&& curl -L "https://dl.min.io/server/minio/release/linux-${arch}/archive/minio.RELEASE.${MINIO_SERVER_VERSION}" -o ./minio \
|
|
|
|
&& curl -L "https://dl.min.io/client/mc/release/linux-${arch}/archive/mc.RELEASE.${MINIO_CLIENT_VERSION}" -o ./mc \
|
2022-06-10 12:51:18 +00:00
|
|
|
&& chmod +x ./mc ./minio
|
2021-08-27 14:22:04 +00:00
|
|
|
|
2024-02-13 20:09:06 +00:00
|
|
|
RUN curl -L --no-verbose -O 'https://archive.apache.org/dist/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz' \
|
2022-06-03 13:54:29 +00:00
|
|
|
&& tar -xvf hadoop-3.3.1.tar.gz \
|
|
|
|
&& rm -rf hadoop-3.3.1.tar.gz
|
|
|
|
|
2021-08-29 19:32:37 +00:00
|
|
|
ENV MINIO_ROOT_USER="clickhouse"
|
|
|
|
ENV MINIO_ROOT_PASSWORD="clickhouse"
|
2022-02-25 10:04:16 +00:00
|
|
|
ENV EXPORT_S3_STORAGE_POLICIES=1
|
2021-08-26 21:53:32 +00:00
|
|
|
|
2024-05-04 10:24:07 +00:00
|
|
|
RUN npm install -g azurite@3.30.0 \
|
|
|
|
&& npm install -g tslib && npm install -g node
|
2022-07-18 14:14:23 +00:00
|
|
|
|
2020-07-08 08:41:39 +00:00
|
|
|
COPY run.sh /
|
2021-08-26 21:53:32 +00:00
|
|
|
COPY setup_minio.sh /
|
2022-06-03 13:54:29 +00:00
|
|
|
COPY setup_hdfs_minicluster.sh /
|
2023-09-15 11:24:47 +00:00
|
|
|
COPY attach_gdb.lib /
|
|
|
|
COPY utils.lib /
|
|
|
|
|
|
|
|
# We store stress_tests.lib in stateless image to avoid duplication of this file in stress and upgrade tests
|
|
|
|
COPY stress_tests.lib /
|
2023-08-10 02:44:20 +00:00
|
|
|
|
2020-07-08 08:41:39 +00:00
|
|
|
CMD ["/bin/bash", "/run.sh"]
|