diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 17465af27d..4764c8890e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,6 +29,44 @@ jobs: sudo -E ./ci/setup_thrift.sh ./ci/do_ci.sh cmake.test + # + # This build uses the latest libraries compatible + # with C++11 + # + cmake_gcc_maintainer_cpp11_async_test: + name: CMake gcc 12 (maintainer mode, C++11, async) + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + submodules: 'recursive' + - name: setup + env: + CC: /usr/bin/gcc-12 + CXX: /usr/bin/g++-12 + GOOGLETEST_VERSION: 1.12.1 + PROTOBUF_VERSION: 21.12 + run: | + sudo -E ./ci/setup_cmake.sh + sudo -E ./ci/setup_ci_environment.sh + sudo -E ./ci/install_protobuf.sh + - name: run cmake gcc (maintainer mode, async) + env: + CC: /usr/bin/gcc-12 + CXX: /usr/bin/g++-12 + run: | + sudo -E ./ci/setup_thrift.sh + ./ci/do_ci.sh cmake.maintainer.cpp11.async.test + - name: generate test cert + env: + CFSSL_VERSION: 1.6.3 + run: | + sudo -E ./tools/setup-cfssl.sh + (cd ./functional/cert; ./generate_cert.sh) + - name: run func test + run: | + (cd ./functional/otlp; ./run_test.sh) + cmake_gcc_maintainer_sync_test: name: CMake gcc 12 (maintainer mode, sync) runs-on: ubuntu-latest diff --git a/ci/do_ci.sh b/ci/do_ci.sh index 64d3b72308..04fdbc483c 100755 --- a/ci/do_ci.sh +++ b/ci/do_ci.sh @@ -138,6 +138,31 @@ elif [[ "$1" == "cmake.maintainer.async.test" ]]; then make -k -j $(nproc) make test exit 0 +elif [[ "$1" == "cmake.maintainer.cpp11.async.test" ]]; then + cd "${BUILD_DIR}" + rm -rf * + cmake -DCMAKE_BUILD_TYPE=Debug \ + -DCMAKE_CXX_STANDARD=11 \ + -DWITH_OTLP=ON \ + -DWITH_OTLP_HTTP=ON \ + -DWITH_OTLP_HTTP_SSL_PREVIEW=ON \ + -DWITH_OTLP_HTTP_SSL_TLS_PREVIEW=ON \ + -DWITH_PROMETHEUS=ON \ + -DWITH_EXAMPLES=ON \ + -DWITH_EXAMPLES_HTTP=ON \ + -DWITH_ZIPKIN=ON \ + -DWITH_JAEGER=OFF \ + -DBUILD_W3CTRACECONTEXT_TEST=ON \ + -DWITH_ELASTICSEARCH=ON \ + -DWITH_LOGS_PREVIEW=ON \ + -DWITH_METRICS_EXEMPLAR_PREVIEW=ON \ + -DWITH_ASYNC_EXPORT_PREVIEW=ON \ + -DOTELCPP_MAINTAINER_MODE=ON \ + -DWITH_NO_DEPRECATED_CODE=ON \ + "${SRC_DIR}" + make -k -j $(nproc) + make test + exit 0 elif [[ "$1" == "cmake.with_async_export.test" ]]; then cd "${BUILD_DIR}" rm -rf *