Skip to content

Add demo and release information to README #19

Add demo and release information to README

Add demo and release information to README #19

Workflow file for this run

name: CI
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
on:
push:
branches:
- "**"
pull_request:
branches:
- main
jobs:
python-tests:
name: Python + Postgres tests
runs-on: ubuntu-latest
services:
postgres:
image: postgres:16
env:
POSTGRES_USER: mlis
POSTGRES_PASSWORD: mlis
POSTGRES_DB: mlis
ports:
- 5432:5432
options: >-
--health-cmd "pg_isready -U mlis -d mlis"
--health-interval 5s
--health-timeout 5s
--health-retries 10
env:
TEST_DATABASE_URL: postgresql+psycopg://mlis:mlis@localhost:5432/mlis
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -e ".[test]"
- name: Install PostgreSQL client
run: |
sudo apt-get update
sudo apt-get install -y postgresql-client
- name: Apply database schema
run: |
PGPASSWORD=mlis psql -h localhost -U mlis -d mlis -v ON_ERROR_STOP=1 -f db/init/001_schema.sql
- name: Run unit tests
run: pytest tests/unit -q
- name: Run integration tests
run: pytest tests/integration -q
console-build:
name: React console build
runs-on: ubuntu-latest
defaults:
run:
working-directory: src/app/ui-react
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "24"
- name: Install frontend dependencies
run: npm install
- name: Build React console
run: npm run build
compose-smoke:
name: Docker Compose smoke test
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Start compose stack
run: docker compose up -d --build --scale worker=2
- name: Wait for full readiness
shell: bash
run: |
for i in {1..30}; do
if curl -fsS http://localhost:8001/health/ready/full; then
exit 0
fi
sleep 5
done
echo "Timed out waiting for /health/ready/full"
exit 1
- name: Verify console shell
run: |
curl -fsS http://localhost:8001/ui | grep -q "MLIS Console"
- name: Print compose logs on failure
if: failure()
run: docker compose logs --no-color
- name: Tear down compose stack
if: always()
run: docker compose down -v