关于 new-terraform-provider
用于使用 Plugin Framework 搭建 Terraform Provider 的技能,涵盖 Go 工作区、Provider 文件及构建测试,并指向相关技能处理凭据和资源。
主要功能
- 01创建带指定前缀的 Provider 工作区
- 02初始化 Go 模块和依赖
- 03生成 main.go 与 provider.go
- 04构建并测试脚手架
适用场景
- 01启动新的 Terraform Provider
- 02检查脚手架能否编译并通过测试
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ hashicorp/ agent-skills --skill new-terraform-provider安装后在 Claude Code 中输入/new-terraform-provider确认已加载。
附带文件assets/main.goassets/provider.go
详细介绍
使用 Plugin Framework 搭建新的 Terraform 提供程序:
- 如果当前已位于 Terraform 提供程序工作区中,请确认是否要创建新的工作区。如果不想创建新工作区,则跳过其余所有步骤。
- 创建新的工作区根目录。根目录名称应以 "terraform-provider-" 为前缀。后续所有步骤都在此新工作区中执行。
- 初始化新的 Go 模块。
- 运行
go get -u github.com/hashicorp/terraform-plugin-framework@latest。 - 按照示例编写 main.go 文件。
- 按照示例编写
internal/provider/provider.go文件。将demo提供程序、DEMO_*环境变量和身份验证属性重命名,以匹配目标 API。 - 从
main.go和provider.go中删除 TODO 注释。 - 运行
go mod tidy - 运行
go build -o /dev/null - 运行
go test ./...
该脚手架会将凭据解析为显式配置,并在未配置时回退到环境变量。若要扩展为完整的凭据提供程序链(共享凭据文件、配置文件、平台身份、配置时验证),请使用 provider-configuration skill(如果可用)。若要添加第一个资源或数据源,请使用 provider-resources skill(如果可用)。
评论
支持 Markdown