Skip to content

azimafroozeh is running the ALP CI #151

azimafroozeh is running the ALP CI

azimafroozeh is running the ALP CI #151

Workflow file for this run

name: ALP CI
run-name: ${{ github.actor }} is running the ALP CI
on:
push:
branches:
- "*" # All branches
pull_request:
branches:
- "*" # All branches
jobs:
# Format Check Job
check-format:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check Code Format
run: "echo 'TODO: Add code formatting check (e.g., clang-format)'"
# Build and Test Job
build-and-test:
needs: check-format
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: true
matrix:
platform: [ ubuntu-latest, macos-latest ]
build_type: [ Debug, Release ]
cxx: [ clang++ ]
steps:
- uses: actions/checkout@v4
- name: Set Up Build Directory
run: mkdir build
- name: Configure CMake
run: cmake -S . -B build -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
env:
CXX: ${{ matrix.cxx }}
- name: Build Project
run: cmake --build build -j 16
- name: Run Tests
working-directory: build
run: ctest --output-on-failure -j 16
# Benchmarking Job
build-benchmark:
needs: build-and-test
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: true
matrix:
platform: [ ubuntu-latest, macos-latest ]
build_type: [ Release ]
cxx: [ clang++ ]
steps:
- uses: actions/checkout@v4
- name: Set Up Build Directory
run: mkdir build
- name: Configure CMake with Benchmarking
run: cmake -S . -B build -DALP_BUILD_BENCHMARKING=ON -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
env:
CXX: ${{ matrix.cxx }}
- name: Build Project
run: cmake --build build -j 16
# Publication Job
build-publication:
needs: build-and-test
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: true
matrix:
platform: [ ubuntu-latest, macos-latest ]
build_type: [ Release ]
cxx: [ clang++ ]
steps:
- uses: actions/checkout@v4
- name: Install Boost
run: |
if [[ "$RUNNER_OS" == "Linux" ]]; then
sudo apt-get update
sudo apt-get install -y libboost-all-dev
elif [[ "$RUNNER_OS" == "macOS" ]]; then
brew update
brew install boost
else
echo "Unsupported platform: $RUNNER_OS"
exit 1
fi
- name: Set Up Build Directory
run: mkdir build
- name: Configure CMake with Publication
run: cmake -S . -B build -DALP_BUILD_PUBLICATION=ON -DCMAKE_BUILD_TYPE=Release
env:
CXX: ${{ matrix.cxx }}
- name: Build Publication
run: cmake --build build -j 16
- name: Run Publication Tests
working-directory: build
run: ./publication/run_all_publication_tests