From 25b86ef3fd5dc2e5e89f676d19a77225c580b213 Mon Sep 17 00:00:00 2001 From: Chris Thrasher Date: Thu, 24 Apr 2025 20:59:57 -0600 Subject: [PATCH] Upgrade CI runners to Ubuntu 22 --- .github/workflows/linux-other-builds.yml | 49 ++++++------- .github/workflows/linux-simple-builds.yml | 71 ++++++++++--------- .github/workflows/package-manager-builds.yaml | 2 +- .github/workflows/validate-header-guards.yml | 2 +- 4 files changed, 63 insertions(+), 61 deletions(-) diff --git a/.github/workflows/linux-other-builds.yml b/.github/workflows/linux-other-builds.yml index 6993c815..1509528f 100644 --- a/.github/workflows/linux-other-builds.yml +++ b/.github/workflows/linux-other-builds.yml @@ -8,65 +8,66 @@ on: [push, pull_request] jobs: build: name: ${{matrix.build_description}}, ${{matrix.cxx}}, C++${{matrix.std}} ${{matrix.build_type}} - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: + fail-fast: false matrix: # We add builds one by one in this case, because there are no # dimensions that are shared across the builds include: # Single surrogate header build - - cxx: clang++-10 + - cxx: clang++-14 build_description: Surrogates build build_type: Debug std: 14 - other_pkgs: clang-10 + other_pkgs: clang-14 cmake_configurations: -DCATCH_BUILD_SURROGATES=ON - # Extras and examples with gcc-7 - - cxx: g++-7 + # Extras and examples with gcc-11 + - cxx: g++-11 build_description: Extras + Examples build_type: Debug std: 14 - other_pkgs: g++-7 + other_pkgs: g++-11 cmake_configurations: -DCATCH_BUILD_EXTRA_TESTS=ON -DCATCH_BUILD_EXAMPLES=ON -DCATCH_ENABLE_CMAKE_HELPER_TESTS=ON - - cxx: g++-7 + - cxx: g++-11 build_description: Extras + Examples build_type: Release std: 14 - other_pkgs: g++-7 + other_pkgs: g++-11 cmake_configurations: -DCATCH_BUILD_EXTRA_TESTS=ON -DCATCH_BUILD_EXAMPLES=ON -DCATCH_ENABLE_CMAKE_HELPER_TESTS=ON - # Extras and examples with Clang-10 - - cxx: clang++-10 + # Extras and examples with Clang-14 + - cxx: clang++-14 build_description: Extras + Examples build_type: Debug std: 17 - other_pkgs: clang-10 + other_pkgs: clang-14 cmake_configurations: -DCATCH_BUILD_EXTRA_TESTS=ON -DCATCH_BUILD_EXAMPLES=ON -DCATCH_ENABLE_CMAKE_HELPER_TESTS=ON - - cxx: clang++-10 + - cxx: clang++-14 build_description: Extras + Examples build_type: Release std: 17 - other_pkgs: clang-10 + other_pkgs: clang-14 cmake_configurations: -DCATCH_BUILD_EXTRA_TESTS=ON -DCATCH_BUILD_EXAMPLES=ON -DCATCH_ENABLE_CMAKE_HELPER_TESTS=ON - # Configure tests with Clang-10 - - cxx: clang++-10 + # Configure tests with Clang-14 + - cxx: clang++-14 build_description: CMake configuration tests build_type: Debug std: 14 - other_pkgs: clang-10 + other_pkgs: clang-14 cmake_configurations: -DCATCH_ENABLE_CONFIGURE_TESTS=ON - # Valgrind test Clang-10 - - cxx: clang++-10 - build_description: Valgrind tests - build_type: Debug - std: 14 - other_pkgs: clang-10 valgrind - cmake_configurations: -DMEMORYCHECK_COMMAND=`which valgrind` -DMEMORYCHECK_COMMAND_OPTIONS="-q --track-origins=yes --leak-check=full --num-callers=50 --show-leak-kinds=definite --error-exitcode=1" - other_ctest_args: -T memcheck -LE uses-python + # Valgrind test Clang-14 + # - cxx: clang++-14 + # build_description: Valgrind tests + # build_type: Debug + # std: 14 + # other_pkgs: clang-14 valgrind + # cmake_configurations: -DMEMORYCHECK_COMMAND=`which valgrind` -DMEMORYCHECK_COMMAND_OPTIONS="-q --track-origins=yes --leak-check=full --num-callers=50 --show-leak-kinds=definite --error-exitcode=1" + # other_ctest_args: -T memcheck -LE uses-python steps: diff --git a/.github/workflows/linux-simple-builds.yml b/.github/workflows/linux-simple-builds.yml index 4cca3161..117de06e 100644 --- a/.github/workflows/linux-simple-builds.yml +++ b/.github/workflows/linux-simple-builds.yml @@ -5,28 +5,29 @@ on: [push, pull_request] jobs: build: name: ${{matrix.cxx}}, C++${{matrix.std}}, ${{matrix.build_type}} - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: + fail-fast: false matrix: cxx: - - g++-5 - - g++-6 - g++-7 - g++-8 - g++-9 - g++-10 + - g++-11 + - g++-12 - clang++-6.0 - clang++-7 - clang++-8 - clang++-9 - clang++-10 + - clang++-11 + - clang++-12 + - clang++-13 + - clang++-14 build_type: [Debug, Release] std: [14] include: - - cxx: g++-5 - other_pkgs: g++-5 - - cxx: g++-6 - other_pkgs: g++-6 - cxx: g++-7 other_pkgs: g++-7 - cxx: g++-8 @@ -35,6 +36,10 @@ jobs: other_pkgs: g++-9 - cxx: g++-10 other_pkgs: g++-10 + - cxx: g++-11 + other_pkgs: g++-11 + - cxx: g++-12 + other_pkgs: g++-12 - cxx: clang++-6.0 other_pkgs: clang-6.0 - cxx: clang++-7 @@ -45,51 +50,47 @@ jobs: other_pkgs: clang-9 - cxx: clang++-10 other_pkgs: clang-10 - # Clang 6 + C++17 - # does not work with the default libstdc++ version thanks - # to a disagreement on variant implementation. - # - cxx: clang++-6.0 - # build_type: Debug - # std: 17 - # other_pkgs: clang-6.0 - # - cxx: clang++-6.0 - # build_type: Release - # std: 17 - # other_pkgs: clang-6.0 - # Clang 10 + C++17 - - cxx: clang++-10 + - cxx: clang++-11 + other_pkgs: clang-11 + - cxx: clang++-12 + other_pkgs: clang-12 + - cxx: clang++-13 + other_pkgs: clang-13 + - cxx: clang++-14 + other_pkgs: clang-14 + # Clang 14 + C++17 + - cxx: clang++-14 build_type: Debug std: 17 - other_pkgs: clang-10 - - cxx: clang++-10 + other_pkgs: clang-14 + - cxx: clang++-14 build_type: Release std: 17 - other_pkgs: clang-10 - - cxx: clang++-10 + other_pkgs: clang-14 + - cxx: clang++-14 build_type: Debug std: 20 - other_pkgs: clang-10 - - cxx: clang++-10 + other_pkgs: clang-14 + - cxx: clang++-14 build_type: Release std: 20 - other_pkgs: clang-10 - - cxx: g++-10 + other_pkgs: clang-14 + - cxx: g++-11 build_type: Debug std: 20 - other_pkgs: g++-10 - - cxx: g++-10 + other_pkgs: g++-11 + - cxx: g++-11 build_type: Release std: 20 - other_pkgs: g++-10 + other_pkgs: g++-11 steps: - uses: actions/checkout@v4 - - name: Add repositories for older GCC + - name: Add repositories for older compilers run: | - sudo apt-add-repository 'deb http://azure.archive.ubuntu.com/ubuntu/ bionic main' - sudo apt-add-repository 'deb http://azure.archive.ubuntu.com/ubuntu/ bionic universe' - if: ${{ matrix.cxx == 'g++-5' || matrix.cxx == 'g++-6' }} + sudo apt-add-repository 'deb http://azure.archive.ubuntu.com/ubuntu/ focal main' + sudo apt-add-repository 'deb http://azure.archive.ubuntu.com/ubuntu/ focal universe' - name: Prepare environment run: | diff --git a/.github/workflows/package-manager-builds.yaml b/.github/workflows/package-manager-builds.yaml index 6d90d140..74704c6a 100644 --- a/.github/workflows/package-manager-builds.yaml +++ b/.github/workflows/package-manager-builds.yaml @@ -5,7 +5,7 @@ on: [push, pull_request] jobs: conan_builds: name: Conan ${{matrix.conan_version}} - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: matrix: conan_version: diff --git a/.github/workflows/validate-header-guards.yml b/.github/workflows/validate-header-guards.yml index fa9d1574..13dac2ae 100644 --- a/.github/workflows/validate-header-guards.yml +++ b/.github/workflows/validate-header-guards.yml @@ -5,7 +5,7 @@ on: [push, pull_request] jobs: build: # Set the type of machine to run on - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Checkout source code