Skip to content

feat: AI-driven IaC migration for ACR to AMR template conversion#6

Open
suryaren wants to merge 3 commits intoAzureManagedRedis:mainfrom
suryaren:users/suryar/ai-driven-iac-migration
Open

feat: AI-driven IaC migration for ACR to AMR template conversion#6
suryaren wants to merge 3 commits intoAzureManagedRedis:mainfrom
suryaren:users/suryar/ai-driven-iac-migration

Conversation

@suryaren
Copy link

Pure AI-driven approach using reference docs and example templates for grounding. The skill reads ACR templates (ARM JSON, Bicep, Terraform), applies transformation rules, and generates AMR-compatible output through a 7-step workflow with customer confirmation.

Reference documentation:

  • ACR template parsing guide (references/iac-acr-template-parsing.md)
  • AMR template structure guide (references/iac-amr-template-structure.md)
  • SKU mapping tables covering Basic/Standard C0-C6, Premium P1-P5

Example templates (34 files across 12 scenarios):

  • arm/ — 6 scenarios (basic, premium non-clustered/clustered/VNet/persistence/all-features)
  • arm-parameterized/ — 4 scenarios with separate parameter files
  • bicep/ — 2 scenarios (basic, premium clustered)

Test suite:

  • 12 test cases in tests/iac/TEST-CASES.md covering all SKU tiers, persistence (RDB/AOF), VNet-to-Private-Endpoint, identity preservation, parameterized templates, and Bicep format

All AMR templates validated via Azure deployment (6/6 succeeded).

Pure AI-driven approach using reference docs and example templates for
grounding. The skill reads ACR templates (ARM JSON, Bicep, Terraform),
applies transformation rules, and generates AMR-compatible output through
a 7-step workflow with customer confirmation.

Reference documentation:
- ACR template parsing guide (references/iac-acr-template-parsing.md)
- AMR template structure guide (references/iac-amr-template-structure.md)
- SKU mapping tables covering Basic/Standard C0-C6, Premium P1-P5

Example templates (34 files across 12 scenarios):
- arm/ — 6 scenarios (basic, premium non-clustered/clustered/VNet/persistence/all-features)
- arm-parameterized/ — 4 scenarios with separate parameter files
- bicep/ — 2 scenarios (basic, premium clustered)

Test suite:
- 12 test cases in tests/iac/TEST-CASES.md covering all SKU tiers,
  persistence (RDB/AOF), VNet-to-Private-Endpoint, identity preservation,
  parameterized templates, and Bicep format

All AMR templates validated via Azure deployment (6/6 succeeded).
API version: 2025-07-01 (GA). Key deployment-validated rules:
- No sku.capacity for B/M/X/A series (size encoded in name)
- No zones (AMR auto-manages zone redundancy)
- publicNetworkAccess required
- Identity type + userAssignedIdentities preserved as-is
Copy link
Contributor

@lolodi lolodi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Both iac-acr-template-parsing.md and iac-amr-template-structure.md exceed 300 lines. The skill-creator guidelines recommend adding a TOC for files this large so the AI can navigate to relevant sections efficiently without reading the entire file.

Pure AI-driven approach using reference docs and example templates for grounding.
The AI reads ACR templates (ARM, Bicep, Terraform), applies transformation rules
from comprehensive reference docs, and generates AMR templates directly.

Key components:
- SKILL.md: Workflow selection (Migration vs IaC), 7-step IaC Migration Workflow
- references/iac-acr-template-parsing.md: How to read ACR templates (ARM/Bicep/Terraform)
- references/iac-amr-template-structure.md: Transformation rules and AMR output structure
- references/iac-migration-workflow.md: Extracted 7-step IaC workflow (from SKILL.md)
- references/examples/iac/: 16 before/after template pairs (ARM, ARM-parameterized, Bicep, Terraform)
- tests/iac/TEST-CASES.md: 14 test cases with validation checklists

PR review feedback addressed:
- Extracted IaC workflow from SKILL.md into references/iac-migration-workflow.md
- Added Table of Contents to iac-acr-template-parsing.md and iac-amr-template-structure.md
- Added Terraform example templates (basic-c3, premium-clustered) with AzAPI persistence note
- Documented azurerm provider limitation: persistence requires AzAPI provider

All templates deployment-validated against Azure. 14/14 test cases pass.
@lolodi
Copy link
Contributor

lolodi commented Mar 20, 2026

LGTM!

Copy link
Contributor

@lolodi lolodi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants