IDVH Terraform Skill
When to use
- •Create a new IDVH wrapper module.
- •Refactor an existing IDVH resource module or
IDVH/01_idvh_loader. - •Add or modify tier values under
IDVH/00_product_configs/**. - •Align module logic with catalog-first behavior and YAML validation checks.
- •Update IDVH documentation (
README.md,LIBRARY.md,resource_description.info) after behavior changes.
Workflow
- •Detect the target area: loader, module, catalog, or docs.
- •Read
.github/skills/idvh-terraform/references/idvh-standards.mdfor architecture and baseline details. - •Read optional module references under
references/*-module.mdonly when they exist for the target module. - •Apply all rules from
.github/instructions/idvh.instructions.md(auto-applied forIDVH/**). - •Keep naming, tags, and security defaults consistent with existing IDVH modules.
- •Add or update
.tftest.hclcoverage for every changed module contract, check, or conditional behavior. - •Update docs when tier behavior, keys, outputs, or module-source references change.
Additional rules
These complement .github/instructions/idvh.instructions.md (not duplicated here):
- •Keep Terraform variable surfaces small and explicit.
- •For every new validation check, include at least one negative-path
.tftest.hclassertion.
Validation
- •
terraform fmton touched module files. - •
terraform validatefor touched modules when provider access is available. - •
terraform testfor touched IDVH modules; if a module has no suite yet, add the minimal.tftest.hclcoverage needed for the change. - •
rg -n ':\s*\"\"\s*$' IDVH/00_product_configsto prevent empty catalog values. - •Confirm docs and examples reflect new keys and behavior.