mirror of
https://github.com/coleifer/peewee.git
synced 2026-05-06 07:56:41 -04:00
81 lines
2.7 KiB
YAML
81 lines
2.7 KiB
YAML
name: Tests
|
|
on: [push]
|
|
jobs:
|
|
tests:
|
|
name: ${{ matrix.peewee-backend }} - ${{ matrix.python-version }}
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 15
|
|
services:
|
|
mysql:
|
|
image: mariadb:latest
|
|
env:
|
|
MYSQL_ROOT_PASSWORD: peewee
|
|
MYSQL_DATABASE: peewee_test
|
|
ports:
|
|
- 3306:3306
|
|
postgres:
|
|
image: postgres
|
|
env:
|
|
POSTGRES_USER: postgres
|
|
POSTGRES_PASSWORD: peewee
|
|
POSTGRES_DB: peewee_test
|
|
ports:
|
|
- 5432:5432
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
python-version: [3.9, "3.11", "3.13", "3.14"]
|
|
peewee-backend:
|
|
- "sqlite"
|
|
- "postgresql"
|
|
- "mysql"
|
|
include:
|
|
- python-version: "3.8"
|
|
peewee-backend: sqlite
|
|
- python-version: "3.12"
|
|
peewee-backend: sqlite
|
|
- python-version: "3.12"
|
|
peewee-backend: psycopg3
|
|
- python-version: "3.13"
|
|
peewee-backend: psycopg3
|
|
- python-version: "3.14"
|
|
peewee-backend: psycopg3
|
|
- python-version: "3.13"
|
|
peewee-backend: cysqlite
|
|
- python-version: "3.13"
|
|
peewee-backend: cockroachdb
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
- name: deps
|
|
env:
|
|
PGUSER: postgres
|
|
PGHOST: 127.0.0.1
|
|
PGPASSWORD: peewee
|
|
run: |
|
|
sudo apt-get install libsqlite3-dev
|
|
pip install setuptools psycopg2-binary cython pymysql 'apsw' mysql-connector sqlcipher3 pysqlite3 'psycopg[binary]' gevent
|
|
pip install greenlet aiosqlite aiomysql asyncpg pydantic
|
|
python setup.py build_ext -i
|
|
psql peewee_test -c 'CREATE EXTENSION hstore;'
|
|
- name: crdb
|
|
if: ${{ matrix.peewee-backend == 'cockroachdb' }}
|
|
run: |
|
|
wget -qO- https://binaries.cockroachdb.com/cockroach-v22.2.6.linux-amd64.tgz | tar xz
|
|
./cockroach-v22.2.6.linux-amd64/cockroach start-single-node --insecure --background
|
|
./cockroach-v22.2.6.linux-amd64/cockroach sql --insecure -e 'create database peewee_test;'
|
|
- name: cysqlite
|
|
if: ${{ matrix.peewee-backend == 'cysqlite' || matrix.peewee-backend == 'sqlite' }}
|
|
run: |
|
|
pip install -e 'git+https://github.com/coleifer/cysqlite#egg=cysqlite'
|
|
- name: runtests ${{ matrix.peewee-backend }} - ${{ matrix.python-version }}
|
|
env:
|
|
PEEWEE_TEST_BACKEND: ${{ matrix.peewee-backend }}
|
|
PGUSER: postgres
|
|
PGHOST: 127.0.0.1
|
|
PGPASSWORD: peewee
|
|
CI: 1
|
|
run: python runtests.py --mysql-user=root --mysql-password=peewee -s -v2
|