Skip to content

Configuration - Update CMake to work with default packages #16

Configuration - Update CMake to work with default packages

Configuration - Update CMake to work with default packages #16

# This workflow builds and tests OCCT on multiple platforms (Windows, macOS, Linux with Clang, and Linux with GCC).
# It is triggered on pull requests to any branch.
# The workflow includes steps to prepare and build the project on each platform, run tests, and upload the results.
# Concurrency is set to ensure that only one instance of the workflow runs per pull request at a time.
name: Build and Test OCCT on Multiple Platforms
on:
pull_request:
branches:
- '**'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
summarize:
name: Summarize and Send PR Message
runs-on: ubuntu-24.04
steps:
# Step: Checkout the repository
- name: Checkout repository
uses: actions/[email protected]
- name: Get latest workflow run ID from master
id: get_run_id
run: |
workflow_name="Build and Test OCCT on Multiple Platforms"
latest_run_id=$(curl -s \
-H "Accept: application/vnd.github.v3+json" \
"https://api.github.com/repos/${{ github.repository }}/actions/runs?branch=master&status=success&event=pull_request" \
| jq -r --arg workflow_name "$workflow_name" '.workflow_runs[] | select(.name==$workflow_name) | .id' | head -n 1)
echo "latest_run_id=$latest_run_id" >> $GITHUB_ENV
# Step: Download all test results (Windows x64) from master
- name: Download all test results (Windows x64) from master
uses: actions/[email protected]
with:
name: results-windows-x64
path: results/master/windows-x64
run-id: ${{ env.latest_run_id }}
# Step: Download all test results (Windows Clang x64) from master
- name: Download all test results (Windows Clang x64) from master
uses: actions/[email protected]
with:
name: results-windows-clang-x64
path: results/master/windows-clang-x64
run-id: ${{ env.latest_run_id }}
# Step: Download all test results (macOS x64) from master
- name: Download all test results (macOS x64) from master
uses: actions/[email protected]
with:
name: results-macos-x64
path: results/master/macos-x64
run-id: ${{ env.latest_run_id }}
# Step: Download all test results (macOS GCC x64) from master
- name: Download all test results (macOS GCC x64) from master
uses: actions/[email protected]
with:
name: results-macos-gcc-x64
path: results/master/macos-gcc-x64
run-id: ${{ env.latest_run_id }}
# Step: Download all test results (Linux Clang x64) from master
- name: Download all test results (Linux Clang x64) from master
uses: actions/[email protected]
with:
name: results-linux-clang-x64
path: results/master/linux-clang-x64
run-id: ${{ env.latest_run_id }}
# Step: Download all test results (Linux GCC x64) from master
- name: Download all test results (Linux GCC x64) from master
uses: actions/[email protected]
with:
name: results-linux-gcc-x64
path: results/master/linux-gcc-x64
run-id: ${{ env.latest_run_id }}
# Step: Download all test results (Windows x64) from current workflow
- name: Download all test results (Windows x64)
uses: actions/[email protected]
with:
name: results-windows-x64
path: results/current/windows-x64
# Step: Download all test results (Windows Clang x64) from current workflow
- name: Download all test results (Windows Clang x64)
uses: actions/[email protected]
with:
name: results-windows-clang-x64
path: results/current/windows-clang-x64
# Step: Download all test results (macOS x64) from current workflow
- name: Download all test results (macOS x64)
uses: actions/[email protected]
with:
name: results-macos-x64
path: results/current/macos-x64
# Step: Download all test results (macOS GCC x64) from current workflow
- name: Download all test results (macOS GCC x64)
uses: actions/[email protected]
with:
name: results-macos-gcc-x64
path: results/current/macos-gcc-x64
# Step: Download all test results (Linux Clang x64) from current workflow
- name: Download all test results (Linux Clang x64)
uses: actions/[email protected]
with:
name: results-linux-clang-x64
path: results/current/linux-clang-x64
# Step: Download all test results (Linux GCC x64) from current workflow
- name: Download all test results (Linux GCC x64)
uses: actions/[email protected]
with:
name: results-linux-gcc-x64
path: results/current/linux-gcc-x64
# Step: Summarize results
- name: Summarize results
run: |
echo "Summarizing results..."
# Step: Send PR message
- name: Send PR message
run: |
echo "Sending PR message..."