Skip to content

Merge pull request #161 from beeware/linux-system #360

Merge pull request #161 from beeware/linux-system

Merge pull request #161 from beeware/linux-system #360

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/[email protected]
- name: Set up Python
uses: actions/[email protected]
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", "console" ]
runner-os: [ "macos-latest", "ubuntu-latest", "windows-latest" ]
verify-apps:
name: Build app
needs: unit-tests
uses: beeware/.github/.github/workflows/app-build-verify.yml@main
with:
python-version: ${{ matrix.python-version }}
runner-os: ${{ matrix.runner-os }}
framework: ${{ matrix.framework }}
strategy:
fail-fast: false
matrix:
framework: [ "toga", "pyside6", "pygame", "console" ]
runner-os: [ "macos-latest", "ubuntu-latest", "windows-latest" ]
include:
# A version of Python that is supported by all the GUI toolkits.
- python-version: "3.12"
# Ubuntu must always use the system Python
- runner-os: ubuntu-latest
python-version: system