add missing include and whitelist iff for codespell #1
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) 2026 The STE||AR Group | |
| # | |
| # SPDX-License-Identifier: BSL-1.0 | |
| # 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) | |
| name: Build and Test | |
| on: | |
| pull_request: | |
| push: | |
| branches-ignore: | |
| - gh-pages | |
| - trying | |
| - staging | |
| tags-ignore: | |
| - stable | |
| jobs: | |
| configure-core-core_local-components: | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Configure (Running CMake) | |
| shell: bash | |
| timeout-minutes: 30 | |
| run: | | |
| mkdir -p $GITHUB_WORKSPACE/build | |
| cd $GITHUB_WORKSPACE/build | |
| cmake --version | |
| if [ "${{ github.event_name }}" != "pull_request" ] && \ | |
| ( [ "${{ github.ref_name }}" == "master" ] || \ | |
| [[ "${{ github.ref_name }}" =~ ^release.* ]] || \ | |
| [ "${{ github.ref_type }}" == "tag" ] ); then | |
| DOCUMENTATION_OUTPUT_FORMATS="html;singlehtml;latexpdf" | |
| else | |
| DOCUMENTATION_OUTPUT_FORMATS="html" # ← FIX INDENTATION | |
| fi | |
| # Disable Vc for now as otherwise we need to reconfigure during the | |
| # install step, which in turn forces everything to be rebuilt. | |
| # -DHPX_WITH_DATAPAR_VC=On | |
| cmake \ | |
| $GITHUB_WORKSPACE \ | |
| -G "Ninja" \ | |
| -DCMAKE_BUILD_TYPE=Debug \ | |
| -DHPX_WITH_MALLOC=system \ | |
| -DHPX_WITH_FETCH_ASIO=Off \ | |
| -DHPX_WITH_GIT_COMMIT=${{ github.sha }} \ | |
| -DHPX_WITH_GIT_BRANCH="${{ github.ref_name }}" \ | |
| -DHPX_WITH_GIT_TAG="${{ github.ref_type == 'tag' && github.ref_name || '' }}" \ | |
| -DHPX_WITH_TOOLS=On \ | |
| -DCMAKE_CXX_FLAGS="-fcolor-diagnostics" \ | |
| -DHPX_WITH_TESTS_HEADERS=On \ | |
| -DHPX_WITH_COMPILER_WARNINGS=On \ | |
| -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=On \ | |
| -DHPX_WITH_DEPRECATION_WARNINGS=On \ | |
| -DCMAKE_CXX_CLANG_TIDY=clang-tidy-20 \ | |
| -DHPX_WITH_THREAD_LOCAL_STORAGE=On \ | |
| -DHPX_WITH_STACKTRACES_STATIC_SYMBOLS=On \ | |
| -DHPX_WITH_STACKTRACES_DEMANGLE_SYMBOLS=Off \ | |
| -DHPX_WITH_TESTS_DEBUG_LOG=On \ | |
| -DHPX_WITH_TESTS_DEBUG_LOG_DESTINATION=$GITHUB_WORKSPACE/build/debug-log.txt \ | |
| -DHPX_WITH_SPINLOCK_DEADLOCK_DETECTION=On \ | |
| -DHPX_WITH_CHECK_MODULE_DEPENDENCIES=On \ | |
| -DHPX_LOGGING_WITH_SEPARATE_DESTINATIONS=Off \ | |
| -DHPX_WITH_THREAD_DEBUG_INFO=On \ | |
| -DHPX_COMMAND_LINE_HANDLING_WITH_JSON_CONFIGURATION_FILES=On \ | |
| -DHPX_WITH_FETCH_JSON=On \ | |
| -DCMAKE_EXPORT_COMPILE_COMMANDS=On \ | |
| -DHPX_WITH_DOCUMENTATION=On \ | |
| -DHPX_WITH_DOCUMENTATION_OUTPUT_FORMATS="${DOCUMENTATION_OUTPUT_FORMATS}" \ | |
| -DHPX_WITH_TESTS_COMMAND_LINE=--hpx:queuing=local-workrequesting-fifo \ | |
| -DHPX_WITH_TESTS_MAX_THREADS_PER_LOCALITY=2 | |
| - name: core_local (Building Core Local) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 hpx_core | |
| - name: core (Building Core) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 core | |
| - name: Components (Building Components) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 components | |
| - uses: actions/cache/save@v5 | |
| id: cache-build | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| tests-example1: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Examples (1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.examples1.targets` | |
| - name: Running Example Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.examples1.targets | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-example1 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-example1-artifacts | |
| path: build/tests-example1/ | |
| tests-example2: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Examples (2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.examples2.targets` | |
| - name: Running Example Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.examples2.targets | sed ':b;N;$!bb;s/\n/|/g'` \ | |
| --exclude-regex \ | |
| "tests.examples.transpose.transpose_block_numa" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-example2 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-example2-artifacts | |
| path: build/tests-example2/ | |
| tests-unit1-algorithms: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (Algorithms, 1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j1 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit1.algorithms` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit1.algorithms | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit1-algorithms | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit1-algorithms-artifacts | |
| path: build/tests-unit1-algorithms/ | |
| tests-unit2-algorithms: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (Algorithms, 2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j1 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit2.algorithms` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit2.algorithms | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit2-algorithms | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit2-algorithms-artifacts | |
| path: build/tests-unit2-algorithms/ | |
| tests-unit3-algorithms: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (Algorithms, 3) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j1 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit3.algorithms` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit3.algorithms | sed ':b;N;$!bb;s/\n/|/g'` \ | |
| --exclude-regex \ | |
| "tests.unit.modules.algorithms.algorithms.foreach_std_policies" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit3-algorithms | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit3-algorithms-artifacts | |
| path: build/tests-unit3-algorithms/ | |
| tests-unit4-algorithms: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (Algorithms, 4) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j1 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit4.algorithms` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit4.algorithms | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit4-algorithms | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit4-algorithms-artifacts | |
| path: build/tests-unit4-algorithms/ | |
| tests-unit1-container_algorithms: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (Containers Algorithms, 1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit1.container_algorithms` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit1.container_algorithms | sed ':b;N;$!bb;s/\n/|/g'` \ | |
| --exclude-regex \ | |
| "tests.unit.modules.algorithms.container_algorithms.for_loop_range_generator" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit1-container-algorithms | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit1-container-algorithms-artifacts | |
| path: build/tests-unit1-container-algorithms/ | |
| tests-unit2-container_algorithms: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (Containers Algorithms, 2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit2.container_algorithms` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit2.container_algorithms | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit2-container-algorithms | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit2-container-algorithms-artifacts | |
| path: build/tests-unit2-container-algorithms/ | |
| tests-unit1-segmented_algorithms: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (Segmented Algorithms, 1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j1 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit1.segmented_algorithms` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit1.segmented_algorithms | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit1-segmented-algorithms | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit1-segmented-algorithms-artifacts | |
| path: build/tests-unit1-segmented-algorithms/ | |
| tests-unit2-segmented_algorithms: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (Segmented Algorithms, 2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j1 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit2.segmented_algorithms` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit2.segmented_algorithms | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit2-segmented-algorithms | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit2-segmented-algorithms-artifacts | |
| path: build/tests-unit2-segmented-algorithms/ | |
| tests-unit1: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit1.targets` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit1.targets | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit1 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit1-artifacts | |
| path: build/tests-unit1/ | |
| tests-unit2: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit2.targets` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit2.targets | sed ':b;N;$!bb;s/\n/|/g'` \ | |
| --exclude-regex \ | |
| "tests.unit.modules.compute_local.numa_allocator" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit2 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit2-artifacts | |
| path: build/tests-unit2/ | |
| tests-unit3: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (3) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit3.targets` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit3.targets | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit3 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit3-artifacts | |
| path: build/tests-unit3/ | |
| tests-unit4: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (4) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit4.targets` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit4.targets | sed ':b;N;$!bb;s/\n/|/g'` \ | |
| --exclude-regex \ | |
| "tests.unit.modules.resource_partitioner.scheduler_binding_check" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit4 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit4-artifacts | |
| path: build/tests-unit4/ | |
| tests-unit5: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Unit Tests (5) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit5.targets` | |
| - name: Running Unit Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.unit5.targets | sed ':b;N;$!bb;s/\n/|/g'` | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-unit5 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-unit5-artifacts | |
| path: build/tests-unit5/ | |
| tests-regression1: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Regression Tests (1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.regressions1.targets` | |
| - name: Running Regressions Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.regressions1.targets | sed ':b;N;$!bb;s/\n/|/g'` \ | |
| --exclude-regex \ | |
| "tests.regressions.modules.threading_base.thread_stacksize_current" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-regressions1 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-regressions1-artifacts | |
| path: build/tests-regressions1/ | |
| tests-regression2: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Regression Tests (2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.regressions2.targets` | |
| - name: Running Regressions Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ulimit -c unlimited | |
| ctest \ | |
| --timeout 180 \ | |
| -T test \ | |
| --no-compress-output \ | |
| --output-on-failure \ | |
| --tests-regex \ | |
| `grep -v -e ^# -e ^$ $GITHUB_WORKSPACE/.github/test-targets/tests.regressions2.targets | sed ':b;N;$!bb;s/\n/|/g'` \ | |
| --exclude-regex \ | |
| "tests.regressions.modules.command_line_handling_local|\ | |
| tests.regressions.modules.parcelset.distributed.tcp.nested_vectors_6623|\ | |
| tests.regressions.modules.parcelset.distributed.tcp.very_big_tchunk|\ | |
| tests.regressions.modules.parcelset.distributed.tcp.very_big_parcel|\ | |
| tests.regressions.modules.parcelset.distributed.tcp.very_big_parcel_int_max_plus_1" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-regressions2 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-regressions2-artifacts | |
| path: build/tests-regressions2/ | |
| tests-headers1_1: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 1/1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.[q-s].*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers1_1 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers1_1-artifacts | |
| path: build/tests-headers1_1/ | |
| tests-headers1_2: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 1/2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.[t-z].*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers1_2 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers1_2-artifacts | |
| path: build/tests-headers1_2/ | |
| tests-headers2_1: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 2/1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.a[a-h].*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers2_1 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers2_1-artifacts | |
| path: build/tests-headers2_1/ | |
| tests-headers2_2: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 2/2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.al.*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers2_2 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers2_2-artifacts | |
| path: build/tests-headers2_2/ | |
| tests-headers2_3: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 2/3) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.((a[m-z])|b).*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers2_3 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers2_3-artifacts | |
| path: build/tests-headers2_3/ | |
| tests-headers3_1: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 3/1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.[c-d].*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers3_1 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers3_1-artifacts | |
| path: build/tests-headers3_1/ | |
| tests-headers3_2: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 3/2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.[e-g].*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers3_2 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers3_2-artifacts | |
| path: build/tests-headers3_2/ | |
| tests-headers4_1: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 4/1) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.[h-l].*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers4_1 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers4_1-artifacts | |
| path: build/tests-headers4_1/ | |
| tests-headers4_2: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Header Tests (part 4/2) | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ctest --timeout 60 -j1 -T test --no-compress-output --output-on-failure \ | |
| -R "tests.headers.modules.[m-p].*" | |
| - name: Collect test artifacts | |
| if: always() | |
| uses: ./.github/actions/collect-artifacts | |
| with: | |
| job-name: tests-headers4_2 | |
| - name: Upload test artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: tests-headers4_2-artifacts | |
| path: build/tests-headers4_2/ | |
| tests-performance: | |
| needs: configure-core-core_local-components | |
| runs-on: ubuntu-latest | |
| container: stellargroup/build_env:17 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| sparse-checkout: | | |
| .github | |
| sparse-checkout-cone-mode: false | |
| - name: Restore build artifacts | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: build | |
| key: ${{ runner.os }}-hpx-build-${{ github.sha }} | |
| fail-on-cache-miss: true | |
| - name: Building Performance Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 tests.performance |