provider-docs

tarafından hashicorp

Create, update, and review Terraform provider documentation for Terraform Registry using HashiCorp-recommended patterns, tfplugindocs templates, and schema…

npx skills add https://github.com/hashicorp/agent-skills --skill provider-docs

Terraform Provider Docs

Follow This Workflow

  1. Confirm scope and documentation targets.
  • Map code changes to the exact doc targets: provider index, resources, data sources, ephemeral resources, list resources, functions, actions, or guides.
  • Decide whether content should come from schema descriptions, templates, or both.
  1. Write schema descriptions first.
  • Add precise user-facing descriptions to schema fields so generated docs stay aligned with behavior.
  • Keep wording specific to argument purpose, constraints, defaults, and computed behavior.
  1. Add or update template files in docs/.
  • Create only files that map to implemented provider objects.
  • Use HashiCorp-recommended template paths:
    • docs/index.md.tmpl
    • docs/data-sources/<name>.md.tmpl
    • docs/resources/<name>.md.tmpl
    • docs/ephemeral-resources/<name>.md.tmpl
    • docs/list-resources/<name>.md.tmpl
    • docs/functions/<name>.md.tmpl
    • docs/actions/<name>.md.tmpl (tfplugindocs generates action docs with Terraform v1.14.0+)
    • docs/guides/<name>.md.tmpl
  • Keep templates focused on overview and examples; rely on generated sections for field-by-field details.
  • Keep HCL examples in the examples/ directory — one example per file, pulled into templates with tffile — rather than inlined in templates (see Example File Conventions in references/hashicorp-provider-docs.md). Examples must not contain terraform, provider, or output blocks.
  • For action pages, follow the structure in references/hashicorp-provider-docs.md (Action Pages section): examples must show both the action block and the action_trigger lifecycle wiring, and actions get no attribute/output section.
  1. Generate documentation with tfplugindocs.
  • Prefer repository defaults when configured:
go generate ./...
  • Otherwise run the generator directly:
go run github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs generate --provider-name <provider_name>
  • Re-run generation after every schema or template edit.
  1. Validate the generated markdown.
  • Verify files in docs/ match the current provider implementation.
  • Verify examples are valid HCL and reflect current argument/attribute names.
  • Verify required/optional/computed semantics in docs match schema behavior.
  1. Apply Registry publication rules before release.
  • Use semantic version tags prefixed with v (for example v1.2.3).
  • Create release tags from the default branch.
  • Keep terraform-registry-manifest.json in the repository root.
  • Expect docs to be versioned in Registry and switchable with the version selector.
  1. Preview or troubleshoot publication when needed.
  • Use the HashiCorp preview process to inspect rendered docs before release when accuracy risk is high.
  • If docs are missing in Registry, check tag format, tag source branch, manifest file presence, and provider publication status.

Enforce Quality Bar

  • Keep documentation behaviorally accurate; never describe unsupported arguments or attributes.
  • Keep examples minimal, realistic, and runnable.
  • Keep terminology and naming consistent across provider, resources, and data sources.
  • Avoid duplicating generated argument/attribute blocks in manual templates.
  • Keep doc changes tied to the same PR as schema/API changes whenever possible.

Load References On Demand

  • Read references/hashicorp-provider-docs.md for source-backed rules and official links.
  • Load only the sections needed for the current change to keep context lean.

hashicorp tarafından daha fazla skill

provider-actions
hashicorp
Terraform Provider eylemlerini Plugin Framework'ü kullanarak uygulayın. Yaşam döngüsü olaylarında (öncesi/sonrası…) yürütülen zorunlu işlemler geliştirirken kullanın.
official
new-terraform-provider
hashicorp
Use this when scaffolding a new Terraform provider with the Plugin Framework: workspace layout, go module setup, provider server main.go, and a provider.go…
official
terraform-test
hashicorp
Terraform testlerini yazmak ve çalıştırmak için kapsamlı rehber. Test dosyaları (.tftest.hcl) oluştururken, run bloklarıyla test senaryoları yazarken, doğrularken… kullanın.
official
terraform-test
hashicorp
Terraform testlerini yazma ve çalıştırma için kapsamlı rehber; assertion'lar, mocking ve modül doğrulama ile birlikte. .tftest.hcl sözdizimini kullanarak plan veya apply modunda çalışan run blokları ile test dosyaları yazın; sıralı ve paralel yürütmeyi, isteğe bağlı durum izolasyonu ile destekler. Kaynak nitelikleri, çıktılar ve veri kaynakları üzerinde koşulları assert edin; geçersiz girdilerin düzgün bir şekilde reddedildiğini doğrulamak için expect_failures kullanın. Mock sağlayıcılar (Terraform 1.7.0+) altyapı davranışını simüle eder...
official
provider-actions
hashicorp
Plugin Framework kullanarak kaynak yaşam döngüsü olaylarında imperatif Terraform Provider eylemlerini uygular. Oluşturma öncesi/sonrası ve güncelleme öncesi/sonrası yaşam döngüsü tetikleyicilerini destekler (yok etme olayları Terraform 1.14.0'da mevcut değildir). Doğru framework türleri, koleksiyonlar için ElementType ve giriş doğrulaması için validatörler ile uygun şema tanımı gerektirir. Uzun süren işlemler için ilerleme raporlaması, zaman aşımı yönetimi ve kapsamlı hata işleme içerir. Yoklama ve...
official
aws-ami-builder
hashicorp
Packer'ın amazon-ebs builder'ı ile özel Amazon Machine Images oluşturun. HCL şablonları kullanarak kaynak AMI'lerden AMI oluşturmayı otomatikleştirir; özelleştirme için provisioner'lar (shell betikleri, dosya yükleme, yapılandırma yönetimi) içerir. ami_regions ile çoklu bölge AMI dağıtımını ve kaynak AMI'lerin ad, sahip ve sanallaştırma türüne göre esnek filtrelenmesini destekler. Ortam değişkenleri, AWS kimlik bilgileri dosyası veya IAM örnek profilleri aracılığıyla kimlik doğrulaması yapar; şablon için doğrulama ve derleme komutlarını içerir...
official
new-terraform-provider
hashicorp
Plugin Framework kullanarak yeni bir Terraform sağlayıcısı iskeleti oluşturur. Standart "terraform-provider-" adlandırma kuralıyla yeni bir Go modül çalışma alanı oluşturur ve gerekli bağımlılıkları başlatır. HashiCorp'un Plugin Framework desenlerini takip eden, özelleştirme için TODO işaretçileri içeren bir şablon main.go dosyası sağlar. Sağlayıcının derlendiğini ve ilk kontrolleri geçtiğini doğrulamak için derleme ve test komutlarını çalıştırarak kurulumu doğrular. Yeni bir çalışma alanı oluşturmadan önce niyeti onaylayarak çalışma alanı yönetimini gerçekleştirir...
official
azure-verified-modules
hashicorp
AVM uyumluluğu arayan Azure Terraform modülleri için sertifikasyon gereksinimleri ve en iyi uygulamalar. Sağlayıcı sürüm kısıtlamalarını (azurerm >= 4.0, < 5.0; azapi >= 2.0, < 3.0) zorunlu kılar ve git tabanlı modül referanslarını yasaklayarak sabitlenmiş Terraform kaynak kayıtlarını tercih eder. Tüm tanımlayıcılar için küçük harf snake_case, kesin değişken türleri, anti-bozulma katmanı deseni aracılığıyla ayrık çıktı nitelikleri ve alfabetik olarak sıralanmış yereller zorunludur. Yeni kaynaklar eklendiğinde özellik geçiş de
official