Skip to content

Merge pull request #147 from rmartin16/drop-3.8 #328

Merge pull request #147 from rmartin16/drop-3.8

Merge pull request #147 from rmartin16/drop-3.8 #328

Workflow file for this run

name: CI
on:
pull_request:
push:
branches:
- main
# Cancel active CI runs for a PR before starting another run
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
defaults:
run:
shell: bash
env:
FORCE_COLOR: "1"
jobs:
pre-commit:
name: Pre-commit checks
uses: beeware/.github/.github/workflows/pre-commit-run.yml@main
with:
pre-commit-source: -r requirements.txt
unit-tests:
name: Unit tests
needs: pre-commit
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4.1.7
- name: Set up Python
uses: actions/setup-python@v5.1.1
with:
python-version: "3.X"
- name: Install Dependencies
run: python -m pip install -r requirements.txt
- name: Test with tox
run: tox
verify-projects:
name: Verify project
needs: unit-tests
uses: beeware/.github/.github/workflows/app-create-verify.yml@main
with:
runner-os: ${{ matrix.runner-os }}
framework: ${{ matrix.framework }}
strategy:
fail-fast: false
matrix:
framework: [ "toga", "pyside6", "pygame" ]
runner-os: [ "macos-latest", "ubuntu-22.04", "windows-latest" ]
verify-apps:
name: Build app
needs: unit-tests
uses: beeware/.github/.github/workflows/app-build-verify.yml@main
with:
# This *must* be the version of Python that is the native system Python on
# ubuntu-22.04, which is needed to test local Debian packages. We use
# ubuntu-22.04 explicitly rather than ubuntu-latest because when
# ubuntu-latest upgrades to ubuntu-24.04, it will happen gradually, so the
# system Python version won't be predictable.
python-version: "3.10"
runner-os: ${{ matrix.runner-os }}
framework: ${{ matrix.framework }}
strategy:
fail-fast: false
matrix:
framework: [ "toga", "pyside6", "pygame" ]
runner-os: [ "macos-latest", "ubuntu-22.04", "windows-latest" ]