This is a generic solution for doxygen + doxygen-awesome-css, as well as support for bundling static assets into doxygen output.
Support GitHub README/Pages, GitLab README/Pages.
- name: Build docs
uses: SHIINASAMA/roxy@1.1
with:
DOXYFILE: 'docs/Doxyfile'
RESOURCE_FOLDER: 'static'
OUTPUT_FOLDER: 'build/html'stages:
- deploy
pages:
stage: deploy
image: reg.mikumikumi.xyz/base/roxy
variables:
PROJECT_PATH: /builds/kaoru/roxy-example
DOXYFILE: docs/Doxyfile
RESOURCE_FOLDER: static
OUTPUT_FOLDER: build/docs
script:
- /usr/local/bin/entrypoint.sh
- mv build/docs public
artifacts:
paths:
- public
rules:
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
when: alwaysdocker build -t roxy .
docker run --rm -e DOXYFILE=docs/Doxyfile -e PROJECT_PATH=/project -e OUTPUT_FOLDER=build/html -e RESOURCE_FOLDER=static -v .:/project roxyNote
The OUTPUT_FOLDER must be the same as the html output location in the DOXYFILE configuration file.
DOXYGEN_AWESOME_CSS_VERSION: version of doxygen-awesome-css, defalut to v2.3.3PROJECT_PATH: project pathDOXYGEN_CONTEXT_FOLDER: Doxygen working dir in PROJECT_PATHDOXYFILE: doxyfile file in PROJECT_PATHRESOURCE_FOLDER: resource folder in PROJECT_PATHOUTPUT_FOLDER: doxygen folder in PROJECT_PATH
Doxygen can not overwrite option via cli, You may set options by manually:
GENERATE_HTML=YES
MARKDOWN_SUPPORT=YES
GENERATE_TREEVIEW=YES
DISABLE_INDEX=NO
FULL_SIDEBAR=NO
HTML_COLORSTYLE=LIGHT
HTML_HEADER=/doxygen-awesome-css/doxygen-custom/header.html
HTML_EXTRA_STYLESHEET=/doxygen-awesome-css/doxygen-awesome.css,/doxygen-awesome-css/doxygen-awesome-sidebar-only.css,/doxygen-awesome-css/doxygen-awesome-sidebar-only-darkmode-toggle.css,/doxygen-awesome-css/doxygen-custom/custom.css,/doxygen-awesome-css/doxygen-custom/custom-alternative.css
HTML_EXTRA_FILES=/doxygen-awesome-css/doxygen-awesome-darkmode-toggle.js,/doxygen-awesome-css/doxygen-awesome-fragment-copy-button.js,/doxygen-awesome-css/doxygen-awesome-interactive-toc.js,/doxygen-awesome-css/doxygen-awesome-paragraph-link.js,/doxygen-awesome-css/doxygen-awesome-tabs.js,/doxygen-awesome-css/doxygen-custom/toggle-alternative-theme.js