360 Secure SkillHub
360 安全技能中心

terraform

围绕 Terraform 的基础设施即代码工作流,按请求路由到安装配置、Provider 与变量、CLI 命令、状态与远程后端四类参考文档,给出 init/plan/apply/destroy 等命令用法、HCL 编写与格式化校验流程,并包含针对 destroy、状态文件提交、-target 使用和状态锁定的安全注意事项。

greedychipmunk
热度 0.00
最近更新 2026-10-18 21:21:15
分类:开发依赖:代码执行 / 读写文件应用场景:DevOps / 自动化脚本 / 代码生成

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add greedychipmunk/agent-skills/terraform
Metadata
name
terraform
description
Plan, apply, and manage infrastructure with Terraform. Use when tasks mention terraform commands, HCL configuration, provider setup, state management, or workspace operations.
license
MIT
metadata
{"author":"greedychipmunk","version":"1.0"}

Terraform

Intent Router

Request Reference Load When
Install tool, first-time setup, tfenv resources/install-and-setup.md User needs to install Terraform or manage versions
Provider config, variables, backends resources/configuration.md User needs provider blocks, variable files, or backend setup
CLI commands, workflows resources/command-cookbook.md User needs init/plan/apply/destroy patterns or state commands
State management, remote backends resources/state-and-backends.md User asks about state files, locking, or remote backends

Quick Start

# 1. Initialize working directory (downloads providers)
terraform init

# 2. Preview changes (always run before apply)
terraform plan

# 3. Apply changes (requires confirmation)
terraform apply

# 4. Destroy infrastructure (DANGEROUS — requires confirmation)
terraform destroy

Core Command Tracks

  • Initialize: terraform init — downloads providers, sets up backend
  • Validate & format: terraform validate, terraform fmt -recursive
  • Preview: terraform plan [-out=tfplan] — no changes made
  • Apply: terraform apply [tfplan] — creates/updates resources
  • Inspect state: terraform state list, terraform state show <resource>
  • Workspaces: terraform workspace list, terraform workspace select <name>

Safety Guardrails

  • Always run terraform plan before terraform apply — review the diff carefully.
  • terraform destroy is irreversible — confirm resource list before proceeding.
  • Never commit terraform.tfstate or .tfvars files containing secrets to version control.
  • Use -target sparingly; it can leave state inconsistent.
  • Enable state locking on remote backends to prevent concurrent modifications.
# Inspect managed resources in state before making changes
terraform state list
terraform state show aws_instance.web

Workflow

  1. Write or edit .tf configuration files.
  2. Run terraform fmt to normalize formatting.
  3. Run terraform validate to catch syntax errors.
  4. Run terraform plan and review the proposed changes.
  5. Run terraform apply only after reviewing the plan.
  6. Commit updated terraform.lock.hcl but never terraform.tfstate.

Related Skills

  • pulumi — IaC using general-purpose languages (TypeScript, Python, Go, C#)
  • ansible — configuration management and agentless automation

References