Automated migrations on container startup (backend/entrypoint.sh), scripted n8n workflow activation (make n8n-setup), Playwright E2E test covering the full 9-step demo script (verified passing against the live stack, including the previously-unverified 360px responsive layout), evidence screenshots of all main pages, architecture diagram, and artifacts/evidence/final-summary.md with commit/commands/test counts/RAGcore and n8n evidence/MCP sample calls/known limitations/portfolio wording. Verified the complete clean-checkout path from a genuinely wiped-volumes state: automatic migrations, seed, 66 backend tests passing, and a live S1 return round-tripped through a freshly-activated n8n instance. Added .gitattributes to force LF line endings on shell scripts, preventing a real cross-platform breakage of entrypoint.sh's shebang.
40 lines
1.1 KiB
Makefile
40 lines
1.1 KiB
Makefile
.PHONY: up down logs test lint seed reset n8n-setup demo e2e
|
|
|
|
up:
|
|
docker compose up --build -d
|
|
|
|
down:
|
|
docker compose down
|
|
|
|
logs:
|
|
docker compose logs -f --tail=200
|
|
|
|
test:
|
|
docker compose run --rm api pytest
|
|
|
|
lint:
|
|
docker compose run --rm api ruff check .
|
|
|
|
seed:
|
|
docker compose exec api python -m app.cli seed --reset
|
|
|
|
reset:
|
|
docker compose down -v
|
|
docker compose up --build -d
|
|
|
|
# One-time per environment: imports and activates the n8n return-processing workflow.
|
|
# The n8n owner account itself cannot be scripted safely and must be created once at
|
|
# http://localhost:5678/setup (any email/password, no verification required) before
|
|
# this target's activation takes effect. See docs/17-runbook.md.
|
|
n8n-setup:
|
|
docker compose exec n8n n8n import:workflow --input=//imports/mobilityops-return-processing.json
|
|
docker compose exec n8n n8n publish:workflow --id=mobilityops-return-processing
|
|
docker compose restart n8n
|
|
|
|
# Full deterministic demo bootstrap: build, migrate (automatic on api startup), seed.
|
|
demo: up
|
|
docker compose exec api python -m app.cli seed --reset
|
|
|
|
e2e:
|
|
cd frontend && npx playwright test
|