Skip to content

Bump pytest-django from 4.5.2 to 4.11.1 #136

Bump pytest-django from 4.5.2 to 4.11.1

Bump pytest-django from 4.5.2 to 4.11.1 #136

name: Migrations for SQLite versions
on: [push, pull_request]
jobs:
pre_job:
name: Path match check
runs-on: ubuntu-latest
# Map a step output to a job output
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/skip-duplicate-actions@master
with:
github_token: ${{ github.token }}
paths: '["morango/migrations/*.py", ".github/workflows/check_migrations_sqlite.yml", "setup.py", "requirements/*.txt"]'
migration_test:
name: SQLite migration tests
needs: pre_job
runs-on: ubuntu-latest
container:
image: python:3.7-buster
steps:
- name: Install build dependencies
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
run: |
echo "deb http://archive.debian.org/debian-archive/debian/ buster main" > /etc/apt/sources.list
echo "deb http://archive.debian.org/debian-archive/debian-security/ buster/updates main" >> /etc/apt/sources.list
echo "Acquire::Check-Valid-Until \"false\";" > /etc/apt/apt.conf.d/99archive
apt-get -y -qq update
apt-get install -y build-essential tcl git-lfs
- uses: actions/checkout@v4
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
with:
lfs: true
- name: Build SQLite 3.25.3
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
run: |
# Following the instructions from https://til.simonwillison.net/sqlite/ld-preload
# to build SQLite from source, using version 3.25.3
tar -xzvf tests/SQLite-89e099fb.tar.gz
cd SQLite-89e099fb
CPPFLAGS="-DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_RTREE=1" ./configure
make
LD_PRELOAD=.libs/libsqlite3.so python3 -c \
'import sqlite3; assert sqlite3.connect(":memory").execute("select sqlite_version()").fetchone()[0] == "3.25.3"'
# Once we have confirmed that this works, set it for subsequent steps
echo "LD_PRELOAD=$(realpath .libs/libsqlite3.so)" >> $GITHUB_ENV
- uses: actions/cache@v4
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('setup.py') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Install dependencies
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
run: pip install .
- name: Run migrations
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
run: python tests/testapp/manage.py migrate