Skip to content

Add Python 3.11 to workflows and apply ruff linting (#68) #67

Add Python 3.11 to workflows and apply ruff linting (#68)

Add Python 3.11 to workflows and apply ruff linting (#68) #67

Workflow file for this run

name: documentation
on:
push:
branches:
- main
jobs:
documentation:
runs-on: ubuntu-latest
steps:
- name: Checkout the repo
uses: actions/checkout@v4
- name: Set up Python 3.9
id: setup-python
uses: actions/setup-python@v5
with:
python-version: 3.9
- name: Install poetry
uses: snok/install-poetry@v1
with:
virtualenvs-create: true
virtualenvs-in-project: true
- name: Cache environment
id: cached-dependencies
uses: actions/cache@v4
with:
path: .venv
key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }}
- name: Install dependencies
if: steps.cached-dependencies.outputs.cache-hit != 'true'
run: |
poetry install --no-interaction --no-root
- name: Install library
run: |
poetry install --no-interaction
- name: Generate documentation with Sphinx
run: |
source .venv/bin/activate
make docs
touch docs/_build/html/.nojekyll
- name: Publish docs
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: gh-pages
folder: docs/_build/html
clean-exclude: |
_badges
_coverage
- name: Generate style badge
uses: knightdave/[email protected]
with:
file: docs/_badges/style.svg
label: code style
value: black
color: black
template: docs/_badges/template.svg
overwrite: true
- name: Extract license
run: |
echo "LICENSE=$(grep -oP 'license = "\K([A-z-0-9]+)(?=")' pyproject.toml)" >> $GITHUB_ENV
- name: Generate license badge
uses: knightdave/[email protected]
with:
file: docs/_badges/license.svg
label: license
value: ${{ env.LICENSE }}
color: yellowgreen
template: docs/_badges/template.svg
overwrite: true
- name: Generate passing badge
if: success()
uses: knightdave/[email protected]
with:
file: docs/_badges/documentation.svg
label: docs
value: passing
color: green
template: docs/_badges/template.svg
overwrite: true
- name: Generate failing badge
if: failure()
uses: knightdave/[email protected]
with:
file: docs/_badges/documentation.svg
label: docs
value: failing
color: red
template: docs/_badges/template.svg
overwrite: true
- name: Publish badge
if: success() || failure()
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: gh-pages
folder: docs/_badges
target-folder: _badges
clean: false