summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authornessita <124304+nessita@users.noreply.github.com>2024-09-19 10:37:13 -0300
committerGitHub <noreply@github.com>2024-09-19 10:37:13 -0300
commit92f860e3f4a387e06ea59753ec0a981c0aff2daa (patch)
tree0a27a4639631ec7c7da245a2f32d162c09198bf5 /.github
parente1d226bc1c52a0165164e5b34fef1d336050ca60 (diff)
Refs #35734 -- Added entry to scheduled tests workflow to test newer PostgreSQL versions.
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/data/test_postgres.py.tpl4
-rw-r--r--.github/workflows/schedule_tests.yml44
2 files changed, 48 insertions, 0 deletions
diff --git a/.github/workflows/data/test_postgres.py.tpl b/.github/workflows/data/test_postgres.py.tpl
index e121946d3f..15dfa0d62e 100644
--- a/.github/workflows/data/test_postgres.py.tpl
+++ b/.github/workflows/data/test_postgres.py.tpl
@@ -1,3 +1,4 @@
+import os
from test_sqlite import * # NOQA
DATABASES = {
@@ -8,6 +9,9 @@ DATABASES = {
"PASSWORD": "postgres",
"HOST": "localhost",
"PORT": 5432,
+ "OPTIONS": {
+ "server_side_binding": os.getenv("SERVER_SIDE_BINDING") == "1",
+ },
},
"other": {
"ENGINE": "django.db.backends.postgresql",
diff --git a/.github/workflows/schedule_tests.yml b/.github/workflows/schedule_tests.yml
index 8b1f01ad86..78b06ba5de 100644
--- a/.github/workflows/schedule_tests.yml
+++ b/.github/workflows/schedule_tests.yml
@@ -195,3 +195,47 @@ jobs:
working-directory: ./tests/
run: |
python -Wall runtests.py --verbosity 2 --noinput --selenium=chrome --headless --settings=test_postgres --parallel 2
+
+ postgresql:
+ strategy:
+ fail-fast: false
+ matrix:
+ version: [16, 17rc1]
+ server_side_bindings: [0, 1]
+ runs-on: ubuntu-latest
+ name: Newer PostgreSQL Versions
+ env:
+ SERVER_SIDE_BINDING: ${{ matrix.server_side_bindings }}
+ services:
+ postgres:
+ image: postgres:${{ matrix.version }}-alpine
+ env:
+ POSTGRES_DB: django
+ POSTGRES_USER: user
+ POSTGRES_PASSWORD: postgres
+ ports:
+ - 5432:5432
+ options: >-
+ --health-cmd pg_isready
+ --health-interval 10s
+ --health-timeout 5s
+ --health-retries 5
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ - name: Set up Python
+ uses: actions/setup-python@v5
+ with:
+ python-version: '3.12'
+ cache: 'pip'
+ cache-dependency-path: 'tests/requirements/py3.txt'
+ - name: Install libmemcached-dev for pylibmc
+ run: sudo apt-get install libmemcached-dev
+ - name: Install and upgrade packaging tools
+ run: python -m pip install --upgrade pip setuptools wheel
+ - run: python -m pip install -r tests/requirements/py3.txt -r tests/requirements/postgres.txt -e .
+ - name: Create PostgreSQL settings file
+ run: mv ./.github/workflows/data/test_postgres.py.tpl ./tests/test_postgres.py
+ - name: Run tests
+ working-directory: ./tests/
+ run: python -Wall runtests.py --settings=test_postgres --verbosity=2