How It Works
- Your CI/CD pipeline builds and tests your code
- After success, CI creates a version in Ctrlplane
- Ctrlplane evaluates policies for each release target
- Jobs are dispatched to job agents
- Deployments execute across your environments
GitHub Actions
Basic Integration
Using the Ctrlplane Action
GitLab CI
Jenkins
CircleCI
Installing ctrlc
Thectrlc CLI is the recommended way to interact with Ctrlplane from CI/CD pipelines.
CTRLPLANE_API_KEY environment variable in your CI secrets.
CLI Reference
Create Version
| Flag | Required | Description |
|---|---|---|
--workspace | Yes | Workspace name or ID |
--deployment | Yes | Deployment ID |
--tag | Yes | Unique version identifier |
--name | No | Human-readable version name |
--metadata | No | Key-value metadata (repeatable) |
REST API
For environments where the CLI isn’t available, use the REST API:Best Practices
Semantic Versioning
Use semantic versions for release branches:Include Build Metadata
Add useful context to help with debugging:Idempotency
Thectrlc api upsert version command is idempotent — it creates or updates the
version if it already exists. This makes it safe to retry failed CI runs without
worrying about duplicate version errors.