Add prompts for branch name, Python version, and test OS selection #127
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Main | |
on: | |
pull_request: | |
types: [opened, synchronize, reopened] | |
push: | |
branches: [main] | |
jobs: | |
quality: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out | |
uses: actions/checkout@v4 | |
- uses: actions/cache@v4 | |
with: | |
path: ~/.cache/pre-commit | |
key: pre-commit-${{ hashFiles('.pre-commit-config.yaml') }} | |
- name: Set up the environment | |
uses: ./.github/actions/setup-poetry-env | |
- name: Run pre-commit | |
run: poetry run pre-commit run -a --show-diff-on-failure | |
- name: Inspect dependencies | |
run: poetry run deptry . | |
- name: Check Poetry lock file consistency | |
run: poetry lock --check | |
tests-and-type-check: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] | |
fail-fast: false | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- name: Check out | |
uses: actions/checkout@v4 | |
- name: Set up the environment | |
uses: ./.github/actions/setup-poetry-env | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Run tests | |
run: poetry run pytest tests --cov --cov-config=pyproject.toml --cov-report=xml | |
- name: Check typing | |
run: poetry run mypy | |
- name: Upload coverage reports to Codecov with GitHub Action on Python 3.11 for Ubuntu | |
uses: codecov/codecov-action@v3 | |
if: ${{ matrix.python-version == '3.11' }} | |
check-docs: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out | |
uses: actions/checkout@v4 | |
- name: Set up the environment | |
uses: ./.github/actions/setup-poetry-env | |
- name: Check if documentation can be built | |
run: poetry run mkdocs build -s |