Merge pull request #7048 from mmud/fix/issue-7046 #3
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: | |
| - master | |
| - 'release**' | |
| workflow_dispatch: | |
| 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" | |
| 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 | |
| - name: Package Build Artifacts | |
| run: tar -czf build.tar.gz build/ | |
| - name: Upload Build Artifacts | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| path: build.tar.gz | |
| retention-days: 3 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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 's/tests\.unit\.modules\.segmented_algorithms\./tests.unit.modules.segmented_algorithms.distributed.tcp./g' \ | |
| | 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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 's/tests\.unit\.modules\.segmented_algorithms\./tests.unit.modules.segmented_algorithms.distributed.tcp./g' \ | |
| | 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - 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@v7 | |
| 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: Download build artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: hpx-build-${{ github.sha }} | |
| - name: Extract build artifacts | |
| run: tar -xzf build.tar.gz | |
| - name: Building Performance Tests | |
| shell: bash | |
| working-directory: build | |
| run: | | |
| ninja -j2 -k 0 tests.performance |