terraform-azurerm-set-diff-analyzer

Separate false-positive AzureRM Set-type attribute diffs in Terraform plan JSON.

1|Updated May 4, 2026
One-click install
npx skills add https://github.com/beel-collab/presets.dev --skill terraform-azurerm-set-diff-analyzer-beel-collab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: terraform-azurerm-set-diff-analyzer
Source: https://github.com/beel-collab/presets.dev/tree/main/skills/terraform-azurerm-set-diff-analyzer
Command: npx skills add https://github.com/beel-collab/presets.dev --skill terraform-azurerm-set-diff-analyzer-beel-collab

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

This Skill identifies and separates false-positive diffs in Terraform plan outputs that arise from AzureRM Set-type attributes, helping teams focus on real resource changes.

Core Features & Use Cases

  • Set-diff parsing: detects order-only changes vs. actual additions/removals in Set-type attributes.
  • Nested Set support: handles nested attributes and keys across complex resources like application gateways, firewall policies, and front doors.
  • CI/CD readiness: integrates into pipelines to produce concise summaries and actionable reports.

Quick Start

Run the analysis against a Terraform plan JSON:

  • Generate plan: terraform plan -out=plan.tfplan
  • Show as JSON: terraform show -json plan.tfplan > plan.json
  • Analyze: python scripts/analyze_plan.py plan.json

Frequently Asked Questions about terraform-azurerm-set-diff-analyzer

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

FAQPage Schema
How do I filter false-positive Terraform plan diffs for AzureRM Set-type attributes?

To filter false-positive Terraform plan diffs for AzureRM Set-type attributes, parse the plan JSON to detect order-only changes versus actual additions or removals in resources like Application Gateways or Load Balancers. This separates real resource changes from irrelevant ordering shifts.

What causes false-positive diffs in AzureRM Terraform plans?

False-positive diffs in AzureRM Terraform plans are caused by Set-type attributes, where the provider detects reordering of elements as changes. The analyzer identifies these order-only differences across nested attributes in resources like NSGs and Front Doors to isolate actual additions or removals.

How do I analyze a Terraform plan JSON to find Set-diff false positives?

To analyze a Terraform plan JSON for Set-diff false positives, first generate a plan file and convert it to JSON using terraform show -json. Then run the Python analysis script against the JSON output, using a JSON attribute map to drive comparisons and output structured results.

Does the AzureRM Set-diff analyzer handle nested attributes in complex resources?

Yes, the AzureRM Set-diff analyzer handles nested Set attributes and keys across complex resources such as application gateways, firewall policies, and front doors. It processes these nested structures within the Terraform plan JSON to accurately separate ordering changes from real diffs.

Can I integrate Terraform Set-diff analysis into CI/CD pipelines?

Yes, you can integrate Terraform Set-diff analysis into CI/CD pipelines. The analyzer processes the plan JSON and outputs structured results suitable for downstream tooling and dashboards, producing concise summaries and actionable reports to help teams focus on real resource changes.

What do I need to run the AzureRM Terraform false-positive diff analyzer?

To run the AzureRM Terraform false-positive diff analyzer, you need Python 3.8 or higher and a JSON attribute map located at references/azurerm_set_attributes.json. You also need a Terraform plan exported as JSON to serve as the input for the analysis script.