# SPDX-FileCopyrightText: PyPSA-Earth and PyPSA-Eur Authors # # SPDX-License-Identifier: CC0-1.0 name: Docs CI on: pull_request: branches: - main paths: - "doc/**" - "**.md" - "**.rst" - "mkdocs.yml" - ".readthedocs.yaml" - "doc/requirements.txt" # Cancel any in-progress runs when a new run is triggered concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: build-docs: name: Build docs runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 with: fetch-depth: 0 - name: Set up Python uses: actions/setup-python@v7 with: python-version: "3.11" cache: pip cache-dependency-path: doc/requirements.txt - name: Install system dependencies run: sudo apt-get update -qq && sudo apt-get install -y -qq graphviz - name: Install doc dependencies run: pip install -r doc/requirements.txt - name: Build docs (strict) run: mkdocs build --strict - name: Check spelling uses: codespell-project/actions-codespell@v2 with: # Ignore list mirrors .pre-commit-config.yaml codespell hook. # FOM = Fixed Operation & Maintenance. splitted appears in auto-generated snippets. ignore_words_list: ore,tabacco,fo,FO,vor,fom,FOM,splitted path: doc