Run tests in CI against psycopg.

This commit is contained in:
Patrick Cloke 2023-11-09 15:13:09 -05:00
parent e32f49a24b
commit 958580cd11
5 changed files with 26 additions and 12 deletions

View File

@ -50,23 +50,38 @@ if not IS_PR:
for version in ("3.9", "3.10", "3.11", "3.12")
)
# Run with both psycopg2 and psycopg.
trial_postgres_tests = [
{
"python-version": "3.8",
"database": "postgres",
"postgres-version": "11",
"extras": "all",
}
},
{
"python-version": "3.8",
"database": "psycopg",
"postgres-version": "11",
"extras": "all",
},
]
if not IS_PR:
trial_postgres_tests.append(
trial_postgres_tests.extend(
[
{
"python-version": "3.12",
"database": "postgres",
"postgres-version": "16",
"extras": "all",
}
},
{
"python-version": "3.12",
"database": "psycopg",
"postgres-version": "16",
"extras": "all",
},
]
)
trial_no_extra_tests = [

View File

@ -346,7 +346,9 @@ jobs:
run: until pg_isready -h localhost; do sleep 1; done
- run: poetry run trial --jobs=6 tests
env:
SYNAPSE_POSTGRES: ${{ matrix.job.database == 'postgres' || '' }}
# If matrix.job.database is 'psycopg' set SYNAPSE_POSTGRES to that string;
# otherwise if it is 'postgres' set it to true. Otherwise, empty.
SYNAPSE_POSTGRES: ${{ matrix.job.database == 'psycopg' && 'psycopg' || matrix.job.database == 'postgres' || '' }}
SYNAPSE_POSTGRES_HOST: /var/run/postgresql
SYNAPSE_POSTGRES_USER: postgres
SYNAPSE_POSTGRES_PASSWORD: postgres

View File

@ -16,7 +16,6 @@ from typing import Any, Mapping, NoReturn
from ._base import BaseDatabaseEngine, IncorrectDatabaseSetup
from .postgres import PostgresEngine
# The classes `PostgresEngine` and `Sqlite3Engine` must always be importable, because
# we use `isinstance(engine, PostgresEngine)` to write different queries for postgres
# and sqlite. But the database driver modules are both optional: they may not be

View File

@ -24,7 +24,6 @@ from twisted.enterprise.adbapi import Connection as TxConnection
from synapse.storage.engines import PostgresEngine
from synapse.storage.engines._base import IsolationLevel
logger = logging.getLogger(__name__)

View File

@ -20,7 +20,6 @@ import psycopg2.extensions
from synapse.storage.engines import PostgresEngine
from synapse.storage.engines._base import IsolationLevel
logger = logging.getLogger(__name__)