Agent skill · DevOps & Cloud

terraform-azurerm-set-diff-analyzer

Analyze Terraform plan JSON output for AzureRM Provider to distinguish between false-positive diffs (order-only changes in Set-type attributes) and actual resource changes. Use when reviewing terraform plan output for Azure resources like Application Gateway, Load Balancer, Firewall, Front Door, NSG, and other resources with Set-type attributes that cause spurious diffs due to internal ordering changes.

GitHub68,948★ · +463/wk · 2 repos on radarProfile →
copilotships scriptsMIT
Install
npx skills add github/awesome-copilot --skill terraform-azurerm-set-diff-analyzer --agent copilot

Same command for any agent — swap --agent for claude-code, codex, cursor.

Facts
Files in the skill folder: 6
SKILL.md size: 2 KB
Bundled scripts: yes
Path: skills/terraform-azurerm-set-diff-analyzer/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 37,432 · +281 this week
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Terraform AzureRM Set Diff Analyzer A skill to identify "false-positive diffs" in Terraform plans caused by AzureRM Provider's Set-type attributes and distinguish them from actual changes. ## When to Use - `terraform plan` shows many changes, but you only added/removed a single element - Application Gateway, Load Balancer, NSG, etc. show "all elements changed" - You want to automatically filter false-positive diffs in CI/CD ## Background Terraform's Set type compares by position rather than by key, so when adding or removing elements, all elements appear as "changed". This is a general Terraform issue, but it's particularly noticeable with AzureRM resources that heavily use Set-type attributes like Application Gateway, Load Balancer, and NSG. These "false-positive diffs" don't actually affect the resources, but they make reviewing terraform plan output difficult. ## Prerequisites - Python 3.8+ If Python is unavailable, install via your package manager (e.g., `apt install python3`, `brew install python3`) or from [python.org](https://www.python.org/downloads/). ## Basic Usage ```bash # 1. Generate plan JSON output terraform plan -out=plan.tfplan terraform show -json plan.tfplan >

What's inside
Steps it walks through
  1. When to Use
  2. Background
  3. Prerequisites
  4. Basic Usage
  5. Troubleshooting
  6. Detailed Documentation
Ships with 5 files
  • references/azurerm_set_attributes.json
  • references/azurerm_set_attributes.md
  • scripts/.gitignore
  • scripts/README.md
  • scripts/analyze_plan.py
Commands it runs
terraform plan -out=plan.tfplan
terraform show -json plan.tfplan > plan.json
python scripts/analyze_plan.py plan.json
More from awesome-copilot
All skills →
About this skill
What does the terraform-azurerm-set-diff-analyzer skill do?

Analyze Terraform plan JSON output for AzureRM Provider to distinguish between false-positive diffs (order-only changes in Set-type attributes) and actual resource changes. Use when reviewing terraform plan output for Azure resources like Application Gateway, Load Balancer, Firewall, Front Door, NSG, and other resources with Set-type attributes that cause spurious diffs due to internal ordering changes.

How do I install it?

Run `npx skills add github/awesome-copilot --skill terraform-azurerm-set-diff-analyzer --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From github/awesome-copilot, a repository with 37,432 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going