Terraform Provider for Brightbox Cloud
# For example, restrict brightbox version to 3.x.x
terraform {
required_providers {
brightbox = {
source = "brightbox/brightbox"
version = "~> 3.0"
}
}
}
Clone repository to: $GOPATH/src/github.com/brightbox/terraform-provider-brightbox
$ mkdir -p $GOPATH/src/github.com/brightbox; cd $GOPATH/src/github.com/brightbox
$ git clone git@github.com:brightbox/terraform-provider-brightbox
Enter the provider directory and build the provider
$ cd $GOPATH/src/github.com/brightbox/terraform-provider-brightbox
$ make build
This version supports managing:
- Cloud Servers
- Load Balancers
- Firewall Policies
- Cloud SQL Instances
- Cloud IPs
- Orbit Cloud Storage containers
- Volumes
The announcement blog post gives a good overview:
https://www.brightbox.com/blog/2016/05/13/terraforming-brightbox-cloud/
And the getting started guide goes into more detail on how to use it
https://www.brightbox.com/docs/guides/terraform/getting-started/
If you wish to work on the provider, you'll first need Go installed on your machine (version 1.13+ 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 bin
...
$ $GOPATH/bin/terraform-provider-brightbox
...
In order to test the provider, you can simply run make test
.
$ make test
In order to run the full suite of Acceptance tests, set the following environment variables
- BRIGHTBOX_CLIENT. The Client Id for an account
- BRIGHTBOX_CLIENT_SECRET. The client secret for the Id.
- BRIGHTBOX_API_URL. The Brightbox API endpoint you wish to talk to.
- BRIGHTBOX_ORBIT_URL. The Brightbox Orbit endpoint you wish to talk to.
Then run make testacc
.
$ make testacc
To run individual sets of tests add a TESTARGS
argument
$ make testacc TESTARGS="-run TestAccBrightboxFirewallPolicy"