Skip to content

Commit 1148d3f

Browse files
committed
ALP CLI
1 parent 3b6af7f commit 1148d3f

File tree

1 file changed

+40
-75
lines changed

1 file changed

+40
-75
lines changed

.github/workflows/CI.yaml

Lines changed: 40 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,123 +1,88 @@
1-
name: CI
1+
name: ALP CI
22
run-name: ${{ github.actor }} is running the ALP CI
33

44
on: push
55

66
jobs:
7+
# Format Check Job
78
check-format:
89
runs-on: ubuntu-latest
9-
steps:
10-
- name: Echo Build
11-
run: echo "todo"
12-
13-
build:
14-
needs:
15-
- check-format
16-
runs-on: ${{ matrix.platform }}
17-
strategy:
18-
fail-fast: true
19-
matrix:
20-
platform: [ubuntu-latest, macos-latest]
21-
BUILD_TYPE: [Debug, Release]
22-
cxx: [clang++]
23-
2410
steps:
2511
- uses: actions/checkout@v4
26-
- uses: actions/setup-node@v4
27-
28-
- name: Make Build Directory
29-
run: mkdir ${{ github.workspace }}/build
30-
31-
- name: Configure CMake
32-
run: cmake -S ${{ github.workspace }} -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.BUILD_TYPE }}
33-
env:
34-
CXX: ${{ matrix.cxx }}
3512

36-
- name: Build
37-
run: cmake --build ${{ github.workspace }}/build -j 16
13+
- name: Check Code Format
14+
run: echo "TODO: Add code formatting check (e.g., clang-format)"
3815

39-
test:
40-
needs:
41-
- build
16+
# Build and Test Job
17+
build-and-test:
18+
needs: check-format
4219
runs-on: ${{ matrix.platform }}
4320
strategy:
4421
fail-fast: true
4522
matrix:
4623
platform: [ubuntu-latest, macos-latest]
47-
BUILD_TYPE: [Debug, Release]
24+
build_type: [Debug, Release]
4825
cxx: [clang++]
4926

5027
steps:
5128
- uses: actions/checkout@v4
52-
- uses: actions/setup-node@v4
5329

54-
- name: Make Build Directory
55-
run: mkdir ${{ github.workspace }}/build
30+
- name: Set Up CMake
31+
run: mkdir build
5632

5733
- name: Configure CMake
58-
run: cmake -DALP_BUILD_TESTING=ON -DALP_ENABLE_VERBOSE_OUTPUT=ON -S ${{ github.workspace }} -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.BUILD_TYPE }}
34+
run: cmake -S . -B build -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
5935
env:
6036
CXX: ${{ matrix.cxx }}
6137

62-
- name: Build
63-
run: cmake --build ${{ github.workspace }}/build -j 16
38+
- name: Build Project
39+
run: cmake --build build -j 16
6440

65-
- name: Test
66-
working-directory: ${{ github.workspace }}/build
67-
run: ctest -j 4 --rerun-failed --output-on-failure
41+
- name: Run Tests
42+
working-directory: build
43+
run: ctest --output-on-failure -j 16
6844

69-
build_benchmark:
70-
needs:
71-
- test
45+
# Benchmarking Job
46+
build-benchmark:
47+
needs: build-and-test
7248
runs-on: ${{ matrix.platform }}
7349
strategy:
7450
fail-fast: true
7551
matrix:
7652
platform: [ubuntu-latest, macos-latest]
77-
BUILD_TYPE: [Release]
53+
build_type: [Release]
7854
cxx: [clang++]
7955

8056
steps:
8157
- uses: actions/checkout@v4
82-
- uses: actions/setup-node@v4
8358

84-
- name: Make Build Directory
85-
run: mkdir ${{ github.workspace }}/build
59+
- name: Set Up CMake
60+
run: mkdir build
8661

87-
- name: Configure CMake
88-
run: cmake -DALP_BUILD_BENCHMARKING=ON -S ${{ github.workspace }} -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.BUILD_TYPE }}
62+
- name: Configure CMake with Benchmarking
63+
run: cmake -S . -B build -DALP_BUILD_BENCHMARKING=ON -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
8964
env:
9065
CXX: ${{ matrix.cxx }}
9166

92-
- name: Build
93-
run: cmake --build ${{ github.workspace }}/build -j 16
94-
95-
- name: Test
96-
working-directory: ${{ github.workspace }}/build
97-
run: ctest -j 4
98-
99-
build_full_dataset:
100-
needs:
101-
- test
102-
runs-on: ${{ matrix.platform }}
103-
strategy:
104-
fail-fast: true
105-
matrix:
106-
platform: [ubuntu-latest, macos-latest]
107-
BUILD_TYPE: [Release]
108-
cxx: [clang++]
67+
- name: Build Project
68+
run: cmake --build build -j 16
10969

70+
# Publication Job
71+
build-publication:
72+
needs: build-and-test
73+
runs-on: ubuntu-latest
11074
steps:
11175
- uses: actions/checkout@v4
112-
- uses: actions/setup-node@v4
11376

114-
- name: Make Build Directory
115-
run: mkdir ${{ github.workspace }}/build
77+
- name: Set Up CMake
78+
run: mkdir build
11679

117-
- name: Configure CMake
118-
run: cmake -DALP_BUILD_BENCHMARKING=ON -S ${{ github.workspace }} -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.BUILD_TYPE }}
119-
env:
120-
CXX: ${{ matrix.cxx }}
80+
- name: Configure CMake with Publication
81+
run: cmake -S . -B build -DALP_BUILD_PUBLICATION=ON -DCMAKE_BUILD_TYPE=Release
82+
83+
- name: Build Publication
84+
run: cmake --build build -j 16
12185

122-
- name: Build
123-
run: cmake --build ${{ github.workspace }}/build -j 16
86+
- name: Run Publication Tests
87+
working-directory: build
88+
run: ./publication/run_all_publication_tests

0 commit comments

Comments
 (0)