Skip to content

Simplify API model unions usage #485

Simplify API model unions usage

Simplify API model unions usage #485

Workflow file for this run

name: Run Server Tests
on:
push:
branches:
- development
- main
paths:
- "Tekst-API/tekst/**"
- "Tekst-API/tests/**"
- "Tekst-API/pyproject.toml"
- "Tekst-API/poetry.lock"
- ".github/workflows/server-tests.yml"
pull_request:
branches:
- development
paths:
- "Tekst-API/tekst/**"
- "Tekst-API/tests/**"
- "Tekst-API/pyproject.toml"
- "Tekst-API/poetry.lock"
- ".github/workflows/server-tests.yml"
workflow_dispatch:
jobs:
tests:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./Tekst-API
steps:
- uses: actions/checkout@v4
- name: Install Poetry
uses: snok/install-poetry@v1
- uses: actions/setup-python@v5
with:
python-version: "3.10"
cache: "poetry"
cache-dependency-path: "./Tekst-API/poetry.lock"
- name: Install dependencies
run: poetry install --sync
- name: Configure sysctl limits for ES
run: |
sudo swapoff -a
sudo sysctl -w vm.swappiness=1
sudo sysctl -w fs.file-max=262144
sudo sysctl -w vm.max_map_count=262144
- name: Start test service stack
run: |
docker compose -f dev/compose.yml --profile test -p tekst-testing up --detach
printf "Waiting for MongoDB service"; while ! $(curl -f http://127.0.0.1:27017 > /dev/null 2>&1); do sleep 1; printf "."; done; printf "\n"
printf "Waiting for Elasticsearch service"; while ! $(curl -f http://127.0.0.1:9200 > /dev/null 2>&1); do sleep 1; printf "."; done; printf "\n"
- name: Cancel on setup error
if: failure()
uses: andymckay/[email protected]
- name: Run tests
if: always()
run: TEKST_DEV_MODE=true TEKST_CUSTOM_ENV_FILE=.env.test TEKST_EMAIL__SMTP_STARTTLS=false poetry run coverage run -m pytest && poetry run coverage lcov
- name: Coveralls
uses: coverallsapp/github-action@v2