diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..81ec915 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,8 @@ +* +!.clang-format +!.clang-tidy +!cmake +!CMakeLists.txt +!include +!src +!test diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..ccf9b6c --- /dev/null +++ b/Dockerfile @@ -0,0 +1,24 @@ +FROM alpine:3.20.3 + +RUN apk add --no-cache clang18 cmake git gtest-dev make + +ENV CXX=clang++-18 +ENV CC=clang-18 + +WORKDIR /build + +ENV OPENTELEMETRY_CPP_VERSION=v1.16.1 +RUN \ + git clone https://github.com/open-telemetry/opentelemetry-cpp.git \ + --depth=1 -b "${OPENTELEMETRY_CPP_VERSION}" --single-branch && \ + cd opentelemetry-cpp && \ + cmake \ + -B build \ + -DWITH_DEPRECATED_SDK_FACTORY=OFF -DWITH_NO_DEPRECATED_CODE=ON -DWITH_OTLP_HTTP=OFF \ + -DBUILD_TESTING=OFF -DWITH_BENCHMARK=OFF -DWITH_FUNC_TESTS=OFF -DWITH_EXAMPLES=OFF && \ + cmake --build build -j "$(nproc)" && \ + cmake --install build + +WORKDIR /build/opentelemetry_exporter_syslog_logs +COPY . . +RUN cmake -B build && cmake --build build && cmake --install build && ctest --test-dir build