https://github.com/brightbox/terraform-provider-brightbox
Terraform Brightbox Cloud provider
https://github.com/brightbox/terraform-provider-brightbox
brightbox brightbox-cloud terraform terraform-provider
Last synced: 8 months ago
JSON representation
Terraform Brightbox Cloud provider
- Host: GitHub
- URL: https://github.com/brightbox/terraform-provider-brightbox
- Owner: brightbox
- License: mpl-2.0
- Created: 2018-07-31T23:32:52.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2025-01-24T06:03:36.000Z (over 1 year ago)
- Last Synced: 2025-01-31T01:47:40.120Z (over 1 year ago)
- Topics: brightbox, brightbox-cloud, terraform, terraform-provider
- Language: Go
- Homepage: https://registry.terraform.io/providers/brightbox/brightbox
- Size: 10.6 MB
- Stars: 8
- Watchers: 12
- Forks: 10
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Terraform Provider for [Brightbox Cloud](https://www.brightbox.com)
=======================================
Requirements
------------
- [Terraform](https://www.terraform.io/downloads.html) >= 1.0.0
- [Go](https://golang.org/doc/install) >= 1.18
Usage
---------------------
```
# For example, restrict brightbox version to 3.x.x
terraform {
required_providers {
brightbox = {
source = "brightbox/brightbox"
version = "~> 3.0"
}
}
}
```
Building The Provider
---------------------
Clone repository to: `$GOPATH/src/github.com/brightbox/terraform-provider-brightbox`
```sh
$ 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
```sh
$ cd $GOPATH/src/github.com/brightbox/terraform-provider-brightbox
$ make build
```
Using the provider
----------------------
This version supports managing:
* [Cloud Servers](https://www.brightbox.com/cloud/servers/)
* [Load Balancers](https://www.brightbox.com/cloud/load-balancing/)
* [Firewall Policies](https://www.brightbox.com/docs/reference/firewall/)
* [Cloud SQL Instances](https://www.brightbox.com/cloud/database/)
* [Cloud IPs](https://www.brightbox.com/blog/2014/02/27/design-decisions-cloud-ip-policy/)
* [Orbit Cloud Storage](https://www.brightbox.com/cloud/storage/) containers
* [Volumes](https://www.brightbox.com/docs/guides/volumes/mounting/)
Documentation
-------------------------
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/
Developing the Provider
---------------------------
If you wish to work on the provider, you'll first need [Go](http://www.golang.org) installed on your machine (version 1.13+ is *required*). You'll also need to correctly setup a [GOPATH](http://golang.org/doc/code.html#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.
```sh
$ make bin
...
$ $GOPATH/bin/terraform-provider-brightbox
...
```
In order to test the provider, you can simply run `make test`.
```sh
$ 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"
```