Files
harmony/examples/compose_java_react/Harmony.toml
Jean-Gabriel Gill-Couture 9605892aba feat(examples): deploy a java+react app by importing its docker-compose
Demonstrates the compose-as-source-of-truth path (ADR-026): import an
existing docker-compose.yml into typed Scores, then build/publish/deploy
with the fleet pattern (no ApplicationScore, no ArgoCD).

- compose.rs: docker-compose-types → typed ComposeApp; loud on bind
  mounts / unparseable ports, warns on depends_on/command/restart.
- chart.rs: per-service Deployment+Service (unique filenames), RWX PVC
  per mounted named volume, RollingUpdate/Recreate strategy. Deploy-only
  knobs live here, never in compose or Harmony.toml.
- score.rs: ComposeAppScore = helm upgrade --install + public Ingress.
- publish.rs: docker build/push each built service + helm package/push.
- app/: minimal real Java(SQLite)+React(nginx) compose stack.
- 16 unit tests over import + chart generation.
2026-06-18 17:00:19 -04:00

7 lines
278 B
TOML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Identity only (ADR-026 §3): the app *name*, nothing behavioral.
# Namespace, image, and selectors derive by convention from name × context;
# deploy knobs (replicas, storage class, ingress host, rolling strategy)
# live in typed Scores, never here.
[app]
name = "timesheet"