name: new-terraform-provider description: Use this when scaffolding a new Terraform provider. license: MPL-2.0 metadata: copyright: Copyright IBM Corp. 2026 version: "0.0.1"
To scaffold a new Terraform provider with Plugin Framework:
- If I am already in a Terraform provider workspace, then confirm that I want to create a new workspace. If I do not want to create a new workspace, then skip all remaining steps.
- Create a new workspace root directory. The root directory name should be prefixed with "terraform-provider-". Perform all subsequent steps in this new workspace.
- Initialize a new Go module..
- Run
go get -u github.com/hashicorp/terraform-plugin-framework@latest. - Write a main.go file that follows the example.
- Remove TODO comments from
main.go - Run
go mod tidy - Run
go build -o /dev/null - Run
go test ./...