add brotli service #16
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
| # | ||
| # Copyright (c) 2023 Christian Mazakas | ||
| # Copyright (c) 2023 Alan de Freitas | ||
| # Copyright (c) 2021-2023 Sam Darwin | ||
| # Copyright (c) 2020-2021 Peter Dimov | ||
| # Copyright (c) 2021 Andrey Semashev | ||
| # | ||
| # Distributed under the Boost Software License, Version 1.0. (See accompanying | ||
| # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | ||
| # | ||
| # Official repository: https://github.com/cppalliance/rts/ | ||
| # | ||
| name: CI | ||
| on: | ||
| pull_request: | ||
| push: | ||
| branches: | ||
| - master | ||
| - develop | ||
| - bugfix/** | ||
| - feature/** | ||
| - fix/** | ||
| - pr/** | ||
| concurrency: | ||
| group: ${{format('{0}:{1}', github.repository, github.ref)}} | ||
| cancel-in-progress: true | ||
| env: | ||
| GIT_FETCH_JOBS: 8 | ||
| NET_RETRY_COUNT: 5 | ||
| DEFAULT_BUILD_VARIANT: debug,release | ||
| UBSAN_OPTIONS: "print_stacktrace=1" | ||
| DEBIAN_FRONTEND: "noninteractive" | ||
| TZ: "Europe/London" | ||
| jobs: | ||
| runner-selection: | ||
| name: Runner Selection | ||
| runs-on: ${{ github.repository_owner == 'boostorg' && fromJSON('[ "self-hosted", "linux", "x64", "ubuntu-latest-aws" ]') || 'ubuntu-latest' }} | ||
| outputs: | ||
| labelmatrix: ${{ steps.aws_hosted_runners.outputs.labelmatrix }} | ||
| steps: | ||
| - name: AWS Hosted Runners | ||
| id: aws_hosted_runners | ||
| uses: cppalliance/aws-hosted-runners@v1.0.0 | ||
| build: | ||
| needs: [ runner-selection ] | ||
| defaults: | ||
| run: | ||
| shell: bash | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| include: | ||
| # Windows compilers | ||
| # | ||
| - compiler: "msvc" | ||
| version: "14.34" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| runs-on: "windows-2022" | ||
| b2-toolset: "msvc-14.3" | ||
| generator: "Visual Studio 17 2022" | ||
| is-latest: true | ||
| name: "MSVC 14.34: C++17-20" | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| - compiler: "msvc" | ||
| version: "14.34" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| runs-on: "windows-2022" | ||
| b2-toolset: "msvc-14.3" | ||
| generator: "Visual Studio 17 2022" | ||
| is-latest: true | ||
| name: "MSVC 14.34: C++17-20 (no zlib)" | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| - compiler: "msvc" | ||
| version: "14.34" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| runs-on: "windows-2022" | ||
| b2-toolset: "msvc-14.3" | ||
| generator: "Visual Studio 17 2022" | ||
| is-latest: true | ||
| name: "MSVC 14.34: C++17-20 (x86)" | ||
| x86: true | ||
| build-type: "Release" | ||
| - compiler: "msvc" | ||
| version: "14.34" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| runs-on: "windows-2022" | ||
| b2-toolset: "msvc-14.3" | ||
| generator: "Visual Studio 17 2022" | ||
| is-latest: true | ||
| name: "MSVC 14.34: C++17-20 (shared)" | ||
| shared: true | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| - compiler: "msvc" | ||
| version: "14.29" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| runs-on: "windows-2019" | ||
| b2-toolset: "msvc-14.2" | ||
| generator: "Visual Studio 16 2019" | ||
| is-earliest: true | ||
| name: "MSVC 14.29: C++14-17" | ||
| build-type: "Release" | ||
| - compiler: "clang-cl" | ||
| version: "*" | ||
| cxx: "clang++-cl" | ||
| cc: "clang-cl" | ||
| runs-on: "windows-2022" | ||
| b2-toolset: "clang-win" | ||
| generator-toolset: "ClangCL" | ||
| is-latest: true | ||
| is-earliest: true | ||
| name: "Windows-Clang" | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| - compiler: "mingw" | ||
| version: "*" | ||
| cxx: "g++" | ||
| cc: "gcc" | ||
| runs-on: "windows-2022" | ||
| b2-toolset: "gcc" | ||
| generator: "MinGW Makefiles" | ||
| is-latest: true | ||
| is-earliest: true | ||
| name: "MinGW" | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| - compiler: "mingw" | ||
| version: "*" | ||
| cxx: "g++" | ||
| cc: "gcc" | ||
| runs-on: "windows-2022" | ||
| b2-toolset: "gcc" | ||
| generator: "MinGW Makefiles" | ||
| is-latest: true | ||
| is-earliest: true | ||
| name: "MinGW (shared)" | ||
| shared: true | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| # OSX compilers | ||
| # | ||
| - compiler: "apple-clang" | ||
| version: "*" | ||
| cxx: "clang++" | ||
| cc: "clang" | ||
| runs-on: "macos-15" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Apple-Clang (macOS 15)" | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| - compiler: "apple-clang" | ||
| version: "*" | ||
| cxx: "clang++" | ||
| cc: "clang" | ||
| runs-on: "macos-15" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Apple-Clang (macOS 15, ubsan)" | ||
| build-type: "RelWithDebInfo" | ||
| ubsan: true | ||
| - compiler: "apple-clang" | ||
| version: "*" | ||
| cxx: "clang++" | ||
| cc: "clang" | ||
| runs-on: "macos-15" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Apple-Clang (macOS 15, asan)" | ||
| build-type: "RelWithDebInfo" | ||
| asan: true | ||
| - compiler: "apple-clang" | ||
| version: "*" | ||
| cxx: "clang++" | ||
| cc: "clang" | ||
| runs-on: "macos-14" | ||
| b2-toolset: "clang" | ||
| name: "Apple-Clang (macOS 14)" | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| - compiler: "apple-clang" | ||
| version: "*" | ||
| cxx: "clang++" | ||
| cc: "clang" | ||
| runs-on: "macos-13" | ||
| b2-toolset: "clang" | ||
| name: "Apple-Clang (macOS 13)" | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| # Linux compilers | ||
| # | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| build-cmake: true | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20 (no zlib)" | ||
| build-type: "Release" | ||
| build-cmake: true | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20 (x86)" | ||
| x86: true | ||
| build-type: "Release" | ||
| install: "gcc-14-multilib g++-14-multilib zlib1g-dev libbrotli-dev zlib1g-dev:i386 libbrotli-dev:i386" | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20 (shared)" | ||
| shared: true | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| build-cmake: true | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20 (shared, x86)" | ||
| shared: true | ||
| x86: true | ||
| build-type: "Release" | ||
| install: "gcc-14-multilib g++-14-multilib zlib1g-dev libbrotli-dev zlib1g-dev:i386 libbrotli-dev:i386" | ||
| build-cmake: true | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20 (asan)" | ||
| asan: true | ||
| build-type: "RelWithDebInfo" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20 (asan, x86)" | ||
| asan: true | ||
| x86: true | ||
| build-type: "RelWithDebInfo" | ||
| install: "gcc-14-multilib g++-14-multilib zlib1g-dev libbrotli-dev zlib1g-dev:i386 libbrotli-dev:i386" | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20 (ubsan)" | ||
| ubsan: true | ||
| build-type: "RelWithDebInfo" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-14" | ||
| cc: "gcc-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 14: C++17-20 (ubsan, x86)" | ||
| ubsan: true | ||
| x86: true | ||
| build-type: "RelWithDebInfo" | ||
| install: "gcc-14-multilib g++-14-multilib zlib1g-dev libbrotli-dev zlib1g-dev:i386 libbrotli-dev:i386" | ||
| - compiler: "gcc" | ||
| version: "13" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-13" | ||
| cc: "gcc-13" | ||
| runs-on: "ubuntu-24.04" | ||
| b2-toolset: "gcc" | ||
| name: "GCC 13: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "13" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-13" | ||
| cc: "gcc-13" | ||
| runs-on: "ubuntu-24.04" | ||
| b2-toolset: "gcc" | ||
| is-latest: true | ||
| name: "GCC 13: C++17-20 (coverage)" | ||
| coverage: true | ||
| build-type: "Debug" | ||
| cxxflags: "--coverage -fprofile-arcs -ftest-coverage" | ||
| ccflags: "--coverage -fprofile-arcs -ftest-coverage" | ||
| install: "lcov zlib1g-dev libbrotli-dev wget unzip" | ||
| - compiler: "gcc" | ||
| version: "12" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-12" | ||
| cc: "gcc-12" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:22.04" | ||
| b2-toolset: "gcc" | ||
| name: "GCC 12: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "11" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "g++-11" | ||
| cc: "gcc-11" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:22.04" | ||
| b2-toolset: "gcc" | ||
| name: "GCC 11: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "10" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "g++-10" | ||
| cc: "gcc-10" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "gcc" | ||
| name: "GCC 10: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "9" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "g++-9" | ||
| cc: "gcc-9" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "gcc" | ||
| name: "GCC 9: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "8" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "g++-8" | ||
| cc: "gcc-8" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "gcc" | ||
| name: "GCC 8: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "7" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "g++-7" | ||
| cc: "gcc-7" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "gcc" | ||
| name: "GCC 7: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "6" | ||
| cxxstd: "11,14" | ||
| latest-cxxstd: "14" | ||
| cxx: "g++-6" | ||
| cc: "gcc-6" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:18.04" | ||
| b2-toolset: "gcc" | ||
| name: "GCC 6: C++11-14" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "gcc" | ||
| version: "5" | ||
| cxxstd: "11" | ||
| latest-cxxstd: "11" | ||
| cxx: "g++-5" | ||
| cc: "gcc-5" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:18.04" | ||
| b2-toolset: "gcc" | ||
| is-earliest: true | ||
| name: "GCC 5: C++11" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "18" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-18" | ||
| cc: "clang-18" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Clang 18: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| build-cmake: true | ||
| - compiler: "clang" | ||
| version: "18" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-18" | ||
| cc: "clang-18" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Clang 18: C++17-20 (x86)" | ||
| x86: true | ||
| build-type: "Release" | ||
| install: "gcc-multilib g++-multilib zlib1g-dev libbrotli-dev zlib1g-dev:i386 libbrotli-dev:i386" | ||
| - compiler: "clang" | ||
| version: "18" | ||
| cxxstd: "20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-18" | ||
| cc: "clang-18" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Clang 18: C++20 (time-trace)" | ||
| time-trace: true | ||
| build-type: "Release" | ||
| cxxflags: "-ftime-trace" | ||
| ccflags: "-ftime-trace" | ||
| install: "zlib1g-dev libbrotli-dev wget unzip" | ||
| - compiler: "clang" | ||
| version: "18" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-18" | ||
| cc: "clang-18" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Clang 18: C++17-20 (asan)" | ||
| asan: true | ||
| build-type: "RelWithDebInfo" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "18" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-18" | ||
| cc: "clang-18" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Clang 18: C++17-20 (asan, x86)" | ||
| asan: true | ||
| x86: true | ||
| build-type: "RelWithDebInfo" | ||
| install: "gcc-multilib g++-multilib zlib1g-dev libbrotli-dev zlib1g-dev:i386 libbrotli-dev:i386" | ||
| - compiler: "clang" | ||
| version: "18" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-18" | ||
| cc: "clang-18" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Clang 18: C++17-20 (ubsan)" | ||
| ubsan: true | ||
| build-type: "RelWithDebInfo" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "18" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-18" | ||
| cc: "clang-18" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:24.04" | ||
| b2-toolset: "clang" | ||
| is-latest: true | ||
| name: "Clang 18: C++17-20 (ubsan, x86)" | ||
| ubsan: true | ||
| x86: true | ||
| build-type: "RelWithDebInfo" | ||
| install: "gcc-multilib g++-multilib zlib1g-dev libbrotli-dev zlib1g-dev:i386 libbrotli-dev:i386" | ||
| - compiler: "clang" | ||
| version: "17" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-17" | ||
| cc: "clang-17" | ||
| runs-on: "ubuntu-24.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 17: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "16" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-16" | ||
| cc: "clang-16" | ||
| runs-on: "ubuntu-24.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 16: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "15" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-15" | ||
| cc: "clang-15" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:22.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 15: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "14" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-14" | ||
| cc: "clang-14" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:22.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 14: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "13" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-13" | ||
| cc: "clang-13" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:22.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 13: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "12" | ||
| cxxstd: "17,20" | ||
| latest-cxxstd: "20" | ||
| cxx: "clang++-12" | ||
| cc: "clang-12" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:22.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 12: C++17-20" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "11" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "clang++-11" | ||
| cc: "clang-11" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:22.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 11: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "10" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "clang++-10" | ||
| cc: "clang-10" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 10: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "9" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "clang++-9" | ||
| cc: "clang-9" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 9: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "8" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "clang++-8" | ||
| cc: "clang-8" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 8: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "7" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "clang++-7" | ||
| cc: "clang-7" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 7: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "6" | ||
| cxxstd: "14,17" | ||
| latest-cxxstd: "17" | ||
| cxx: "clang++-6.0" | ||
| cc: "clang-6.0" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:20.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 6: C++14-17" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "5" | ||
| cxxstd: "11,14" | ||
| latest-cxxstd: "14" | ||
| cxx: "clang++-5.0" | ||
| cc: "clang-5.0" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:18.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 5: C++11-14" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "4" | ||
| cxxstd: "11,14" | ||
| latest-cxxstd: "14" | ||
| cxx: "clang++-4.0" | ||
| cc: "clang-4.0" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:18.04" | ||
| b2-toolset: "clang" | ||
| name: "Clang 4: C++11-14" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| - compiler: "clang" | ||
| version: "3.9" | ||
| cxxstd: "11" | ||
| latest-cxxstd: "11" | ||
| cxx: "clang++-3.9" | ||
| cc: "clang-3.9" | ||
| runs-on: "ubuntu-latest" | ||
| container: "ubuntu:18.04" | ||
| b2-toolset: "clang" | ||
| is-earliest: true | ||
| name: "Clang 3.9: C++11" | ||
| build-type: "Release" | ||
| install: "zlib1g-dev libbrotli-dev" | ||
| name: ${{ matrix.name }} | ||
| runs-on: ${{ fromJSON(needs.runner-selection.outputs.labelmatrix)[matrix.runs-on] }} | ||
| container: | ||
| image: ${{ matrix.container }} | ||
| options: --privileged | ||
| volumes: | ||
| - /node20217:/node20217:rw,rshared | ||
| - ${{ startsWith(matrix.container, 'ubuntu:1') && '/node20217:/__e/node20:ro,rshared' || ' ' }} | ||
| timeout-minutes: 120 | ||
| steps: | ||
| - name: install nodejs20glibc2.17 | ||
| if: ${{ startsWith( matrix.container, 'ubuntu:1' ) }} | ||
| run: | | ||
| apt-get update | ||
| apt-get -yqq install xz-utils curl | ||
| curl -LO https://archives.boost.io/misc/node/node-v20.9.0-linux-x64-glibc-217.tar.xz | ||
| tar -xf node-v20.9.0-linux-x64-glibc-217.tar.xz --strip-components 1 -C /node20217 | ||
| ldd /__e/node20/bin/node | ||
| - name: Clone Boost.RunTimeServices | ||
| uses: actions/checkout@v4 | ||
| with: | ||
| path: rts-root | ||
| - name: Setup C++ | ||
| uses: alandefreitas/cpp-actions/setup-cpp@v1.8.10 | ||
| id: setup-cpp | ||
| with: | ||
| compiler: ${{ matrix.compiler }} | ||
| version: ${{ matrix.version }} | ||
| check-latest: ${{ matrix.compiler != 'clang' || matrix.version != '^3.8' }} | ||
| trace-commands: true | ||
| - name: Install packages | ||
| uses: alandefreitas/cpp-actions/package-install@v1.8.10 | ||
| id: package-install | ||
| with: | ||
| apt-get-add-architecture: 'i386' | ||
| apt-get: >- | ||
| ${{ matrix.install }} | ||
| build-essential | ||
| - name: Clone Boost | ||
| uses: alandefreitas/cpp-actions/boost-clone@v1.8.10 | ||
| id: boost-clone | ||
| with: | ||
| branch: ${{ (github.ref_name == 'master' && github.ref_name) || 'develop' }} | ||
| boost-dir: boost-source | ||
| cache: false | ||
| modules-exclude-paths: '' | ||
| scan-modules-dir: rts-root | ||
| scan-modules-ignore: rts | ||
| - name: Install zlib brotli (Windows) | ||
| uses: alandefreitas/cpp-actions/package-install@v1.8.10 | ||
| if: ${{ startsWith(matrix.runs-on, 'windows') }} | ||
| with: | ||
| vcpkg: zlib brotli | ||
| vcpkg-dir: vcpkg-root | ||
| vcpkg-triplet: ${{ matrix.x86 && 'x86-windows-static' || 'x64-windows' }} | ||
| - name: Patch user-config.jam (Windows) | ||
| id: patch-user-config | ||
| shell: bash | ||
| if: ${{ startsWith(matrix.runs-on, 'windows') }} | ||
| run: | | ||
| home=$(pwd) | ||
| triplet=${{ matrix.x86 && 'x86-windows-static' || 'x64-windows' }} | ||
| include_path="${home}/vcpkg-root/installed/${triplet}/include" | ||
| library_path="${home}/vcpkg-root/installed/${triplet}/lib" | ||
| # Replace /d/ with D:/ for Windows path compatibility | ||
| include_path=$(echo "$include_path" | sed 's|/d/|D:/|g') | ||
| library_path=$(echo "$library_path" | sed 's|/d/|D:/|g') | ||
| echo "include_path=$include_path" >> $GITHUB_ENV | ||
| echo "library_path=$library_path" >> $GITHUB_ENV | ||
| toolchain=$(echo "$GITHUB_WORKSPACE/vcpkg-root/scripts/buildsystems/vcpkg.cmake" | sed 's|/d/|D:/|g') | ||
| echo "toolchain=${toolchain}" >> $GITHUB_OUTPUT | ||
| - name: ASLR Fix | ||
| if: ${{ startsWith(matrix.runs-on, 'ubuntu' )}} | ||
| run: | | ||
| sysctl vm.mmap_rnd_bits=28 | ||
| - name: Patch Boost | ||
| id: patch | ||
| shell: bash | ||
| run: | | ||
| set -xe | ||
| pwd | ||
| ls | ||
| ls -lah boost-source | ||
| # Identify boost module being tested | ||
| module=${GITHUB_REPOSITORY#*/} | ||
| echo "module=$module" >> $GITHUB_OUTPUT | ||
| # Identify GitHub workspace root | ||
| workspace_root=$(echo "$GITHUB_WORKSPACE" | sed 's/\\/\//g') | ||
| echo -E "workspace_root=$workspace_root" >> $GITHUB_OUTPUT | ||
| # Remove module from boost-source | ||
| rm -r "boost-source/libs/$module" || true | ||
| # Copy cached boost-source to an isolated boost-root | ||
| cp -r boost-source boost-root | ||
| # Set boost-root output | ||
| cd boost-root | ||
| boost_root="$(pwd)" | ||
| boost_root=$(echo "$boost_root" | sed 's/\\/\//g') | ||
| echo -E "boost_root=$boost_root" >> $GITHUB_OUTPUT | ||
| # Patch boost-root with workspace module | ||
| cp -r "$workspace_root"/rts-root "libs/$module" | ||
| - name: Boost B2 Workflow | ||
| uses: alandefreitas/cpp-actions/b2-workflow@v1.8.10 | ||
| if: ${{ !matrix.coverage && !matrix.time-trace }} | ||
| env: | ||
| ASAN_OPTIONS: ${{ ((matrix.compiler == 'apple-clang' || matrix.compiler == 'clang') && 'detect_invalid_pointer_pairs=0:strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1') || 'detect_invalid_pointer_pairs=2:strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1' }} | ||
| with: | ||
| source-dir: boost-root | ||
| modules: rts | ||
| toolset: ${{ matrix.b2-toolset }} | ||
| build-variant: ${{ matrix.build-type }} | ||
| cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx || '' }} | ||
| cxxstd: ${{ matrix.cxxstd }} | ||
| address-model: ${{ (matrix.x86 && '32') || '64' }} | ||
| asan: ${{ matrix.asan }} | ||
| ubsan: ${{ matrix.ubsan }} | ||
| shared: ${{ matrix.shared }} | ||
| rtti: ${{ (matrix.is-latest && 'on,off') || 'on' }} | ||
| include: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.include_path) || '' }} | ||
| linkflags: ${{ (startsWith(matrix.runs-on, 'windows') && '/LIBPATH:' + steps.patch-user-config.outputs.toolchain) || '' }} | ||
|
Check failure on line 938 in .github/workflows/ci.yml
|
||
| cxxflags: ${{ (matrix.asan && '-fsanitize-address-use-after-scope -fsanitize=pointer-subtract') || '' }} | ||
| stop-on-error: true | ||
| extra-args: ${{ (matrix.valgrind && 'testing.launcher=valgrind' || '' )}} | ||
| - name: Boost CMake Workflow | ||
| uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.10 | ||
| if: ${{ matrix.coverage || matrix.time-trace || matrix.build-cmake || matrix.is-earliest }} | ||
| with: | ||
| source-dir: boost-root | ||
| build-dir: __build_cmake_test__ | ||
| generator: ${{ matrix.generator }} | ||
| generator-toolset: ${{ matrix.generator-toolset }} | ||
| build-type: ${{ matrix.build-type }} | ||
| build-target: tests | ||
| run-tests: true | ||
| install-prefix: .local | ||
| cxxstd: ${{ matrix.latest-cxxstd }} | ||
| cc: ${{ steps.setup-cpp.outputs.cc || matrix.cc }} | ||
| ccflags: ${{ matrix.ccflags }} | ||
| cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
| cxxflags: ${{ matrix.cxxflags }} | ||
| shared: ${{ matrix.shared }} | ||
| cmake-version: '>=3.20' | ||
| extra-args: | | ||
| -D Boost_VERBOSE=ON | ||
| -D BOOST_INCLUDE_LIBRARIES="${{ steps.patch.outputs.module }}" | ||
| export-compile-commands: ${{ matrix.time-trace }} | ||
| package: false | ||
| package-artifact: false | ||
| ref-source-dir: boost-root/libs/rts | ||
| toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.toolchain) || '' }} | ||
| - name: Set Path | ||
| if: startsWith(matrix.runs-on, 'windows') && matrix.shared | ||
| run: echo "$GITHUB_WORKSPACE/.local/bin" >> $GITHUB_PATH | ||
| - name: Set LD_LIBRARY_PATH | ||
| if: startsWith(matrix.runs-on, 'ubuntu') && matrix.shared | ||
| run: | | ||
| echo "LD_LIBRARY_PATH=$GITHUB_WORKSPACE/.local/lib:$LD_LIBRARY_PATH" >> "$GITHUB_ENV" | ||
| - name: Find Package Integration Workflow | ||
| uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.10 | ||
| if: ${{ matrix.build-cmake || matrix.is-earliest }} | ||
| with: | ||
| source-dir: boost-root/libs/${{ steps.patch.outputs.module }}/test/cmake_test | ||
| build-dir: __build_cmake_install_test__ | ||
| generator: ${{ matrix.generator }} | ||
| generator-toolset: ${{ matrix.generator-toolset }} | ||
| build-type: ${{ matrix.build-type }} | ||
| cxxstd: ${{ matrix.latest-cxxstd }} | ||
| cc: ${{ steps.setup-cpp.outputs.cc || matrix.cc }} | ||
| ccflags: ${{ matrix.ccflags }} | ||
| cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
| cxxflags: ${{ matrix.cxxflags }} | ||
| shared: ${{ matrix.shared }} | ||
| install: false | ||
| cmake-version: '>=3.15' | ||
| extra-args: | | ||
| -D BOOST_CI_INSTALL_TEST=ON | ||
| -D CMAKE_PREFIX_PATH=${{ steps.patch.outputs.workspace_root }}/.local | ||
| ref-source-dir: boost-root/libs/rts | ||
| trace-commands: true | ||
| - name: Subdirectory Integration Workflow | ||
| uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.10 | ||
| if: ${{ matrix.build-cmake || matrix.is-earliest }} | ||
| with: | ||
| source-dir: boost-root/libs/${{ steps.patch.outputs.module }}/test/cmake_test | ||
| build-dir: __build_cmake_subdir_test__ | ||
| generator: ${{ matrix.generator }} | ||
| generator-toolset: ${{ matrix.generator-toolset }} | ||
| build-type: ${{ matrix.build-type }} | ||
| cxxstd: ${{ matrix.latest-cxxstd }} | ||
| cc: ${{ steps.setup-cpp.outputs.cc || matrix.cc }} | ||
| ccflags: ${{ matrix.ccflags }} | ||
| cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
| cxxflags: ${{ matrix.cxxflags }} | ||
| shared: ${{ matrix.shared }} | ||
| install: false | ||
| cmake-version: '>=3.15' | ||
| extra-args: -D BOOST_CI_INSTALL_TEST=OFF | ||
| ref-source-dir: boost-root/libs/rts/test/cmake_test | ||
| - name: Root Project CMake Workflow | ||
| uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.10 | ||
| if: ${{ matrix.build-cmake || matrix.is-earliest }} | ||
| with: | ||
| source-dir: boost-root/libs/${{ steps.patch.outputs.module }} | ||
| build-dir: __build_root_test__ | ||
| build-target: tests | ||
| run-tests: true | ||
| generator: ${{ matrix.generator }} | ||
| generator-toolset: ${{ matrix.generator-toolset }} | ||
| build-type: ${{ matrix.build-type }} | ||
| install: false | ||
| cxxstd: ${{ matrix.latest-cxxstd }} | ||
| cc: ${{ steps.setup-cpp.outputs.cc || matrix.cc }} | ||
| ccflags: ${{ matrix.ccflags }} | ||
| cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
| cxxflags: ${{ matrix.cxxflags }} | ||
| shared: ${{ matrix.shared }} | ||
| cmake-version: '>=3.20' | ||
| package: false | ||
| package-artifact: false | ||
| ref-source-dir: boost-root | ||
| toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.toolchain) || '' }} | ||
| - name: FlameGraph | ||
| uses: alandefreitas/cpp-actions/flamegraph@v1.8.10 | ||
| if: matrix.time-trace | ||
| with: | ||
| source-dir: boost-root/libs/rts | ||
| build-dir: boost-root/__build_cmake_test__ | ||
| github_token: ${{ secrets.GITHUB_TOKEN }} | ||
| - name: Codecov | ||
| if: ${{ matrix.coverage }} | ||
| run: | | ||
| set -x | ||
| # Generate report | ||
| gcov_tool="gcov" | ||
| if command -v "gcov-${{ steps.setup-cpp.outputs.version-major }}.${{ steps.setup-cpp.outputs.version-minor }}" &> /dev/null; then | ||
| gcov_tool="gcov" | ||
| elif command -v "gcov-${{ steps.setup-cpp.outputs.version-major }}" &> /dev/null; then | ||
| gcov_tool="gcov-${{ steps.setup-cpp.outputs.version-major }}" | ||
| fi | ||
| lcov -c -q -o "boost-root/__build_cmake_test__/coverage.info" -d "boost-root/__build_cmake_test__" --include "$(pwd)/boost-root/libs/${{steps.patch.outputs.module}}/*" --gcov-tool "$gcov_tool" | ||
| # Upload to codecov | ||
| bash <(curl -s https://codecov.io/bash) -f "boost-root/__build_cmake_test__/coverage.info" | ||
| # Summary | ||
| echo "# Coverage" >> $GITHUB_STEP_SUMMARY | ||
| echo "" >> $GITHUB_STEP_SUMMARY | ||
| echo "[](https://codecov.io/github/$GITHUB_REPOSITORY/commit/$GITHUB_SHA)" >> $GITHUB_STEP_SUMMARY | ||
| echo "" >> $GITHUB_STEP_SUMMARY | ||
| echo "" >> $GITHUB_STEP_SUMMARY | ||
| echo "Commit: [](https://codecov.io/github/$GITHUB_REPOSITORY/commit/$GITHUB_SHA)" >> $GITHUB_STEP_SUMMARY | ||
| echo "" >> $GITHUB_STEP_SUMMARY | ||
| echo "Branch: [](https://codecov.io/github/$GITHUB_REPOSITORY/commit/$GITHUB_SHA)" >> $GITHUB_STEP_SUMMARY | ||
| echo "" >> $GITHUB_STEP_SUMMARY | ||
| changelog: | ||
| needs: [ runner-selection ] | ||
| defaults: | ||
| run: | ||
| shell: bash | ||
| name: Changelog Summary | ||
| runs-on: ${{ fromJSON(needs.runner-selection.outputs.labelmatrix)['ubuntu-22.04'] }} | ||
| timeout-minutes: 120 | ||
| steps: | ||
| - name: Clone Boost.RunTimeServices | ||
| uses: actions/checkout@v4 | ||
| with: | ||
| # Avoid the common API rate limit exceeded error in boostorg by including 100 latest commits in any case | ||
| fetch-depth: 100 | ||
| - name: Changelog | ||
| uses: alandefreitas/cpp-actions/create-changelog@v1.8.10 | ||
| with: | ||
| thank-non-regular: ${{ startsWith(github.ref, 'refs/tags/') }} | ||
| github-token: ${{ secrets.GITHUB_TOKEN }} | ||
| limit: 200 | ||
| tag-pattern: 'boost-.*\..*\..*' | ||
| antora: | ||
| needs: [ runner-selection ] | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| include: | ||
| - { name: Windows, os: windows-latest } | ||
| - { name: Ubuntu, os: ubuntu-latest } | ||
| - { name: MacOS, os: macos-latest } | ||
| name: Antora Docs (${{ matrix.name }}) | ||
| runs-on: ${{ fromJSON(needs.runner-selection.outputs.labelmatrix)[matrix.os] }} | ||
| defaults: | ||
| run: | ||
| shell: bash | ||
| steps: | ||
| - name: Install packages | ||
| uses: alandefreitas/cpp-actions/package-install@v1.8.10 | ||
| with: | ||
| apt-get: git cmake | ||
| - name: Clone Boost.RunTimeServices | ||
| uses: actions/checkout@v4 | ||
| with: | ||
| path: rts-root | ||
| - name: Clone Boost | ||
| uses: alandefreitas/cpp-actions/boost-clone@v1.8.10 | ||
| id: boost-clone | ||
| with: | ||
| branch: ${{ (github.ref_name == 'master' && github.ref_name) || 'develop' }} | ||
| boost-dir: boost-source | ||
| cache: false | ||
| modules-exclude-paths: '' | ||
| scan-modules-dir: rts-root | ||
| scan-modules-ignore: rts | ||
| - name: Patch Boost | ||
| id: patch | ||
| shell: bash | ||
| run: | | ||
| set -xe | ||
| pwd | ||
| ls | ||
| ls -lah boost-source | ||
| # Identify boost module being tested | ||
| module=${GITHUB_REPOSITORY#*/} | ||
| echo "module=$module" >> $GITHUB_OUTPUT | ||
| # Identify GitHub workspace root | ||
| workspace_root=$(echo "$GITHUB_WORKSPACE" | sed 's/\\/\//g') | ||
| echo -E "workspace_root=$workspace_root" >> $GITHUB_OUTPUT | ||
| # Remove module from boost-source | ||
| rm -r "boost-source/libs/$module" || true | ||
| # Copy cached boost-source to an isolated boost-root | ||
| cp -r boost-source boost-root | ||
| # Set boost-root output | ||
| cd boost-root | ||
| boost_root="$(pwd)" | ||
| boost_root=$(echo "$boost_root" | sed 's/\\/\//g') | ||
| echo -E "boost_root=$boost_root" >> $GITHUB_OUTPUT | ||
| # Patch boost-root with workspace module | ||
| cp -r "$workspace_root"/rts-root "libs/$module" | ||
| - uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: 18 | ||
| - name: Setup Ninja | ||
| if: runner.os == 'Windows' | ||
| uses: seanmiddleditch/gha-setup-ninja@v5 | ||
| - name: Build Antora Docs | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| run: | | ||
| git config --global --add safe.directory "$(pwd)" | ||
| BOOST_SRC_DIR="$(pwd)/boost-root" | ||
| export BOOST_SRC_DIR | ||
| cd boost-root/libs/rts | ||
| cd doc | ||
| bash ./build_antora.sh | ||
| # Antora returns zero even if it fails, so we check if the site directory exists | ||
| if [ ! -d "build/site" ]; then | ||
| echo "Antora build failed" | ||
| exit 1 | ||
| fi | ||
| - name: Create Antora Docs Artifact | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: antora-docs-${{ matrix.name }} | ||
| path: doc/build/site | ||