_This repository is built from terraform provider scafffolding repo using the Terraform Plugin Framework SDK. _
- Freeipa Host resource and a data source can be found
internal/provider/
, - Examples (
examples/
) and generated documentation (docs/
), - Miscellaneous meta files.
- Clone the repository
- Enter the repository directory
- Build the provider using the Go
install
command:
go install .
This provider uses Go Freeipa SDK for interacting with Freeipa server.
go get github.com/ccin2p3/go-freeipa
go mod tidy
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
.
terraform {
required_providers {
freeipa = {
source = "hashicorp.com/mashanm/freeipa"
}
}
}
provider "freeipa" {
host = "duba-shp-doma01.corp.example.com"
username = "terraform"
password = "password"
realm = "corp.example.com"
}
data "freeipa_host" "example" {
fqdn = "duba-nfws-otfa01.corp.example.com"
}
output "fqdn" {
value = data.freeipa_host.example
}
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