CloudFormation to Pulumi Converter - Convert AWS Templates to Pulumi TypeScript
Free online CloudFormation to Pulumi converter tool to migrate AWS infrastructure to modern IaC with TypeScript.
Loading CloudFormation to Pulumi Converter...
How to Convert CloudFormation to Pulumi - Step by Step Guide
Paste Your CloudFormation Template
Copy your CloudFormation JSON template into the left editor. You can also upload a .json or .template file using the Upload button. The converter supports the full CloudFormation syntax including parameters, resources, outputs, and intrinsic functions like Ref, Fn::GetAtt, and Fn::Sub.
Review the Pulumi TypeScript Output
The right panel displays the converted Pulumi TypeScript code automatically. The converter maps CloudFormation resource types to their Pulumi equivalents and converts intrinsic functions to TypeScript syntax.
Download or Copy the Pulumi Code
Export your converted Pulumi TypeScript code for use in your project. The code includes necessary imports and can be directly used in a Pulumi project.
Deploy with Pulumi CLI
Initialize a new Pulumi AWS project and deploy your infrastructure using the converted code.
pulumi new aws-typescriptnpm install to get required packagespulumi up to preview and deployFrequently Asked Questions
What is CloudFormation to Pulumi conversion?
CloudFormation to Pulumi conversion transforms AWS CloudFormation templates (JSON or YAML) into Pulumi code using TypeScript. While CloudFormation uses declarative templates, Pulumi uses programming languages, offering benefits like better IDE support, type safety, code reuse, and native testing capabilities.
Why migrate from CloudFormation to Pulumi?
Teams migrate for programming language benefits (TypeScript with full IDE support), code reusability (npm packages), testing capabilities (standard frameworks), multi-cloud support (AWS, Azure, GCP with one tool), and better state management with built-in secrets encryption and team collaboration through Pulumi Cloud.
Does this converter support all CloudFormation resources?
The converter supports commonly used AWS resources including EC2, S3, Lambda, RDS, VPCs, security groups, IAM roles, DynamoDB, and more. It handles intrinsic functions like Ref, Fn::GetAtt, Fn::Sub, and Fn::Join. Unsupported resources are noted with comments. Advanced features may require manual adjustments.
How do I use the converted Pulumi code?
Install Pulumi CLI, run pulumi new aws-typescript to create a project, replace index.ts with converted code, install dependencies with npm install, configure AWS credentials, and run pulumi up to deploy.
Can I convert CloudFormation YAML to Pulumi?
This converter accepts JSON format. For YAML templates, first convert to JSON using the AWS CLI commandaws cloudformation validate-template, then use this converter. The output Pulumi code will be the same regardless of input format.
Is the converted Pulumi code production-ready?
The converter generates syntactically correct Pulumi code that can be deployed, but review and testing are essential before production use. Add error handling, implement security best practices, configure stack settings, and test thoroughly in non-production environments first. Consider it a migration accelerator, not a complete automation.
Related Tools
CloudFormation to Terraform
Convert AWS CloudFormation templates to Terraform HCL configuration
Terraform to CloudFormation
Convert Terraform HCL configurations to AWS CloudFormation templates in YAML or JSON
Azure ARM to Terraform
Convert Azure Resource Manager templates to Terraform HCL with azurerm provider
Ansible to Terraform
Convert Ansible playbooks to Terraform HCL for AWS, Azure, and GCP resources
ARM to Bicep
Convert Azure Resource Manager (ARM) templates to Bicep with modern syntax and improved readability
Bicep to ARM
Convert Bicep files to Azure Resource Manager (ARM) JSON templates for deployment and tooling compatibility