Helm installation
Prerequisites
- Kubernetes cluster
- Helm 3.x
- kubectl configured for your cluster
- formae CLI installed on your local machine — see Local installation
Install from source
The formae Helm chart is installed from the source repository:
git clone https://github.com/platform-engineering-labs/formae-helm.git
cd formae-helm
Standalone (SQLite, good for evaluation):
helm install formae . -f examples/formae-only.yaml
With PostgreSQL:
helm install formae . -f examples/formae-db.yaml \
--set postgresql.auth.password=<your-password>
Full monitoring stack (requires Prometheus + Grafana):
helm install formae . -f examples/formae-db-grafana.yaml \
--set postgresql.auth.password=<your-password>
Example values files
| File | Description |
|---|---|
formae-only.yaml |
SQLite, ephemeral storage |
formae-only-persistent.yaml |
SQLite with PVC |
formae-db.yaml |
In-cluster PostgreSQL |
formae-db-grafana.yaml |
PostgreSQL + Grafana + OTel |
formae-external-db.yaml |
External PostgreSQL |
formae-external-db-grafana.yaml |
External PostgreSQL + Grafana + OTel |
formae-aurora.yaml |
Aurora Data API |
See the chart README for all configuration parameters.
Applying formas
The formae CLI runs on your local machine. It evaluates your Pkl files locally and sends the result to the agent API — no files need to be loaded into the cluster.
The CLI connects to http://localhost:49684 by default. For a Helm-deployed agent, expose the agent port and the default config works as-is:
kubectl port-forward svc/formae 49684:49684
Then apply a forma from your machine:
formae apply --mode reconcile your-forma.pkl
For persistent access without port-forwarding, configure an ingress or LoadBalancer service and update the CLI's agent URL in ~/.config/formae/formae.conf.pkl:
amends "formae:/Config.pkl"
cli {
api {
url = "http://<ingress-or-service-url>"
port = 49684
}
}
Next steps
Head to the Quick start or see the Configuration docs for available options.