Operator + API
A clean split: the API requests environments by writing CRs; the operator does the actual deployment via Flux. The API physically cannot create a HelmRelease.
Dploy turns a Helm chart into a self-service, time-boxed environment. A user picks a template from the catalog, and Dploy spins up an isolated, per-user deployment with its own namespace and URL — then tears it down automatically when its TTL expires.
Dploy is split into two cooperating pieces:
DployTemplate and DployInstance custom resources into Flux
sources + HelmReleases, manages warm pools, and enforces TTLs.Operator + API
A clean split: the API requests environments by writing CRs; the operator does the actual deployment via Flux. The API physically cannot create a HelmRelease.
GitOps-native
Charts are pulled from Git or Helm repositories by Flux. Every instance is a real
HelmRelease you can inspect with flux and kubectl.
Warm pools
Pre-provision instances so users get an environment instantly — no cold-start wait.
TTL & quotas
Per-template lifetimes, extensions, and per-user quotas. Expired instances clean themselves up.
OIDC auth
JWT/OIDC authentication via JWKS. JWT claims flow into your chart values for per-user customization.
Templated values
Render Helm values and connection URLs with Go templates + sprig, using the owner, UUID, params and claims.
Each environment:
<owner>-<name>-<uuid>.connectionURLTemplate (default <name>-<uuid>.<baseDomain>).OperatorConfig