Aller au contenu

Baseline Production

Cette page donne la configuration de base à viser pour un service Arclith de production.

Socle Minimal

Besoin Capability
API HTTP api/fastapi
Auth JWT auth/keycloak
Licence par rôle license/role
Secrets secrets/vault ou secrets/chain
Cache partagé cache/redis
Repository repository/mongodb ou repository/mariadb
Fichiers et blobs storage, si le service manipule des fichiers
Probes probe/server
Observabilité observability/opentelemetry
Runtime runtime/docker-image

Parcours

  1. Auth production
  2. Cache production
  3. Secrets et Vault
  4. Observabilité production
  5. Runtime et probes

Commandes De Départ

Bash
arclith-cli add-adapter --capability api --adapter fastapi --yes
arclith-cli add-adapter --capability auth --adapter keycloak --yes
arclith-cli add-adapter --capability license --adapter role --yes
arclith-cli add-adapter --capability cache --adapter redis --yes
arclith-cli add-adapter --capability secrets --adapter chain \
  --param field_path=adapters.mongodb.uri \
  --param secret_key=apps/my-service/mongodb \
  --yes
arclith-cli add-adapter --capability probe --adapter server --yes
arclith-cli add-adapter --capability observability --adapter opentelemetry --yes
arclith-cli add-adapter --capability runtime --adapter docker-image --yes

Règles

  • Aucun secret réel dans Git.
  • cache/redis dès qu'il y a plusieurs workers, réplicas ou processus.
  • storage dès qu'un fichier doit survivre au processus ou être partagé entre replicas.
  • probe/server obligatoire avant Docker ou Kubernetes.
  • Les adapters inbound appellent les use cases, jamais les repositories concrets.
  • L'image Docker reçoit les secrets au runtime, jamais au build.

Validation

Bash
1
2
3
uv run pytest
make docs
docker build -t my-service:local .

Suite

Lire les pages du parcours ci-dessus, puis Docker Compose et Kubernetes.