docs: add concise ariadne README

This commit is contained in:
codex 2026-06-19 15:46:34 -03:00
parent f58b7542d0
commit 963c42246b

41
README.md Normal file
View File

@ -0,0 +1,41 @@
# ariadne
Ariadne is the Atlas admin and account automation service.
It sits behind the portal and handles the jobs that are annoying or risky to do
by hand: approving access, syncing account state, rotating service passwords,
cleaning stale Kubernetes work, checking platform health, and keeping a few
service integrations lined up.
## How it works
Ariadne is a FastAPI service with a small scheduler. It talks to Keycloak,
Vault, Mailu, Nextcloud, Wger, Firefly, Jenkins, Metis, Kubernetes, and a few
Atlas-specific services through focused adapters under `ariadne/services/`.
The API is split between admin routes, account self-service routes, internal
event hooks, and Prometheus metrics. Background jobs store run history in the
Ariadne database so failures can be inspected later instead of vanishing into
logs.
Useful routes:
- `GET /health`
- `GET /metrics`
- `GET /api/admin/cluster/state`
- `POST /api/admin/access/requests/{username}/approve`
- `POST /api/account/mailu/rotate`
- `POST /api/account/wger/reset`
- `POST /api/account/firefly/reset`
- `POST /events`
## Development
```bash
python -m pytest
ruff check .
```
Most runtime behavior is configured through environment variables in
`ariadne/settings.py`. Keep service-specific logic in the small adapter modules;
`ariadne/app.py` should stay focused on request flow and task orchestration.