.github/skills/azure-naming-research/SKILL.md
Research Azure naming constraints and CAF abbreviations for a given resource type. Use when you need to look up the official CAF slug, naming rules (length, scope, valid characters), and derive validation/cleaning regex patterns for an Azure resource. Triggers on: CAF abbreviation lookup, Azure naming rules research, resource naming constraints.
npx skillsauth add aztfmod/terraform-provider-azurecaf azure-naming-researchInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Query the CAF abbreviations page for the official slug and resource provider namespace:
URL: https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/resource-abbreviations
Prefer Microsoft Docs MCP tools (microsoft_docs_search, microsoft_docs_fetch) when available.
Search by:
azurerm_ prefix (e.g., "container app")Extract: CAF abbreviation (slug), resource display name, resource provider namespace.
If not found, the resource is out-of-doc — set "out_of_doc": true in the JSON entry and omit official.slug and official.resource_provider_namespace.
Query the naming rules page for constraints:
URL: https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-name-rules
Find the section matching the resource provider namespace from step 1. Extract: scope, length (min-max), valid characters.
See references/regex-patterns.md for the regex conversion tables.
"global", "resource group"→"resourceGroup", "within parent"→"parent", "subscription"→"subscription"true if hyphens allowedtrue if only lowercase letters allowed"\"pattern\""Never guess at constraints — mark as UNKNOWN if not verifiable.
development
Analyze test failure output to identify root cause and suggest fixes. Use when build or test failures occur. Triggers on: test failures, build errors, CI failures.
development
Validate a resource definition end-to-end using terraform test with mock_provider azurerm. Proves the CAF-generated name is accepted by the azurerm provider schema without Azure credentials. Use after provider-build-test succeeds to run the mocked azurerm integration test.
documentation
Analyze changes since the last release tag and determine the appropriate semantic version bump (patch/minor/major) based on CHANGELOG entries and commit types. Triggers on: release preparation, version planning.
testing
Compare two versions of resourceDefinition.json (e.g., branch vs main) and produce a structured change summary. Triggers on: PR review, audit, before/after comparison.