Use this file to discover all available pages before exploring further.
This guide walks you through setting up a complete deployment pipeline with
staging → production promotion and automated verification. By the end, you’ll
have a working example of Ctrlplane’s core capabilities.
A system groups related deployments. This is typically a product, platform, or
bounded context.
Terraform
resource "ctrlplane_system" "quickstart" { name = "Tutorial Quickstart" description = "A tutorial on how to use Ctrlplane found in the Quickstart guide."}
Resources are your deployment targets. In production, you’d sync these from
Kubernetes or cloud providers. For this quickstart, we’ll create them manually.
# ctrlc apply -f resource.yaml---type: Resourceidentifier: tutorial-quickstart-resource-stagingkind: KubernetesClustername: quickstart-staging-clusterversion: tutorial/quickstart/v1metadata: tutorial: quickstart environment: staging region: us-east-1config: number: 1 string: "one" boolean: true array: - one - two - three---type: Resourceidentifier: tutorial-quickstart-resource-productionkind: KubernetesClustername: quickstart-production-clusterversion: tutorial/quickstart/v1metadata: tutorial: quickstart environment: production region: us-east-1config: number: 1 string: "one" boolean: true array: - one - two - three
Job agents execute your deployments. We’ll use a simple test runner, but
Ctrlplane supports GitHub Actions, Kubernetes jobs, ArgoCD, or custom agents.
Terraform
resource "ctrlplane_job_agent" "quickstart" { name = "Tutorial Quickstart Job Agent" description = "A tutorial on how to use Ctrlplane found in the Quickstart guide." test_runner { sleep = "5s" }}
A deployment represents your application. The job agent config tells Ctrlplane
how to trigger deployments.
Terraform
# Production environmentresource "ctrlplane_deployment" "quickstart" { name = "Tutorial Quickstart Deployment" description = "A tutorial on how to use Ctrlplane found in the Quickstart guide." job_agent { id = ctrlplane_job_agent.quickstart.id }}
✅ Deployment orchestration with automatic environment progression
✅ Resource inventory with metadata-based environment selectors
✅ Verification ensuring deployment health before promotion
✅ Policy gates requiring approval for production