/terraform-provider-infoblox

Infoblox Provider for Terraform

Primary LanguageGoApache License 2.0Apache-2.0

Terraform Provider for Infoblox

capture

Requirements

  • Terraform 0.11.x or greater
  • Go 1.12.x (to build the provider plugin)
  • CNA License need to be installed on NIOS

Building the Provider

Clone repository to $GOPATH/src/github.com/infobloxopen/terraform-provider-infoblox.

$ mkdir -p $GOPATH/src/github.com/infobloxopen; cd $GOPATH/src/github.com/infobloxopen
$ git clone git@github.com:infobloxopen/terraform-provider-infoblox

Enter the provider directory and build the provider.

$ cd $GOPATH/src/github.com/infobloxopen/terraform-provider-infoblox
$ export GO111MODULE="on"
$ make build

Using the Provider

If you're building the provider, follow the instructions to install it as a plugin. After the build is complete, copy the terraform-provider-infoblox binary into the same path as your terraform binary. After placing it into your plugins directory, run terraform init to initialize it.

Developing the Provider

If you wish to work on the provider, you'll first need Go installed on your machine (version 1.9+ is required). You'll also need to correctly setup a GOPATH, as well as adding $GOPATH/bin to your $PATH.

To compile the provider, run make build. This will build the provider and put the provider binary in the $GOPATH/bin directory.

$ export GO111MODULE="on"
$ make build
...
$ $GOPATH/bin/terraform-provider-infoblox
...

To test the provider, you can simply run make test.

$ make test

Features of Provider

  • Creation of Network View in NIOS appliance
  • Creation & Deletion of Network in NIOS appliance
  • Allocation & Deallocation of IP from a Network
  • Association & Disassociation of IP Address for a VM
  • Creation and Deletion of A, CNAME, Host, and Ptr records

Disclaimer

To use the provider for DNS purposes, a parent (i.e. zone) must already exist. The plugin does not support the creation of zones.