Turning an App Repo into a Strauss Artifact¶
Strauss treats application repositories as artifacts by attaching metadata and versioning in two files at the repo root:
1. Add app.strauss¶
This file describes the app’s identity and deployment characteristics. Example from eps-website-v2/app.strauss:
metadata:
name: "eps-website"
size: "XS"
runtime: "standalone"
app_type: "wrangler"
version: "./version.strauss"
Example from techdocs/app.strauss (more flags):
metadata:
name: "eps-techdocs"
size: "XS"
runtime: "standalone"
app_type: "wrangler"
npm_build: false
is_pages: true
version: "./version.strauss"
Notes:
- size: T‑shirt sizing for infrastructure shape (XS/S/M/L).
- runtime: Typically standalone for VM/Pages style targets.
- app_type: In these repos, wrangler indicates Cloudflare Pages/Workers workflows.
- version: Points to the version.strauss file.
2. Add version.strauss¶
A single version string in the repo root. Example:
version: "v0.1.0"
Update this when releasing the artifact version referenced by Strauss deployments.
3. Validate Consistency¶
Make sure the name in app.strauss matches the deployment name used in the Strauss repo (Helm release name, chart name, and namespace).
4. Commit and Tag¶
Store these two files in the app repo so the artifact is discoverable and versioned alongside source code.