# README
Terraform Provider for Ionos Developer
The IonosDeveloper provider gives the ability to configure DNS records using the IONOS Developer API.
Requirements
-
Terraform 0.13.x+
-
Go 1.17 (to build the provider plugin)
NOTE: In order to use a specific version of this provider, please include the following block at the beginning of your terraform config files details:
provider "ionosdeveloper" {
version = "~> 0.0.1"
}
Building The Provider
Clone repository to: $GOPATH/src/github.com/ionos-developer/terraform-provider-ionosdeveloper
$ mkdir -p $GOPATH/src/github.com/ionos-developer; cd $GOPATH/src/github.com/ionos-developer
$ git clone [email protected]:ionos-developer/terraform-provider-ionosdeveloper
Enter the provider directory and build the provider
$ cd $GOPATH/src/github.com/ionos-developer/terraform-provider-ionosdeveloper
$ make build
Using the provider
See the IonosDeveloper Provider documentation to get started using the IonosDeveloper provider.
Developing the Provider
If you wish to work on the provider, you'll first need Go installed on your machine (version 1.17+ 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.
$ make build
...
$ $GOPATH/bin/terraform-provider-ionosdeveloper
...
Testing the Provider
What Are We Testing?
The purpose of our acceptance tests is to provision resources containing all the available arguments, followed by updates on all arguments that allow this action. Beside the provisioning part, data-sources with all possible arguments are also tested.
All tests are integrated into github actions that run daily and are also run manually before any release.
How to Run Tests Locally
In order to test the provider, you can simply run:
$ make test
In order to run the full suite of Acceptance tests, run:
$ make testacc TAGS=all
Test Tags
Tests can also be run for a batch of resources using tags.
Example of running dns tests:
$ make testacc TAGS=dns
See more details about test tags
Build tags are named as follows:
dns
- all dns tests