name: Test Documentation Build on: pull_request: branches: - master - doc-fixes push: branches: - master - doc-fixes jobs: test-sphinx-build: name: test-sphinx-build runs-on: ${{matrix.os}} strategy: matrix: python-version: [3.9] os: [ubuntu-latest] fail-fast: False steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} cache: 'pip' cache-dependency-path: '**/requirements*.txt' - name: Install dependencies run: | python -W ignore -m pip install --upgrade pip python -W ignore -m pip install -r requirements-all.txt - name: Test autogeneration of admonitions run: pytest -v --tb=short tests/docs/admonition_inserter.py - name: Build docs run: sphinx-build docs/source docs/build/html -W --keep-going -j auto - name: Upload docs uses: actions/upload-artifact@v4 with: name: HTML Docs retention-days: 7 path: | # Exclude the .doctrees folder and .buildinfo file from the artifact # since they are not needed and add to the size docs/build/html/* !docs/build/html/.doctrees !docs/build/html/.buildinfo