Files
2026-01-13 18:45:00 +00:00

51 lines
1.3 KiB
YAML

name: CI
on:
push:
branches: ["master"]
pull_request:
branches: ["master"]
jobs:
build-test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install Poetry
run: python -m pip install --upgrade pip poetry
- name: Install dependencies
run: |
poetry config virtualenvs.create false
poetry install --with dev
- name: Install Playwright browsers
run: poetry run playwright install --with-deps chromium
- name: Build package
run: poetry build
- name: Validate workflow JSON files
run: poetry run validate-workflows
- name: Static analysis
run: poetry run python -m compileall backend
- name: Lint (errors only)
run: |
python -m pip install pylint
poetry run pylint --errors-only backend/autometabuilder
- name: Unit tests
run: PYTHONPATH=backend poetry run pytest backend/tests/test_main.py backend/tests/test_metadata.py backend/tests/test_roadmap.py
- name: UI tests
run: PYTHONPATH=backend poetry run pytest backend/tests/ui