Skip to main content

Kubiya Control Plane Terraform Provider

The Kubiya Control Plane Terraform Provider enables you to manage your entire Kubiya platform infrastructure as code. This provider allows operators to declaratively define and manage agents, teams, projects, environments, skills, policies, workers, and jobs using Terraform.

Why Use Terraform with Kubiya?

  • Infrastructure as Code: Version control your Kubiya resources alongside your application infrastructure
  • Repeatability: Deploy consistent configurations across multiple environments
  • Automation: Integrate Kubiya resource provisioning into your CI/CD pipelines
  • Collaboration: Enable team collaboration through code reviews and GitOps workflows
  • Compliance: Track changes and maintain audit trails for your AI agent infrastructure

Supported Resources

The provider supports comprehensive management of all Kubiya Control Plane resources:

Core Resources

Capabilities

Data Sources

All resources have corresponding data sources for read-only lookups:
  • controlplane_environment - Look up a single environment by ID
  • controlplane_project - Look up a single project by ID
  • controlplane_team - Look up a single team by ID
  • controlplane_agent - Look up a single agent by ID
  • controlplane_skill - Look up a single skill by ID
  • controlplane_policy - Look up a single policy by ID
  • controlplane_job - Look up a single job by ID
  • controlplane_jobs - List all jobs
  • controlplane_worker_queue - Look up a single worker queue by ID
  • controlplane_worker_queues - List all worker queues in an environment

Deployment Options

The Kubiya Control Plane can be deployed in two ways:

1. Hosted Control Plane (SaaS)

Use Kubiya’s managed control plane at https://control-plane.kubiya.ai:

2. Self-Hosted Control Plane

Deploy the control plane in your own infrastructure:
Both deployment models use the same provider configuration and support identical features.

Quick Example

Provider Registry

The provider is published to the official Terraform Registry:

Key Features for Operators

Version Control

Track all changes to your Kubiya infrastructure in Git:

Multi-Environment Management

Use Terraform workspaces or separate state files to manage multiple environments:

Modular Configuration

Create reusable modules for common patterns:

CI/CD Integration

Integrate with your existing deployment pipelines:

Authentication & Security

The provider requires API key authentication:
  1. Generate API Key: Create an API key from your Kubiya Control Plane dashboard
  2. Set Environment Variable: Export KUBIYA_CONTROL_PLANE_API_KEY
  3. Secure Storage: Use secrets management (Vault, AWS Secrets Manager, etc.)
Never commit API keys to version control. Use:
  • Environment variables
  • Terraform Cloud/Enterprise variables
  • CI/CD secret stores
  • Secret management systems

Reusable Modules

The provider includes pre-built Terraform modules for common patterns:
  • engineering-org: Complete organization setup with environments, teams, agents, skills, policies, and jobs
See Modules Documentation for details.

Next Steps

Support