Skip to content

Commit 761644d

Browse files
committed
CI: Convert Doxygen build to CMake Presets
Signed-off-by: Patrick M. Niedzielski <[email protected]>
1 parent f229f3b commit 761644d

File tree

2 files changed

+38
-8
lines changed

2 files changed

+38
-8
lines changed

.github/workflows/build.yaml

Lines changed: 29 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -340,23 +340,44 @@ jobs:
340340
run: ${{ github.workspace }}/src/plugins/bmqprometheus/tests/bmqprometheus_prometheusstatconsumer_test.py -p ${{ github.workspace }}/build/blazingmq -m push --no-docker
341341

342342
documentation:
343-
name: "Documentation"
343+
name: Build Doxygen documentation
344344
runs-on: ubuntu-latest
345+
needs: get_dependencies
345346
steps:
346347
- uses: actions/checkout@v4
347348

349+
- uses: actions/cache/restore@v4
350+
with:
351+
path: deps
352+
key: ${{ needs.get_dependencies.outputs.cache_key }}
353+
348354
- name: Set up dependencies
349355
run: |
350356
sudo apt-get update
351-
sudo apt-get install -qy doxygen
357+
sudo apt-get install -qy build-essential \
358+
gdb \
359+
curl \
360+
doxygen \
361+
python3.10 \
362+
python3-pip \
363+
cmake \
364+
ninja-build \
365+
pkg-config \
366+
bison \
367+
libfl-dev \
368+
libbenchmark-dev \
369+
libgmock-dev \
370+
libz-dev
352371
353-
- name: Set up output directory
354-
run: |
355-
mkdir -p docs/docs/apidocs
372+
- name: Install cached non packaged dependencies
373+
working-directory: deps
374+
run: ../docker/build_deps.sh
356375

357-
- name: Build docs
358-
run: |
359-
doxygen Doxyfile
376+
- name: Configure BlazingMQ Doxygen documentation
377+
run: cmake --preset gh-build-ubuntu-latest-cpp17
378+
379+
- name: Build BlazingMQ Doxygen documentation
380+
run: cmake --build --preset gh-doxygen
360381

361382
shellcheck:
362383
name: Shellcheck

CMakePresets.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,15 @@
135135
"bmqtool",
136136
"bmqprometheus"
137137
]
138+
},
139+
{
140+
"name": "gh-doxygen",
141+
"description": "GitHub Actions CI: Build Doxygen Documentation",
142+
"configurePreset": "gh-build-ubuntu-latest-cpp17",
143+
"jobs": 8,
144+
"targets": [
145+
"docs"
146+
]
138147
}
139148
],
140149
"testPresets": [

0 commit comments

Comments
 (0)