Deployment Lifecycle
This page explains what happens from the moment a bundle is authored to when it is running inside a tenant cluster.
Step 1 — Author the Bundle
A platform engineer writes or updates a bundle.yaml in the platform-stacks repository. The file defines inputs, resource groups, and dependencies.
→ See Authoring a Bundle
Step 2 — Register in the Catalog
The bundle is registered into the Control Plane catalog — either manually through the admin UI or via an automated sync workflow. The Control Plane stores the spec, assigns a version, and makes it available for tenants to deploy.
Step 3 — Tenant Deploys the Stack
A tenant selects the stack from the catalog, provides the required inputs, and triggers a deployment. The Control Plane resolves the template expressions, sorts resources by their dependency graph, and generates an execution plan.
Step 4 — Execution
Each step in the plan is dispatched to one of two executors:
| Executor | Handles | Where It Runs |
|---|---|---|
| Temporal Worker | Cloud infrastructure (VPCs, EKS clusters, IAM roles) | Cogrion side |
| Cluster Agent | In-cluster resources (Helm, manifests, Terraform) | Tenant cluster |
The Cluster Agent polls the Control Plane, claims a command, executes it locally, and reports the result back. The Control Plane never pushes commands directly — the agent always initiates contact.
Step 5 — State Is Updated
As each step completes, the Control Plane updates the resource state. If a step fails, the plan halts and the error is surfaced. The tenant can retry from the last known good state.
Go Deeper
- Core Platform → Control Plane
- Core Platform → Temporal
- Architecture → How the Two Sides Connect