
Discover new Azure resources by fetching the latest azurerm provider resource list from the Terraform Registry and comparing against resourceDefinition.json. Identifies unsupported resources. Triggers on: weekly scheduled discovery, manual audit.
Accept a list of Azure resource types, batch-research each via azure-naming-research conventions, generate JSON entries, and insert all into resourceDefinition.json. Triggers on: batch resource addition, bulk import requests.
Fetch the latest CAF abbreviations page from Microsoft Learn and compare against resourceDefinition.json official.slug values. Reports drift where the provider's slug differs from the official CAF slug. Triggers on: weekly scheduled audit, manual sync check.
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.
Provide step-by-step guidance for contributors based on their contribution type. References CONTRIBUTING.md and project conventions. Triggers on: new contributor questions, 'how do I contribute', contribution guidance requests.
Ensure documentation files under docs/resources/ and docs/data-sources/ reflect current resource types with accurate examples. Triggers on: after adding/updating resources, documentation audit.
Generate Terraform example configurations for a given resource type using the azurecaf provider. Produces ready-to-use HCL code for documentation or onboarding. Triggers on: documentation requests, example creation, contributor guidance.
Parse a 'new resource request' GitHub issue and extract the resource type, slug, and naming constraints to produce a draft resourceDefinition.json entry. Triggers on: issue labeled 'feature' or 'new-resource', new resource request.
Validate a pull request against the project's contribution checklist. Checks that resourceDefinition.json changes trigger models_generated.go regeneration, README is updated, CHANGELOG is updated, and tests pass. Triggers on: PR opened, PR updated.
Run comprehensive pre-release checks: full test suite, E2E tests, coverage verification, CHANGELOG validation, and generated code freshness. Triggers on: before creating a release tag, release preparation.
Regenerate Go code from resourceDefinition.json, build the terraform-provider-azurecaf binary, and run unit tests. Use after any change to resourceDefinition.json to verify the provider compiles and tests pass.
Update the resource status table in README.md to reflect current resource support. Adds new rows, updates existing entries, and marks support status. Triggers on: after adding/updating resources in resourceDefinition.json.
Generate release notes from CHANGELOG.md entries since the last release. Formats for GitHub Release publication. Triggers on: release preparation, tag creation.
Compare resourceDefinition.json against completness/existing_tf_resources.txt to report coverage gaps. Shows which Terraform azurerm resources are supported and which are missing. Triggers on: audit, completeness review.
Manage resource entries in resourceDefinition.json for the terraform-provider-azurecaf naming provider. Use for lookup, comparison, formatting, and insert/update of resource naming definitions. Triggers on: resourceDefinition.json edits, resource definition lookup, JSON entry formatting, resource comparison.
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.
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.
Update CHANGELOG.md with a new entry under the correct section. Parses existing structure, adds entries under [Unreleased], and assesses semver impact. Triggers on: after resource changes, bug fixes, documentation updates, or any notable project change.
Run test coverage analysis (make test_coverage), parse coverage percentage, compare against the 95% threshold, and flag regressions. Triggers on: PR checks, post-build validation, release prep.
Re-fetch Azure naming rules for a set of resources and compare against current regex/length/scope values in resourceDefinition.json. Detects when Azure has changed naming constraints. Triggers on: periodic audit, resource validation.
Run the full CI test suite (make test_ci), parse output, and report pass/fail with failure details. Use after code changes to verify nothing is broken. Triggers on: code changes, PR validation, post-build verification.
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.
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.
Run end-to-end tests (make test_e2e or make test_e2e_quick), parse results, and produce a structured summary. Use after build succeeds to validate real Terraform workflows. Triggers on: post-build validation, PR checks, release verification.