-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathDockerfile
36 lines (34 loc) · 1.19 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
ARG BASE=debian:bullseye
FROM ${BASE}
# install debian packages:
ENV DEBIAN_FRONTEND=noninteractive
RUN set -e -x; \
echo 'Acquire::Retries "3";' > /etc/apt/apt.conf.d/80-retries; \
apt-get update; \
apt-get install -y --no-install-recommends \
# infra
ca-certificates python3-yaml \
# build
cmake pkg-config make gcc g++ \
# coverage report
curl lcov \
# clang
clang clang-tidy clang-format \
# C/C++ linters \
cppcheck iwyu \
# used by clang-format
git \
# cpack
file dpkg-dev \
# base system (su)
util-linux; \
# In bookworm we need libclang-rt-dev for asan, etc.
apt-get install -y --no-install-recommends libclang-rt-dev || true; \
# ctest -D ExperimentalMemCheck; may not work in all architectures
apt-get install -y --no-install-recommends valgrind || true; \
# setup su for dep installation
sed -i '/pam_rootok.so$/aauth sufficient pam_permit.so' /etc/pam.d/su; \
# make git trust all directories to avoid issues in CI
git config --system --add safe.directory '*'
ADD entrypoint /usr/local/bin/entrypoint
CMD ["/usr/local/bin/entrypoint"]