Skip to content

Bump actions/setup-python from 4 to 5 #148

Bump actions/setup-python from 4 to 5

Bump actions/setup-python from 4 to 5 #148

Workflow file for this run

name: Unit testing, formatting & linting
on:
- push
concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
testing-formatting-linting:
runs-on: ubuntu-latest
strategy:
matrix:
python-version:
- "3.8"
- "3.9"
- "3.10"
- "3.11"
apispec-version:
- "6.0"
- "5.2"
- "5.1"
- "5.0"
- "4.7"
- "4.6"
- "4.5"
- "4.4"
- "4.3"
- "4.2"
- "4.1"
- "4.0"
- "3.3"
- "3.2"
- "3.1"
- "3.0"
pyyaml-version:
- "6.0"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Cache multiple Pips
uses: actions/cache@v3
with:
path: |
~/.cache/pip
.venv
key: ${{ runner.os }}-${{ matrix.python-version }}-${{ matrix.apispec-version }}-${{ matrix.pyyaml-version }}-${{ hashFiles('**/poetry.lock') }}
- run: pip install poetry
- run: poetry install --sync
- run: poetry run pip install --no-build-isolation "apispec~=${{ matrix.apispec-version }}" "pyyaml~=${{ matrix.pyyaml-version }}"
- run: poetry run make test
- run: poetry run make check
publish_package:
runs-on: ubuntu-latest
needs: testing-formatting-linting
if: startsWith(github.ref, 'refs/tags')
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Cache Pip
uses: actions/cache@v3
with:
path: |
~/.cache/pip
.venv
key: ${{ runner.os }}-3.11-${{ hashFiles('**/poetry.lock') }}
- run: pip install poetry
- run: poetry build
# From https://packaging.python.org/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/#publishing-the-distribution-to-pypi-and-testpypi
- name: Publish distribution 📦 to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}