added doc CI job

This commit is contained in:
matlabbe
2026-05-17 00:00:42 -07:00
parent f58e0a5023
commit 1e73868716
7 changed files with 270 additions and 3 deletions
+1 -1
View File
@@ -92,4 +92,4 @@ jobs:
source /opt/ros/${{ matrix.ros_distribution }}/setup.bash
ctest -C ${{env.BUILD_TYPE}} --output-on-failure
ctest -C ${{env.BUILD_TYPE}} --output-on-failure --rerun-failed
+74
View File
@@ -0,0 +1,74 @@
name: Documentation
on:
push:
branches:
- master
pull_request:
branches:
- '**'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
permissions:
contents: read
jobs:
doxygen:
name: Doxygen (ubuntu-24.04)
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
DEBIAN_FRONTEND=noninteractive
sudo apt-get update
sudo apt-get install -y \
doxygen \
cmake \
libopencv-dev \
libpcl-dev \
libyaml-cpp-dev \
git
- name: Configure CMake (export headers for Doxygen)
run: |
cmake -B ${{ github.workspace }}/build-docs \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_TESTING=OFF \
-DBUILD_APP=OFF \
-DBUILD_TOOLS=OFF \
-DBUILD_EXAMPLES=OFF \
-DWITH_QT=OFF \
-DWITH_PYTHON=OFF \
-DWITH_CERES=OFF \
-DWITH_G2O=OFF \
-DWITH_GTSAM=OFF \
-DWITH_MRPT=OFF \
-DWITH_VERTIGO=OFF \
-DWITH_CVSBA=OFF \
-DWITH_POINTMATCHER=OFF \
-DWITH_CCCORELIB=OFF \
-DWITH_OPEN3D=OFF \
-DWITH_LOAM=OFF \
-DWITH_FLOAM=OFF \
-DWITH_LIOSAM=OFF \
-DWITH_FLYCAPTURE2=OFF \
-DWITH_ZED=OFF \
-DWITH_ZEDOC=OFF \
-DWITH_REALSENSE=OFF
- name: Generate Doxygen HTML
run: doxygen Doxyfile
- name: Upload Doxygen HTML artifact
uses: actions/upload-artifact@v4
with:
name: doxygen-html
path: doc/html
retention-days: 14
+57
View File
@@ -0,0 +1,57 @@
name: ROS Documentation
on:
push:
branches:
- master
pull_request:
branches:
- '**'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
permissions:
contents: read
jobs:
rosdoc:
name: rosdoc2 (jazzy)
runs-on: ubuntu-24.04
steps:
- name: Setup ROS2
run: |
sudo apt install software-properties-common
sudo add-apt-repository universe
sudo apt update && sudo apt install curl -y
export ROS_APT_SOURCE_VERSION=$(curl -s https://api.github.com/repos/ros-infrastructure/ros-apt-source/releases/latest | grep -F "tag_name" | awk -F\" '{print $4}')
curl -L -o /tmp/ros2-apt-source.deb "https://github.com/ros-infrastructure/ros-apt-source/releases/download/${ROS_APT_SOURCE_VERSION}/ros2-apt-source_${ROS_APT_SOURCE_VERSION}.$(. /etc/os-release && echo ${UBUNTU_CODENAME:-${VERSION_CODENAME}})_all.deb"
sudo apt install /tmp/ros2-apt-source.deb
sudo apt update
- uses: ros-tooling/[email protected]
with:
required-ros-distributions: jazzy
- uses: actions/checkout@v4
- name: Install documentation tools
run: |
sudo apt-get update
sudo apt-get install -y python3-rosdoc2 doxygen graphviz
- name: Generate Sphinx documentation (rosdoc2)
run: |
# Do not source a colcon workspace (rosdoc2 known issue #66).
source /opt/ros/jazzy/setup.bash
rosdoc2 build --package-path "${{ github.workspace }}"
- name: Upload ROS documentation artifact
uses: actions/upload-artifact@v4
with:
name: rosdoc2-html
path: docs_output/rtabmap
retention-days: 14