arm-to-terraform-migration

Converts Azure ARM templates to equivalent Terraform configurations preserving resources, dependencies, outputs.

5|Updated Jul 6, 2025
One-click install
npx skills add https://github.com/GuicedEE/ai-rules --skill arm-to-terraform-migration
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: arm-to-terraform-migration
Source: https://github.com/GuicedEE/ai-rules/tree/main/skills/.curated/arm-to-terraform-migration
Command: npx skills add https://github.com/GuicedEE/ai-rules --skill arm-to-terraform-migration

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

Convert Azure ARM templates into equivalent Terraform configurations while preserving resource mappings, dependencies, and outputs, enabling consistent IaC practices across environments.

Core Features & Use Cases

  • ARM to Terraform conversion: Map resources, parameters, and outputs from ARM templates to Terraform equivalents with maintained relationships.
  • Expression and dependency handling: Translate ARM expressions and explicit dependencies into Terraform interpolations and implicit dependencies.
  • End-to-end migration artifacts: Generate main.tf, variables.tf, outputs.tf, and terraform.tf to bootstrap a Terraform project.

Quick Start

Provide the ARM template and parameters files to migrate-arm.js, and run the script to generate a ready-to-use Terraform project.

Frequently Asked Questions about arm-to-terraform-migration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I convert ARM templates to Terraform configurations?

To convert ARM templates to Terraform, provide the ARM template and parameters files to the migration script, which maps resources, dependencies, and outputs to generate main.tf, variables.tf, outputs.tf, and terraform.tf files.

Can I translate ARM expressions and explicit dependencies into Terraform interpolations?

Yes, ARM template expressions and explicit dependencies are translated into equivalent Terraform interpolations and implicit dependencies, preserving resource relationships during the migration process.

What files do I need to start migrating ARM templates to HCL?

You need the ARM template file and its associated parameters file to start migrating ARM templates to HCL, which the script uses to produce a ready-to-use Terraform project structure.

Does ARM to Terraform migration preserve nested resources and parameter mappings?

Yes, ARM to Terraform migration preserves nested resources, parameter mappings, and outputs, ensuring infrastructure as code consistency across Azure deployment environments.

What is the best way to achieve IaC consistency when moving from Azure ARM to Terraform?

The best way to achieve IaC consistency is using a migration script that maps Azure ARM resource relationships and parameters into Terraform configurations, generating complete project artifacts including main.tf and variables.tf.

Are there limitations when handling complex ARM template structures during Terraform migration?

While the migration handles nested resources, dependencies, and parameter mappings, complex ARM template structures require the script mapping rules and provider configuration to accurately produce equivalent Terraform configurations without loss of fidelity.