Skip to content

[pre-commit.ci] pre-commit autoupdate #4835

[pre-commit.ci] pre-commit autoupdate

[pre-commit.ci] pre-commit autoupdate #4835

Workflow file for this run

name: Tests
on:
push:
tags:
- v**
branches-ignore:
- "dependabot/**"
- "sourcery/**"
- "pre-commit-ci-update-config"
pull_request:
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- name: Check out repo
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Run pre-commit
uses: pre-commit/[email protected]
check-manifest:
name: Check Manifest
runs-on: ubuntu-latest
steps:
- name: Check out repo
uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install check manifest
run: python -m pip install check-manifest 'setuptools>=62.4.0'
- name: Run check manifest
run: check-manifest
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup conda
uses: s-weigand/setup-conda@v1
with:
conda-channels: conda-forge
activate-conda: false
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies
run: |
conda install -y pandoc
python -m pip install -U pip wheel
python -m pip install .
python -m pip install -U -r docs/requirements.txt
- name: Show installed packages
run: pip freeze
- name: Build docs
run: |
make --directory=docs clean html
docs-links:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup conda
uses: s-weigand/setup-conda@v1
with:
conda-channels: conda-forge
activate-conda: false
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies
run: |
conda install -y pandoc
python -m pip install -U pip wheel
python -m pip install .
python -m pip install -U -r docs/requirements.txt
- name: Show installed packages
run: pip freeze
- name: Check doc links
run: |
make --directory=docs clean linkcheck $@ | tee linkcheck-output.txt
exit ${PIPESTATUS[0]}
- name: Linkcheck summary
if: ${{ always() }}
run: cat linkcheck-output.txt | grep -E "(\(line.*\)|writing output)"
docs-notebooks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install -U pip wheel
python -m pip install -U -r requirements_dev.txt
pip install .
- name: Show installed packages
run: python -m pip freeze
- name: Build docs
run: |
python -m pytest -vv --nbval docs/source/notebooks
test:
runs-on: ${{ matrix.os }}
needs: [pre-commit, check-manifest]
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
python-version: ["3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip wheel
python -m pip install -r requirements_dev.txt
python -m pip install -e .
- name: Show installed packages
run: python -m pip freeze
- name: Run tests
run: |
python -m pytest --cov=./ --cov-report term --cov-report xml --cov-config pyproject.toml glotaran
- name: Codecov Upload
uses: codecov/codecov-action@v4
with:
file: ./coverage.xml
deploy:
runs-on: ubuntu-latest
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
needs: [test, docs, docs-notebooks]
permissions:
id-token: write # IMPORTANT: this permission is mandatory for trusted publishing
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install -U pip wheel 'setuptools>=62.4.0'
- name: Build dist
run: |
python setup.py sdist bdist_wheel
- name: Publish package
uses: pypa/[email protected]
with:
print-hash: true