The HerokuX provider interacts with Heroku's undocumented APIs and Platform API variants to provide additional resources not available in the official Heroku Terraform provider.
provider "herokux" {
version = "~> 1.0.0"
}
This provider is not compatible with terraform v0.11.x
.
When contributing new resources, please make sure the new resource adheres to one of the following criteria:
- Uses an undocumented API.
- Uses a Platform API variant.
- Significantly alters the design and logic of an existing
heroku
provider resource.
Regardless of the aforementioned guideline, please feel free to submit contributions. The provider's maintainer(s) will initiate a discussion regarding resource placement if deemed necessary.
Please also view the CONTRIBUTING.md
file for the general contribution policy.
If you wish to work on the provider, you'll first need Go installed on your machine (version 1.14+ is required).
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-herokux
...
To use the dev provider with local Terraform, copy the freshly built plugin into Terraform's local plugins directory:
cp $GOPATH/bin/terraform-provider-herokux-dev ~/.terraform.d/plugins/
Set the HerokuX provider without a version constraint:
provider "herokux" {}
Then, initialize Terraform:
terraform init
Please see the TESTING guide for detailed instructions on running tests.
This project uses Go Modules for dependency management.
This example will fetch a module at the release tag and record it in your project's go.mod
and go.sum
files.
If a module does not have release tags, then module@SHA
can be used instead.