Platform Strategy¶
Strauss — The EPSAIT Deployment Standard¶
All EPSAIT applications are being progressively migrated to the Strauss ecosystem. Strauss is the universal deployment standard for the organisation, covering CI/CD pipelines, infrastructure provisioning, and release management across every project.
Migration in Progress
Projects may still carry legacy deployment scripts (Docker Compose, custom deploy scripts, GitHub Actions workflows). These are considered transitional. Strauss is the target state for every application.
What Strauss Covers¶
| Concern | Strauss Component |
|---|---|
| App metadata and versioning | app.strauss + version.strauss in each app repo |
| Infrastructure blueprints | strauss-sheets/ — Universal Helm chart |
| Environment deployments | strauss/ — Helmfile + encrypted deploy credentials |
| Infrastructure sizing | T-shirt sizes: XS/S (standalone/VM), M (K3s), L (full HA Kubernetes) |
Migration Expectations¶
Every EPSAIT project is expected to:
- Define app metadata — add
app.straussandversion.straussto the application repo - Adopt the Universal Chart — replace custom Docker/CI scripts with a Strauss deployment entry
- Register in the Strauss repo — add
deploy.strauss.yaml,helmfile.yaml, andvalues.yamlfor each environment - Remove transitional tooling — once migrated, legacy deploy scripts and custom CI jobs are retired
Current Status by Project¶
| Project | Strauss Status |
|---|---|
| EPS Website | Migrated |
| TechDocs | Migrated |
| Strauss | Native |
| Conexoos | Pending migration |
| Catalyst | Pending migration |
| L.Edge.R | Pending migration |
| Macrotracker | Not started (repo empty) |
| Zentr | Pending migration |
Reference¶
- How Strauss works: Strauss Overview
- Turning a repo into a Strauss artifact: Artifacts
- Deploying with Strauss: Deployment