mirror of
https://github.com/zerotier/ZeroTierOne.git
synced 2025-08-03 07:22:51 +02:00
58 lines
No EOL
1.5 KiB
Text
58 lines
No EOL
1.5 KiB
Text
# Copyright The OpenTelemetry Authors
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
FROM otel/cpp_format_tools
|
|
|
|
ARG USER_UID=1000
|
|
ARG USER_GID=1000
|
|
ARG INSTALL_PACKAGES=
|
|
|
|
ARG CXX_STANDARD=17
|
|
ARG CMAKE_VERSION=3.31.6
|
|
ARG ABSEIL_CPP_VERSION=20230125.3
|
|
ARG PROTOBUF_VERSION=23.3
|
|
ARG GRPC_VERSION=v1.55.0
|
|
|
|
ENV CXX_STANDARD=${CXX_STANDARD}
|
|
ENV CMAKE_VERSION=${CMAKE_VERSION}
|
|
ENV ABSEIL_CPP_VERSION=${ABSEIL_CPP_VERSION}
|
|
ENV PROTOBUF_VERSION=${PROTOBUF_VERSION}
|
|
ENV GRPC_VERSION=${GRPC_VERSION}
|
|
|
|
COPY ci /opt/ci
|
|
|
|
RUN apt update && apt install -y wget \
|
|
ninja-build \
|
|
libcurl4-openssl-dev \
|
|
clang-tidy \
|
|
shellcheck
|
|
|
|
RUN cd /opt/ci && bash setup_cmake.sh
|
|
RUN cd /opt/ci && bash setup_ci_environment.sh
|
|
RUN cd /opt && bash ci/setup_googletest.sh \
|
|
&& bash ci/install_abseil.sh \
|
|
&& bash ci/install_protobuf.sh \
|
|
&& bash ci/setup_grpc.sh -r $GRPC_VERSION -s $CXX_STANDARD -p protobuf -p abseil-cpp
|
|
|
|
ADD https://github.com/bazelbuild/bazelisk/releases/download/v1.22.1/bazelisk-linux-amd64 /usr/local/bin
|
|
|
|
RUN git config --global core.autocrlf input \
|
|
&& chmod +x /usr/local/bin/bazelisk-linux-amd64
|
|
|
|
ENV INSTALL_PACKAGES=${INSTALL_PACKAGES}
|
|
ENV USER_NAME=devuser
|
|
ENV USER_UID=${USER_UID}
|
|
ENV USER_GID=${USER_GID}
|
|
ENV IS_CONTAINER_BUILD=true
|
|
|
|
COPY ./.devcontainer/customize_container.sh /tmp/opentelemetry_cpp/devcontainer/customize_container.sh
|
|
RUN /tmp/opentelemetry_cpp/devcontainer/customize_container.sh
|
|
RUN apt install -y npm && npm install -g markdownlint-cli@0.44.0
|
|
|
|
USER devuser
|
|
|
|
WORKDIR /workspaces/opentelemetry-cpp
|
|
|
|
ENTRYPOINT []
|
|
|
|
CMD ["/bin/bash"] |