CMake Install Tests #20
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CMake Install Tests | |
on: | |
workflow_dispatch: | |
jobs: | |
windows_2022_vcpkg: | |
name: Windows 2022 vcpkg (cxx17) | |
runs-on: windows-2022 | |
env: | |
CXX_STANDARD: '17' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Install Dependencies | |
run: ./ci/setup_windows_ci_environment.ps1 | |
- name: Run Tests | |
run: ./ci/do_ci.ps1 cmake.install.test | |
windows_2022_vcpkg_dll: | |
name: Windows 2022 (DLL) vcpkg (cxx17) | |
runs-on: windows-2022 | |
env: | |
CXX_STANDARD: '17' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Install Dependencies | |
run: ./ci/setup_windows_ci_environment.ps1 | |
- name: Run Tests | |
run: ./ci/do_ci.ps1 cmake.dll.install.test | |
windows_2019_vcpkg: | |
name: Windows 2019 vcpkg (cxx14) | |
runs-on: windows-2019 | |
env: | |
CXX_STANDARD: '14' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Install Dependencies | |
run: ./ci/setup_windows_ci_environment.ps1 | |
- name: Run Tests | |
run: ./ci/do_ci.ps1 cmake.install.test | |
ubuntu_2404_src_grpc_1_71_0: | |
name: Ubuntu 24.04 grpc 1.71.0 script build (cxx17) | |
runs-on: ubuntu-24.04 | |
env: | |
INSTALL_TEST_DIR: '/home/runner/install_test' | |
CXX_STANDARD: '20' | |
BUILD_TYPE: 'Debug' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Setup CI Environment | |
run: | | |
sudo -E ./ci/setup_googletest.sh | |
sudo -E ./ci/setup_ci_environment.sh | |
- name: Install Dependencies | |
env: | |
ABSEIL_CPP_VERSION: '20240722.1' | |
PROTOBUF_VERSION: '29.0' | |
GRPC_VERSION: 'v1.71.0' | |
run: | | |
sudo -E ./ci/install_abseil.sh | |
sudo -E ./ci/install_protobuf.sh | |
sudo -E ./ci/setup_grpc.sh -r $GRPC_VERSION -s $CXX_STANDARD -p protobuf -p abseil | |
- name: Run Tests (static libs) | |
env: | |
BUILD_SHARED_LIBS: 'OFF' | |
run: ./ci/do_ci.sh cmake.install.test | |
# Building with shared libs fails when linking the example_otlp_grpc target | |
# See https://github.com/dbarker/opentelemetry-cpp/actions/runs/14023790373/job/39259166344#step:6:973 | |
# - name: Run Tests (shared libs) | |
# env: | |
# BUILD_SHARED_LIBS: 'ON' | |
# run: ./ci/do_ci.sh cmake.install.test | |
ubuntu_2404_system_packages: | |
name: Ubuntu 24.04 system apt packages (cxx17) | |
runs-on: ubuntu-24.04 | |
env: | |
INSTALL_TEST_DIR: '/home/runner/install_test' | |
CXX_STANDARD: '17' | |
BUILD_TYPE: 'Debug' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Setup CI Environment | |
run: | | |
sudo -E ./ci/setup_googletest.sh | |
sudo -E ./ci/setup_ci_environment.sh | |
- name: Install Dependencies | |
run: | | |
sudo -E apt-get update | |
sudo -E apt-get install -y libabsl-dev libprotobuf-dev libgrpc++-dev protobuf-compiler protobuf-compiler-grpc | |
- name: Run Tests (static libs) | |
env: | |
BUILD_SHARED_LIBS: 'OFF' | |
run: ./ci/do_ci.sh cmake.install.test | |
- name: Run Tests (shared libs) | |
env: | |
BUILD_SHARED_LIBS: 'ON' | |
run: ./ci/do_ci.sh cmake.install.test | |
ubuntu_2204_src_grpc_1_55_0: | |
name: Ubuntu 22.04 grpc 1.55.0 src build (cxx17) | |
runs-on: ubuntu-22.04 | |
env: | |
INSTALL_TEST_DIR: '/home/runner/install_test' | |
CXX_STANDARD: '17' | |
BUILD_TYPE: 'Debug' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Setup CI Environment | |
run: | | |
sudo -E ./ci/setup_googletest.sh | |
sudo -E ./ci/setup_ci_environment.sh | |
- name: Install Dependencies | |
env: | |
ABSEIL_CPP_VERSION: '20230125.3' | |
PROTOBUF_VERSION: '23.3' | |
GRPC_VERSION: 'v1.55.0' | |
run: | | |
sudo -E ./ci/install_abseil.sh | |
sudo -E ./ci/install_protobuf.sh | |
sudo -E ./ci/setup_grpc.sh -r $GRPC_VERSION -s $CXX_STANDARD -p protobuf -p abseil | |
- name: Run Tests (static libs) | |
env: | |
BUILD_SHARED_LIBS: 'OFF' | |
run: ./ci/do_ci.sh cmake.install.test | |
- name: Run Tests (shared libs) | |
env: | |
BUILD_SHARED_LIBS: 'ON' | |
run: ./ci/do_ci.sh cmake.install.test | |
ubuntu_2004_src_grpc_1_49_2: | |
name: Ubuntu 20.04 grpc 1.49.2 src build (cxx14) | |
runs-on: ubuntu-20.04 | |
env: | |
INSTALL_TEST_DIR: '/home/runner/install_test' | |
CXX_STANDARD: '14' | |
BUILD_TYPE: 'Debug' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Setup CI Environment | |
run: | | |
sudo -E ./ci/setup_googletest.sh | |
sudo -E ./ci/setup_ci_environment.sh | |
- name: Install Dependencies | |
env: | |
ABSEIL_CPP_VERSION: '20220623.2' | |
PROTOBUF_VERSION: '21.12' | |
GRPC_VERSION: 'v1.49.2' | |
run: | | |
sudo -E ./ci/install_abseil.sh | |
sudo -E ./ci/install_protobuf.sh | |
sudo -E ./ci/setup_grpc.sh -r $GRPC_VERSION -s $CXX_STANDARD -p protobuf -p abseil | |
- name: Run Tests (static libs) | |
env: | |
BUILD_SHARED_LIBS: 'OFF' | |
run: ./ci/do_ci.sh cmake.install.test | |
- name: Run Tests (shared libs) | |
env: | |
BUILD_SHARED_LIBS: 'ON' | |
run: ./ci/do_ci.sh cmake.install.test | |
macos_14_brew_packages: | |
name: macOS 14 brew packages (cxx17) | |
runs-on: macos-14 | |
env: | |
CXX_STANDARD: '17' | |
BUILD_TYPE: 'Debug' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Setup CI Environment (with brew) | |
run: | | |
brew update | |
brew install cmake | |
brew install coreutils | |
brew install wget | |
brew install googletest | |
brew install google-benchmark | |
brew install curl | |
brew install zlib | |
brew install abseil | |
brew install protobuf | |
brew install grpc | |
brew install nlohmann-json | |
brew install prometheus-cpp | |
- name: Run Tests (static libs) | |
env: | |
BUILD_SHARED_LIBS: 'OFF' | |
run: ./ci/do_ci.sh cmake.install.test | |
# Building with shared libs fails in tests of the otlp http and otlp file modules | |
# See https://github.com/dbarker/opentelemetry-cpp/actions/runs/14023790373/job/39259166342#step:5:2878 | |
# - name: Run Tests (shared libs) | |
# env: | |
# BUILD_SHARED_LIBS: 'ON' | |
# run: ./ci/do_ci.sh cmake.install.test | |
ubuntu_2404_conan_stable: | |
name: Ubuntu 24.04 Conan build grpc 1.54.2 (cxx17) | |
runs-on: ubuntu-24.04 | |
env: | |
INSTALL_TEST_DIR: '/home/runner/install_test' | |
CXX_STANDARD: '17' | |
CMAKE_TOOLCHAIN_FILE: /home/runner/conan/build/Debug/generators/conan_toolchain.cmake | |
BUILD_TYPE: 'Debug' | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: 'recursive' | |
- name: Install Conan | |
run: | | |
python3 -m pip install --upgrade pip | |
pip install conan | |
conan profile detect --force | |
- name: Install Dependencies with Conan | |
run: conan install install/conan/conanfile_stable.txt --build=missing -of /home/runner/conan -s build_type=Debug | |
- name: Run Tests with Conan (Static libs) | |
env: | |
BUILD_SHARED_LIBS: 'OFF' | |
run: ./ci/do_ci.sh cmake.install.test | |
- name: Run Tests with Conan (Shared libs) | |
env: | |
BUILD_SHARED_LIBS: 'ON' | |
run: ./ci/do_ci.sh cmake.install.test |