oops #374
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
push: | |
branches: [ '*' ] | |
jobs: | |
pre-commit: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: '3.11' | |
- name: Install dependencies for pre-commit | |
run: | | |
pip install --upgrade pip | |
pip install .[ci] | |
- uses: pre-commit/[email protected] | |
pytest: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: [3.11] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
curl -LsSf https://astral.sh/uv/install.sh | sh | |
uv sync --all-extras | |
- name: Start Docker stack | |
run: | | |
cp .mockenv .env | |
docker compose up -d | |
# Wait for PostgreSQL to be ready | |
timeout 20 bash -c 'until docker exec $(docker ps -q -f name=postgres) pg_isready; do sleep 1; done' | |
docker ps | |
- name: Initialize database | |
run: | | |
uv run alembic upgrade heads | |
- name: Run Alembic check | |
run: | | |
source .venv/bin/activate | |
chmod +x alembic_check.sh | |
./alembic_check.sh | |
- name: Run tests with coverage | |
run: | | |
uv run coverage run -m pytest -s tests | |
uv run coverage report | |
uv run coverage xml | |
- name: Stop Docker stack | |
if: always() | |
run: docker compose down -v --remove-orphans | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v3 | |
with: | |
file: coverage.xml |