terraform-azurerm-set-diff-analyzer

Analyze Terraform plan JSON to distinguish order-only AzureRM Set attribute diffs.

Updated Feb 13, 2026
One-click install
npx skills add https://github.com/MudassarAbrar/HACKATHON-1.0 --skill terraform-azurerm-set-diff-analyzer-mudassarabrar
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: terraform-azurerm-set-diff-analyzer
Source: https://github.com/MudassarAbrar/HACKATHON-1.0/tree/main/.agent/workflows/terraform-azurerm-set-diff-analyzer
Command: npx skills add https://github.com/MudassarAbrar/HACKATHON-1.0 --skill terraform-azurerm-set-diff-analyzer-mudassarabrar

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

Terraform plan diffs for AzureRM resources often show changes for Set-type attributes due to element order rather than actual resource changes. This leads to noise in reviews and CI/CD, masking real changes.

Core Features & Use Cases

  • Analyzes Terraform plan JSON outputs to separate order-only (false-positive) diffs from real additions/removals/modifications in Set-type attributes.
  • Supports nested Set attributes and primitive element sets, with optional case-insensitive comparisons and include/exclude filters for targeted resources.
  • Produces human-readable Markdown, JSON, or summary outputs suitable for PR comments, dashboards, or CI pipelines.

Quick Start

Run the analyze_plan.py script against a Terraform plan JSON (plan.json or via stdin) to generate a report that distinguishes order-only diffs from real Set attribute changes.

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

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

FAQPage Schema
Why does my Terraform plan show changes for AzureRM Set attributes when nothing actually changed?

Terraform plan diffs for AzureRM resources often show changes for Set-type attributes due to element order rather than actual resource changes. This false-positive noise masks real additions or removals during reviews and CI/CD pipeline execution.

How do I analyze a Terraform plan JSON to filter out false-positive Set diffs?

Run the analyze_plan.py script against your Terraform plan JSON file or via stdin. It separates order-only false-positive diffs from real additions, removals, and modifications in AzureRM Set-type attributes, generating a structured report.

Does this Terraform plan analyzer support nested Set attributes and case-insensitive comparisons?

Yes, the analyzer supports nested Set structures and primitive element sets. It offers optional case-insensitive comparisons and include/exclude filters for targeted AzureRM resources like Application Gateway, NSG, and Load Balancer.

Can I use this tool to generate PR comments and CI/CD pipeline reports from Terraform plan outputs?

Yes, the analyzer produces human-readable Markdown, JSON, or summary outputs from Terraform plan JSON. These structured formats are suitable for PR comments, dashboards, and CI/CD pipeline integrations to distinguish order-only diffs.

What is the best way to identify order-only changes versus actual changes in AzureRM Terraform plans?

Use a set-diff analyzer that loads AzureRM Set attribute definitions and evaluates Terraform plan JSON. It distinguishes order-only changes from actual additions, removals, and modifications, preventing false-positives in CI/CD reviews.

Are there limitations when analyzing primitive sets versus nested Set structures in AzureRM resources?

The analyzer handles both nested Set structures and primitive sets, loading definitions from references/azurerm_set_attributes.json. It applies optional case-insensitive comparisons and filtering, but requires valid Terraform plan JSON input to function correctly.