Skip to content

Improve the documentation builds, including API docs #4124

Improve the documentation builds, including API docs

Improve the documentation builds, including API docs #4124

Workflow file for this run

name: AMR-Wind-Docs
on:
push:
branches: [main]
pull_request:
branches: [main]
concurrency:
group: ${{github.ref}}-${{github.head_ref}}-docs
cancel-in-progress: true
jobs:
Docs:
runs-on: ubuntu-latest
steps:
- name: Clone
uses: actions/checkout@v4
with:
submodules: true
- name: Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Dependencies
run: |
export DEBIAN_FRONTEND=noninteractive
sudo apt-get update
sudo apt-get install -y --no-install-recommends graphviz libenchant-2-dev
python3 -m pip install --upgrade pip
pip3 install sphinx sphinx_rtd_theme sphinx_toolbox sphinx_copybutton pyenchant sphinxcontrib-spelling doxysphinx
- name: Doxygen install
uses: ssciwr/doxygen-install@v1.6.0
with:
version: "1.12.0"
- name: Configure
run: |
cmake -B ${{runner.workspace}}/build-docs \
-DAMR_WIND_ENABLE_DOCUMENTATION:BOOL=ON \
${{github.workspace}}
- name: Build
# execute from top-level amr-wind directory
run: |
echo "::add-matcher::.github/problem-matchers/sphinx.json"
cmake --build ${{runner.workspace}}/build-docs -t docs 2>&1 | tee -a build-output.txt
mv ${{runner.workspace}}/build-docs/docs/sphinx/html ./documentation
touch ./documentation/.nojekyll
- name: Report
run: |
echo "::add-matcher::.github/problem-matchers/sphinx.json"
egrep "WARNING:|Warning:|warning:|ERROR:|Error:|error:" build-output.txt | sort | uniq | \
awk 'BEGIN{i=0}{print $0}{i++}END{print "Warnings: "i}' > build-output-warnings.txt
cat build-output-warnings.txt
exit $(tail -n 1 build-output-warnings.txt | awk '{print $2}')
- name: Deploy
if: github.event_name == 'push'
uses: JamesIves/github-pages-deploy-action@releases/v3
with:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
BRANCH: gh-pages
FOLDER: documentation
SINGLE_COMMIT: true