ClickHouse/docker/test/coverage/Dockerfile

36 lines
1.2 KiB
Docker
Raw Normal View History

2019-07-05 15:12:18 +00:00
# docker build -t yandex/clickhouse-coverage .
2019-07-08 11:09:46 +00:00
FROM yandex/clickhouse-deb-builder
2019-07-05 15:12:18 +00:00
RUN apt-get --allow-unauthenticated update -y \
&& env DEBIAN_FRONTEND=noninteractive \
apt-get --allow-unauthenticated install --yes --no-install-recommends \
bash \
fakeroot \
cmake \
ccache \
curl \
software-properties-common
RUN apt-get --allow-unauthenticated update -y \
&& env DEBIAN_FRONTEND=noninteractive \
apt-get --allow-unauthenticated install --yes --no-install-recommends \
perl \
lcov \
clang-10 \
llvm-10 \
2019-07-05 15:12:18 +00:00
tzdata
ENV COVERAGE_DIR=/coverage_reports
ENV SOURCE_DIR=/build
ENV OUTPUT_DIR=/output
2019-07-05 15:18:48 +00:00
ENV IGNORE='.*contrib.*'
2019-07-05 15:12:18 +00:00
CMD mkdir -p /build/obj-x86_64-linux-gnu && cd /build/obj-x86_64-linux-gnu && CC=clang-10 CXX=clang++-10 cmake .. && cd /; \
2019-07-08 11:09:46 +00:00
dpkg -i /package_folder/clickhouse-common-static_*.deb; \
llvm-profdata-10 merge -sparse ${COVERAGE_DIR}/* -o clickhouse.profdata && \
llvm-cov-10 export /usr/bin/clickhouse -instr-profile=clickhouse.profdata -j=16 -format=lcov -skip-functions -ignore-filename-regex $IGNORE > output.lcov && \
genhtml output.lcov --ignore-errors source --output-directory ${OUTPUT_DIR}