From 7b8597995f410a745191e8748dd266eea0cb0329 Mon Sep 17 00:00:00 2001 From: Ryohei Sasaki Date: Fri, 3 Apr 2026 16:47:59 +0900 Subject: [PATCH] Add Doxygen config and CI workflow for API docs --- .github/workflows/docs.yml | 29 +++++++++++++++++++++++++++++ .gitignore | 1 + Doxyfile | 19 +++++++++++++++++++ 3 files changed, 49 insertions(+) create mode 100644 .github/workflows/docs.yml create mode 100644 Doxyfile diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 00000000..691b2842 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,29 @@ +name: docs + +on: + push: + branches: + - develop-ros2 + - main-ros2 + +jobs: + doxygen: + runs-on: ubuntu-22.04 + + steps: + - uses: actions/checkout@v4 + + - name: Install Doxygen + run: | + sudo apt-get update + sudo apt-get install -y doxygen + + - name: Generate API docs + run: doxygen Doxyfile + + - name: Deploy to GitHub Pages + uses: peaceiris/actions-gh-pages@v4 + if: github.ref == 'refs/heads/develop-ros2' + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: docs/api/html diff --git a/.gitignore b/.gitignore index 1d74e219..9bab43a9 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .vscode/ +docs/api/ diff --git a/Doxyfile b/Doxyfile new file mode 100644 index 00000000..a3787aba --- /dev/null +++ b/Doxyfile @@ -0,0 +1,19 @@ +PROJECT_NAME = "Eagleye" +PROJECT_NUMBER = 1.0.0 +PROJECT_BRIEF = "GNSS/IMU-based vehicle localization for ROS2" +OUTPUT_DIRECTORY = docs/api +INPUT = eagleye_core eagleye_msgs eagleye_rt eagleye_util +RECURSIVE = YES +FILE_PATTERNS = *.cpp *.hpp *.h +EXCLUDE_PATTERNS = */build/* */install/* +GENERATE_HTML = YES +GENERATE_LATEX = NO +EXTRACT_ALL = YES +EXTRACT_PRIVATE = NO +EXTRACT_STATIC = YES +HAVE_DOT = NO +QUIET = YES +WARNINGS = YES +WARN_IF_UNDOCUMENTED = NO +HTML_OUTPUT = html +USE_MDFILE_AS_MAINPAGE = README.md