Please note: This Terraform provider is archived, per our provider archiving process. What does this mean?
- The code repository and all commit history will still be available.
- Existing released binaries will remain available on the releases site.
- Issues and pull requests are not being monitored.
- New releases will not be published.
If anyone from the community or an interested third party is willing to maintain it, they can fork the repository and publish it to the Terraform Registry. If you are interested in maintaining this provider, please reach out to the Terraform Provider Development Program at terraform-provider-dev@hashicorp.com.
- Website: https://www.terraform.io
- Mailing list: Google Groups
Clone repository in HOME directory
$ git clone https://github.com/terraform-providers/terraform-provider-ultradns.git terraform-provider-ultradns
Enter the provider directory and build the provider
$ go mod tidy
$ go mod vendor
$ make fmt
$ go build -o terraform-provider-ultradns
Note: This will be utilized as a third-party plugin, until officially released by Hashicorp
-
Download the plugin binary (terraform-provider-ultradns_v0.X.X.zip) from the release assets
-
Unzip the plugin binary
$> unzip terraform-provider-ultradns_v0.X.X.zip
-
Move the plugin to appropriate (third-party plugin) directory
$> mv terraform-provider-ultradns_v0.X.X ~/.terraform.d/plugins/
-
Remove the older terraform plugin, if it exists
$> rm -f .terraform/plugins/<OS>_<ARCH>/terraform-provider-ultradns*
-
Update main.tf to use the provider plugin as intended WITH the desired ultradns provider "version"
provider "ultradns" { version = "~>0.X.X" username = "${var.ULTRADNS_USERNAME}" password = "${var.ULTRADNS_PASSWORD}" baseurl = "${var.ULTRADNS_BASEURL}" }
-
Initialize the plugin using
terraform init
command
If you wish to work on the provider, you'll first need Go installed on your machine (version 1.14+ is required). You'll also need to setup a GOPATH, as well as adding $GOPATH/bin
to your $PATH
To compile the provider, run go build -o terraform-provider-ultradns
. This will build the provider and put the provider binary in current directory
In order to test the provider, you can simply run make test
$ make test
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
-
Note: "{terraform_plugin_directory}" is the
terraform.d
directory where we will place the binaries -
Note: The test domain specified in ULTRADNS_DOMAINNAME must already be present at UltraDNS before running Acceptance Test Suite
$ cp terraform-provider-ultradns_v0.X.X ${terraform_plugin_directory}/plugins
$ export ULTRADNS_USERNAME='***********'
$ export ULTRADNS_PASSWORD='***********'
$ export ULTRADNS_BASEURL='https://api.ultradns.com'
$ export ULTRADNS_DOMAINNAME='Domain Name'
$ make testacc
In order to add the compiled plugin to terraform, you can simply run the following:
-
Note: "{terraform_project_directory}" is the directory where the actual project is written to be applied by terraform
-
Note: "{terraform_plugin_directory}" is the
terraform.d
directory where we will place the binaries
$ cp terraform-provider-ultradns_v0.X.X ${terraform_plugin_directory}/plugins
$ cd ${terraform_project_directory}/
$ terraform init
$ terraform validate