Build your own Terraform provider
summary
Hands-on lab shows how to build a Terraform provider in Go using the Go plugin framework to manage a fake Hashicups REST API: implement authentication, create a new order resource (create/read/update/delete resource), add a coffees data source, wire a client library, and test locally with go install and Terraform init/apply/destroy. Uses the official scaffold, demonstrates pointing Terraform to a local provider via .terraformrc, and verifies state changes (orders created, updated, deleted) end-to-end.
AI-written summary · about
chapters (14)
- 0:00Workshop introduction
- 1:26Terraform overview
- 3:48The role of providers
- 5:22When to build a provider
- 8:14Lab scenario setup
- 10:07Provider internals
- 14:23Plugin framework intro
- 16:08Hands-on setup
- 21:50Implementing the provider
- 28:55Defining resources
- 32:19Implementing CRUD operations
- 43:20Provider installation and testing
- 48:48Adding data sources
- 55:40Implementing delete and wrap-up
related talks
49mLet's dive into Terraform provider creation
23mWhen Infrastructure as Code Ends: Creating Terraform Providers
26mEverything as Code with Terraform
24mHow to Build a Usable Terraform Provider in 20 hours
29mHow to Write a Modern Terraform Provider: Tools and Patterns
34mTerraform: A Novel About Modules, Providers, Security, and Pain
27mTricks and Treats with HashiCorp's OSS
01h 23mAutomating your Infrastructure Deployments in the Google Cloud, Azure & AWS w/ Terraform
