Pulumi Provider Plugin
The Control Plane Pulumi provider lets you manage Control Plane resources as code across JavaScript/TypeScript, Python, Go, and .NET (C#).
See full resource & data source reference on the Control Plane Pulumi Registry.
Install Pulumi CLI
Need a different installer or hit an error? Check Pulumi’s download & install guide for platform-specific binaries, installer options, and troubleshooting tips: Pulumi Download & Install
Login to Manage Pulumi State
By default, Pulumi stores state in the Pulumi Service. To authenticate:
This opens a browser to sign in.
Create a New Pulumi Project
Create Directory
Create an empty directory, e.g:
Initialize Project
Run the Pulumi project initializer:
Select Language
From the list of templates, choose your language (TypeScript, Python, Go, .NET (C#)).
Project Name
Enter a project name (e.g. pulumi-cpln-infra
).
Stack Name
Accept or change the default stack name (dev
).
The initializer will scaffold a basic project for your chosen language; you’ll add the Control Plane provider next.
Install the Control Plane Provider
Upgrading the Provider
Keep your Pulumi Control Plane provider up to date by upgrading the package in your project:
Configure the Provider
For more configuration information refer to the Control Plane Installation & Configuration page.
Set your Control Plane proiver configuration:
Using Environment Variables
You can also supply your Control Plane credentials via environment variables.
Option | Env Var | Default |
---|---|---|
org | CPLN_ORG | None (Required) |
endpoint | CPLN_ENDPOINT | https://api.cpln.io (Optional) |
profile | CPLN_PROFILE | The default CLI profile (Optional) |
token | CPLN_TOKEN | None (Optional) |
refreshToken | CPLN_REFRESH_TOKEN | None (Optional) |
Create & Deploy a Resource
Defining Resource
Edit the generated code (e.g. index.ts
, __main__.py
, main.go
, Program.cs
) to define a resource.
Refer to the Pulumi GVC resource documentation page for the full list of args.
Deploying Resource
Run the following command to deploy your resources to the Control Plane platform:
Destroying Resource
When you need to tear down your Control Plane infrastructure, run the following command:
Removing the Stack
After destroying resources, you can delete the stack itself:
Migrating from Terraform
If you’re moving existing Terraform projects to Pulumi, you can:
Convert HCL to Pulumi Code
Ensure your Terraform configuration files are in the current working directory, then run the converter:
Create a New Pulumi Stack
Before importing your Terraform state, initialize (or select) a Pulumi stack to hold it. Replace <stackName>
with your desired name (e.g. migrate
):
Import Terraform State
Specify the correct path to your Terraform state file, then run the import command:
Replace /path/to/terraform.tfstate
with the location of your state file. This reads the specified state and merges its resources into your Pulumi stack’s state.
Review Code
For full details, examples, and advanced workflows, see the Pulumi guide on Migrating from Terraform to Pulumi.
Next Steps
Dive into all Control Plane resources & data sources at the Control Plane Pulumi Registry. Check the registry docs regularly for new releases, resources, and data sources.