/terraform-provider-freeipa

FreeIPA Terraform Provider

Primary LanguageGoMozilla Public License 2.0MPL-2.0

FreeIPA Terraform Provider

Terraform Registry Version Go Report Card Build Status By Camptocamp

This provider adds integration between Terraform and FreeIPA.

Requirements

Building The Provider

Download the provider source code

$ go get github.com/camptocamp/terraform-provider-freeipa

Enter the provider directory and build the provider

$ cd $GOPATH/src/github.com/camptocamp/terraform-provider-freeipa
$ make build

Installing the provider

After building the provider, install it using the Terraform instructions for installing a third party provider.

Example

provider freeipa {
  host = "ipa.example.test"   # or set $FREEIPA_HOST
  username = "admin"          # or set $FREEIPA_USERNAME
  password = "P@S5sw0rd"      # or set $FREEIPA_PASSWORD
  insecure = true
}

resource freeipa_host "foo" {
  fqdn = "foo.example.test"
  description = "This is my foo host"
  force = true
  random = true
}

resource freeipa_host "bar" {
  fqdn = "bar.example.test"
  userpassword = "abcde"
}

resource freeipa_dns_record "foo" {
  dnszoneidnsname = "your.zone.name."
  idnsname = "foo"
  records = ["192.168.10.10"]
  type = "A"
}

Usage

Import

DNS records can be imported using the record name and the zone name from <record_name>/<zone_name>/<type>

$ terraform import freeipa_dns_record.foo foo/example.tld./A