mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-26 17:41:59 +00:00
11905682a9
Recently assert-on-tuple had been introduced in tests [1], let's prevent this. [1]: https://github.com/ClickHouse/ClickHouse/pull/56367#discussion_r1437098533 v2: pin flake8 to 4.0.1 (instead of originally 6.1) due to other dependencies, hope that it will find such errors Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
77 lines
2.2 KiB
Docker
77 lines
2.2 KiB
Docker
# docker build -t clickhouse/style-test .
|
|
FROM ubuntu:22.04
|
|
ARG ACT_VERSION=0.2.33
|
|
ARG ACTIONLINT_VERSION=1.6.22
|
|
|
|
# ARG for quick switch to a given ubuntu mirror
|
|
ARG apt_archive="http://archive.ubuntu.com"
|
|
RUN sed -i "s|http://archive.ubuntu.com|$apt_archive|g" /etc/apt/sources.list
|
|
|
|
RUN apt-get update && env DEBIAN_FRONTEND=noninteractive apt-get install --yes \
|
|
aspell \
|
|
curl \
|
|
git \
|
|
gh \
|
|
file \
|
|
libxml2-utils \
|
|
moreutils \
|
|
python3-pip \
|
|
yamllint \
|
|
locales \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/* /var/cache/debconf /tmp/*
|
|
|
|
# python-magic is the same version as in Ubuntu 22.04
|
|
RUN pip3 install \
|
|
PyGithub \
|
|
black==23.12.0 \
|
|
boto3 \
|
|
codespell==2.2.1 \
|
|
mypy==1.8.0 \
|
|
pylint==3.1.0 \
|
|
python-magic==0.4.24 \
|
|
flake8==4.0.1 \
|
|
requests \
|
|
thefuzz \
|
|
types-requests \
|
|
unidiff \
|
|
&& rm -rf /root/.cache/pip
|
|
|
|
RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen en_US.UTF-8
|
|
ENV LC_ALL en_US.UTF-8
|
|
|
|
# Architecture of the image when BuildKit/buildx is used
|
|
ARG TARGETARCH
|
|
|
|
ARG SHELLCHECK_VERSION=0.9.0
|
|
RUN arch=${TARGETARCH:-amd64} \
|
|
&& case $arch in \
|
|
amd64) sarch=x86_64 ;; \
|
|
arm64) sarch=aarch64 ;; \
|
|
esac \
|
|
&& curl -L \
|
|
"https://github.com/koalaman/shellcheck/releases/download/v${SHELLCHECK_VERSION}/shellcheck-v${SHELLCHECK_VERSION}.linux.${sarch}.tar.xz" \
|
|
| tar xJ --strip=1 -C /tmp \
|
|
&& mv /tmp/shellcheck /usr/bin \
|
|
&& rm -rf /tmp/*
|
|
|
|
|
|
# Get act and actionlint from releases
|
|
RUN arch=${TARGETARCH:-amd64} \
|
|
&& case $arch in \
|
|
amd64) act_arch=x86_64 ;; \
|
|
arm64) act_arch=$arch ;; \
|
|
esac \
|
|
&& curl -o /tmp/act.tgz -L \
|
|
"https://github.com/nektos/act/releases/download/v${ACT_VERSION}/act_Linux_${act_arch}.tar.gz" \
|
|
&& tar xf /tmp/act.tgz -C /usr/bin act \
|
|
&& rm /tmp/act.tgz \
|
|
&& curl -o /tmp/actiolint.zip -L \
|
|
"https://github.com/rhysd/actionlint/releases/download/v${ACTIONLINT_VERSION}/actionlint_${ACTIONLINT_VERSION}_linux_${arch}.tar.gz" \
|
|
&& tar xf /tmp/actiolint.zip -C /usr/bin actionlint \
|
|
&& rm /tmp/actiolint.zip
|
|
|
|
|
|
COPY run.sh /
|
|
CMD ["/bin/bash", "/run.sh"]
|