Quick start repository for creating a Terraform provider using terraform-plugin-framework
Go
440
313 commits
updated Oct 19, 2026
This template repository is built on the Terraform Plugin Framework. The template repository built on the Terraform Plugin SDK can be found at terraform-provider-scaffolding. See Which SDK Should I Use? in the Terraform documentation for additional information.
This repository is a template for a Terraform provider. It is intended as a starting point for creating Terraform providers, containing:
internal/provider/),examples/) and generated documentation (docs/),These files contain boilerplate code that you will need to edit to create your own Terraform provider. Tutorials for creating Terraform providers can be found on the HashiCorp Developer platform. Terraform Plugin Framework specific guides are titled accordingly.
Please see the GitHub template repository documentation for how to create a new repository from this template on GitHub.
Once you've written your provider, you'll want to publish it on the Terraform Registry so that others can use it.
install command:go install
This provider uses Go modules. Please see the Go documentation for the most up to date information about using Go modules.
To add a new dependency github.com/author/dependency to your Terraform provider:
go get github.com/author/dependency
go mod tidy
Then commit the changes to go.mod and go.sum.
Fill this in for each provider
If you wish to work on the provider, you'll first need Go installed on your machine (see Requirements above).
To compile the provider, run go install. This will build the provider and put the provider binary in the $GOPATH/bin directory.
To generate or update documentation, run make generate.
In order to run the full suite of Acceptance tests, run make testacc.
Note: Acceptance tests create real resources, and often cost money to run.
make testacc
63 followers · starred Jun 2023
512 followers · starred Mar 2022
133 followers · starred Oct 2023
605 followers · starred Aug 2023
Quick start repository for creating a Terraform provider using terraform-plugin-framework
Go
440
313 commits
updated Oct 19, 2026
This template repository is built on the Terraform Plugin Framework. The template repository built on the Terraform Plugin SDK can be found at terraform-provider-scaffolding. See Which SDK Should I Use? in the Terraform documentation for additional information.
This repository is a template for a Terraform provider. It is intended as a starting point for creating Terraform providers, containing:
internal/provider/),examples/) and generated documentation (docs/),These files contain boilerplate code that you will need to edit to create your own Terraform provider. Tutorials for creating Terraform providers can be found on the HashiCorp Developer platform. Terraform Plugin Framework specific guides are titled accordingly.
Please see the GitHub template repository documentation for how to create a new repository from this template on GitHub.
Once you've written your provider, you'll want to publish it on the Terraform Registry so that others can use it.
install command:go install
This provider uses Go modules. Please see the Go documentation for the most up to date information about using Go modules.
To add a new dependency github.com/author/dependency to your Terraform provider:
go get github.com/author/dependency
go mod tidy
Then commit the changes to go.mod and go.sum.
Fill this in for each provider
If you wish to work on the provider, you'll first need Go installed on your machine (see Requirements above).
To compile the provider, run go install. This will build the provider and put the provider binary in the $GOPATH/bin directory.
To generate or update documentation, run make generate.
In order to run the full suite of Acceptance tests, run make testacc.
Note: Acceptance tests create real resources, and often cost money to run.
make testacc
63 followers · starred Jun 2023
512 followers · starred Mar 2022
133 followers · starred Oct 2023
605 followers · starred Aug 2023