From 7a68bb394cbf5fecc02ac5ede317b5d1036deb48 Mon Sep 17 00:00:00 2001 From: Doug Barker Date: Mon, 16 Jun 2025 00:46:38 -0600 Subject: [PATCH] [CI] rely on github installed cmake for ci runners (#3482) --- .devcontainer/Dockerfile.dev | 6 ++--- .devcontainer/README.md | 7 ------ .devcontainer/devcontainer.json | 1 - .github/workflows/ci.yml | 38 ----------------------------- .github/workflows/cmake_install.yml | 26 -------------------- .github/workflows/iwyu.yml | 4 +-- 6 files changed, 4 insertions(+), 78 deletions(-) diff --git a/.devcontainer/Dockerfile.dev b/.devcontainer/Dockerfile.dev index decee711fc..e94e293acd 100644 --- a/.devcontainer/Dockerfile.dev +++ b/.devcontainer/Dockerfile.dev @@ -8,13 +8,11 @@ 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} @@ -27,9 +25,9 @@ RUN apt update && apt install -y wget \ libclang-dev \ libcurl4-openssl-dev \ clang-tidy \ - shellcheck + shellcheck \ + cmake -RUN cd /opt/ci && bash setup_cmake.sh RUN cd /opt/ci && bash setup_ci_environment.sh RUN cd /opt/ci && bash install_iwyu.sh RUN cd /opt && bash ci/setup_googletest.sh \ diff --git a/.devcontainer/README.md b/.devcontainer/README.md index bea6f8c4d5..2844f58341 100644 --- a/.devcontainer/README.md +++ b/.devcontainer/README.md @@ -3,13 +3,6 @@ Customize your dev container using build arguments (for direct Docker builds) or environment variables (for evaluation in `devcontainer.json`). -* **CMake version:** - The version of cmake to install. (Default: 3.31.6) - * Docker ARG: - `CMAKE_VERSION` - * Host Environment Variable: - `OTEL_CPP_DEVCONTAINER_CMAKE_VERSION` - * **CXX standard:** This is the C++ standard to build from (eg: 17, 20, ...). (Default: 17) * Docker ARG: diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 8087122423..98a0eec74c 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -11,7 +11,6 @@ "USER_UID": "${localEnv:OTEL_CPP_DEVCONTAINER_USER_UID:1000}", "USER_GID": "${localEnv:OTEL_CPP_DEVCONTAINER_USER_GID:1000}", "INSTALL_PACKAGES": "${localEnv:OTEL_CPP_DEVCONTAINER_INSTALL_PACKAGES:}", - "CMAKE_VERSION": "${localEnv:OTEL_CPP_DEVCONTAINER_CMAKE_VERSION:3.31.6}", "CXX_STANDARD": "${localEnv:OTEL_CPP_DEVCONTAINER_CXX_STANDARD:17}", "GRPC_VERSION": "${localEnv:OTEL_CPP_DEVCONTAINER_GRPC_VERSION:v1.55.0}", "PROTOBUF_VERSION": "${localEnv:OTEL_CPP_DEVCONTAINER_PROTOBUF_VERSION:23.3}", diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 569cf39b67..7042b43ade 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,7 +29,6 @@ jobs: # run: | # sudo -E ./ci/setup_gcc10.sh # sudo -E ./ci/setup_ci_environment.sh -# sudo -E ./ci/setup_cmake.sh # sudo -E ./ci/setup_googletest.sh # sudo -E ./ci/install_abseil.sh # sudo -E ./ci/install_protobuf.sh @@ -51,7 +50,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run cmake tests run: | @@ -74,7 +72,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: Install abseil, protobuf, and grpc with apt run: | @@ -104,7 +101,6 @@ jobs: run: | sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937 sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh sudo -E ./ci/install_protobuf.sh - name: setup grpc @@ -146,7 +142,6 @@ jobs: run: | sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937 sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh sudo -E ./ci/install_protobuf.sh - name: setup grpc @@ -188,7 +183,6 @@ jobs: run: | sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937 sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh sudo -E ./ci/install_protobuf.sh - name: setup grpc @@ -230,7 +224,6 @@ jobs: run: | sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937 sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh sudo -E ./ci/install_protobuf.sh - name: setup grpc @@ -272,7 +265,6 @@ jobs: run: | sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937 sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh sudo -E ./ci/install_protobuf.sh - name: setup grpc @@ -308,7 +300,6 @@ jobs: submodules: 'recursive' - name: setup run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 - name: run tests run: ./ci/do_ci.ps1 cmake.maintainer.test @@ -327,7 +318,6 @@ jobs: submodules: 'recursive' - name: setup run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 - name: run tests env: @@ -348,7 +338,6 @@ jobs: submodules: 'recursive' - name: setup run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 - name: run tests env: @@ -373,7 +362,6 @@ jobs: CXX: /usr/bin/g++-12 run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run cmake tests (without otlp-exporter) env: @@ -397,7 +385,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run cmake tests (enable opentracing-shim) run: ./ci/do_ci.sh cmake.opentracing_shim.test @@ -417,7 +404,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run tests (enable stl) env: @@ -439,7 +425,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run tests (enable stl) env: @@ -461,7 +446,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run tests env: @@ -491,7 +475,6 @@ jobs: CXXFLAGS: "-stdlib=libc++" run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run tests env: @@ -523,7 +506,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run tests env: @@ -553,7 +535,6 @@ jobs: CXXFLAGS: "-stdlib=libc++" run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run tests env: @@ -585,7 +566,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run otlp exporter tests run: | @@ -620,7 +600,6 @@ jobs: CXX_STANDARD: '14' run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh sudo -E ./ci/install_abseil.sh sudo -E ./ci/install_protobuf.sh @@ -646,7 +625,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run otlp exporter tests run: | @@ -668,7 +646,6 @@ jobs: - name: setup run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run otlp exporter tests run: | @@ -693,7 +670,6 @@ jobs: CXX: /usr/bin/g++-12 run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run tests env: @@ -723,7 +699,6 @@ jobs: - name: setup run: | sudo ./ci/setup_ci_environment.sh - sudo ./ci/setup_cmake.sh sudo ./ci/install_bazelisk.sh - name: run tests run: ./ci/do_ci.sh bazel.test @@ -750,7 +725,6 @@ jobs: - name: setup run: | sudo ./ci/setup_ci_environment.sh - sudo ./ci/setup_cmake.sh sudo ./ci/install_bazelisk.sh - name: run tests run: ./ci/do_ci.sh bazel.no_bzlmod.test @@ -777,7 +751,6 @@ jobs: - name: setup run: | sudo ./ci/setup_ci_environment.sh - sudo ./ci/setup_cmake.sh sudo ./ci/install_bazelisk.sh - name: run tests run: ./ci/do_ci.sh bazel.with_async_export.test @@ -804,7 +777,6 @@ jobs: - name: setup run: | sudo ./ci/setup_ci_environment.sh - sudo ./ci/setup_cmake.sh sudo ./ci/install_bazelisk.sh - name: run tests run: ./ci/do_ci.sh bazel.valgrind @@ -831,7 +803,6 @@ jobs: - name: setup run: | sudo ./ci/setup_ci_environment.sh - sudo ./ci/setup_cmake.sh sudo ./ci/install_bazelisk.sh - name: run tests run: ./ci/do_ci.sh bazel.noexcept @@ -858,7 +829,6 @@ jobs: - name: setup run: | sudo ./ci/setup_ci_environment.sh - sudo ./ci/setup_cmake.sh sudo ./ci/install_bazelisk.sh - name: run tests run: ./ci/do_ci.sh bazel.nortti @@ -885,7 +855,6 @@ jobs: - name: setup run: | sudo ./ci/setup_ci_environment.sh - sudo ./ci/setup_cmake.sh sudo ./ci/install_bazelisk.sh - name: run tests run: ./ci/do_ci.sh bazel.asan @@ -912,7 +881,6 @@ jobs: - name: setup run: | sudo ./ci/setup_ci_environment.sh - sudo ./ci/setup_cmake.sh sudo ./ci/install_bazelisk.sh - name: run tests run: ./ci/do_ci.sh bazel.tsan @@ -1014,7 +982,6 @@ jobs: submodules: 'recursive' - name: setup run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 ./ci/install_windows_protobuf.ps1 - name: run cmake test @@ -1036,7 +1003,6 @@ jobs: submodules: 'recursive' - name: setup run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 ./ci/install_windows_protobuf.ps1 - name: run cmake test (DLL build) @@ -1060,7 +1026,6 @@ jobs: submodules: 'recursive' - name: setup run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 ./ci/install_windows_protobuf.ps1 - name: run cmake test @@ -1100,7 +1065,6 @@ jobs: submodules: 'recursive' - name: setup run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 - name: run tests run: ./ci/do_ci.ps1 cmake.test_example_plugin @@ -1123,7 +1087,6 @@ jobs: CXX: /usr/bin/g++-10 run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run tests and generate report env: @@ -1220,7 +1183,6 @@ jobs: CXX: /usr/bin/g++-12 run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: run w3c trace-context test server (background) env: diff --git a/.github/workflows/cmake_install.yml b/.github/workflows/cmake_install.yml index 19162e6266..d93d0a5bbb 100644 --- a/.github/workflows/cmake_install.yml +++ b/.github/workflows/cmake_install.yml @@ -15,8 +15,6 @@ jobs: name: Windows 2022 vcpkg submodule versions cxx17 (static libs - dll) runs-on: windows-2022 env: - # Set to the latest version of cmake 3.x - CMAKE_VERSION: '3.31.6' # cxx17 is the default for windows-2022 CXX_STANDARD: '17' steps: @@ -30,7 +28,6 @@ jobs: submodules: 'recursive' - name: Build dependencies with vcpkg submodule run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 - name: Run Tests run: ./ci/do_ci.ps1 cmake.install.test @@ -41,8 +38,6 @@ jobs: name: Windows 2025 vcpkg submodule versions cxx20 (static libs) runs-on: windows-2025 env: - # Set to the latest version of cmake 3.x - CMAKE_VERSION: '3.31.6' CXX_STANDARD: '20' steps: - name: Harden the runner (Audit all outbound calls) @@ -55,7 +50,6 @@ jobs: submodules: 'recursive' - name: Build dependencies with vcpkg submodule run: | - ./ci/setup_cmake.ps1 ./ci/setup_windows_ci_environment.ps1 - name: Run Tests run: ./ci/do_ci.ps1 cmake.install.test @@ -65,8 +59,6 @@ jobs: runs-on: ubuntu-24.04 env: INSTALL_TEST_DIR: '/home/runner/install_test' - # CMake 3.28 is apt package version for Ubuntu 24.04 - CMAKE_VERSION: '3.28.3' # cxx17 is the default for Ubuntu 24.04 CXX_STANDARD: '17' BUILD_TYPE: 'Debug' @@ -82,7 +74,6 @@ jobs: - name: Install libcurl, zlib, nlohmann-json with apt run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: Install abseil, protobuf, and grpc with apt run: | @@ -102,8 +93,6 @@ jobs: runs-on: ubuntu-24.04 env: INSTALL_TEST_DIR: '/home/runner/install_test' - # Set to the latest version of cmake 3.x - CMAKE_VERSION: '3.31.6' # Set to the latest cxx standard supported by opentelemetry-cpp CXX_STANDARD: '20' # Versions below set to the latest version available @@ -126,7 +115,6 @@ jobs: - name: Install gtest, libcurl, zlib, nlohmann-json with apt run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: Build abseil, protobuf, and grpc with ci scripts run: | @@ -143,8 +131,6 @@ jobs: runs-on: ubuntu-22.04 env: INSTALL_TEST_DIR: '/home/runner/install_test' - # CMake 3.22 is the apt package version for Ubuntu 22.04 - CMAKE_VERSION: '3.22.0' CXX_STANDARD: '17' # These are stable versions tested in the main ci workflow # and defaults in the devcontainer @@ -165,7 +151,6 @@ jobs: - name: Install gtest, libcurl, zlib, nlohmann-json with apt run: | sudo -E ./ci/setup_ci_environment.sh - sudo -E ./ci/setup_cmake.sh sudo -E ./ci/setup_googletest.sh - name: Build abseil, protobuf, and grpc with ci scripts run: | @@ -230,8 +215,6 @@ jobs: runs-on: ubuntu-24.04 env: INSTALL_TEST_DIR: '/home/runner/install_test' - # CMake 3.28 is apt package version for Ubuntu 24.04 - CMAKE_VERSION: '3.28.3' CXX_STANDARD: '17' CMAKE_TOOLCHAIN_FILE: /home/runner/conan/build/Debug/generators/conan_toolchain.cmake BUILD_TYPE: 'Debug' @@ -251,7 +234,6 @@ jobs: conan profile detect --force - name: Install or build all dependencies with Conan run: | - sudo -E ./ci/setup_cmake.sh conan install install/conan/conanfile_stable.txt --build=missing -of /home/runner/conan -s build_type=${BUILD_TYPE} -s compiler.cppstd=${CXX_STANDARD} conan cache clean --source --build - name: Run Tests (static libs) @@ -274,8 +256,6 @@ jobs: runs-on: ubuntu-24.04 env: INSTALL_TEST_DIR: '/home/runner/install_test' - # Set to the latest version of cmake 3.x - CMAKE_VERSION: '3.31.6' CXX_STANDARD: '17' CMAKE_TOOLCHAIN_FILE: /home/runner/conan/build/Debug/generators/conan_toolchain.cmake BUILD_TYPE: 'Debug' @@ -295,7 +275,6 @@ jobs: conan profile detect --force - name: Install or build all dependencies with Conan run: | - sudo -E ./ci/setup_cmake.sh conan install install/conan/conanfile_latest.txt --build=missing -of /home/runner/conan -s build_type=${BUILD_TYPE} -s compiler.cppstd=${CXX_STANDARD} conan cache clean --source --build - name: Run Tests (static libs) @@ -312,7 +291,6 @@ jobs: runs-on: macos-14 env: INSTALL_TEST_DIR: '/Users/runner/install_test' - CMAKE_VERSION: '3.28.3' CXX_STANDARD: '17' CMAKE_TOOLCHAIN_FILE: '/Users/runner/conan/build/Debug/generators/conan_toolchain.cmake' BUILD_TYPE: 'Debug' @@ -328,7 +306,6 @@ jobs: - name: Install Conan and tools run: | brew install conan autoconf automake libtool coreutils - ./ci/setup_cmake_macos.sh conan profile detect --force - name: Install or build all dependencies with Conan run: | @@ -344,8 +321,6 @@ jobs: runs-on: macos-14 env: INSTALL_TEST_DIR: '/Users/runner/install_test' - # Set to the latest version of cmake 3.x - CMAKE_VERSION: '3.31.6' CXX_STANDARD: '17' BUILD_TYPE: 'Debug' steps: @@ -359,7 +334,6 @@ jobs: submodules: 'recursive' - name: Install Dependencies with Homebrew run: | - ./ci/setup_cmake_macos.sh brew install coreutils brew install googletest brew install google-benchmark diff --git a/.github/workflows/iwyu.yml b/.github/workflows/iwyu.yml index e7f29923bf..8c6ba11f7b 100644 --- a/.github/workflows/iwyu.yml +++ b/.github/workflows/iwyu.yml @@ -40,8 +40,8 @@ jobs: libgtest-dev \ libbenchmark-dev \ llvm-dev \ - libclang-dev - sudo ./ci/setup_cmake.sh + libclang-dev \ + cmake - name: Install include-what-you-use run: | sudo ./ci/install_iwyu.sh