Website: https://www.terraform.io
Mailing list: Google Groups
This provider plugin is maintained by the Terraform team at gridscale.
Clone repository to: $GOPATH/src/github.com/gridscale/terraform-provider-gridscale
$ mkdir -p $GOPATH/src/github.com/gridscale; cd $GOPATH/src/github.com/gridscale
$ git clone git@github.com:gridscale/terraform-provider-gridscale.gitEnter the provider directory and build the provider
$ cd $GOPATH/src/github.com/gridscale/terraform-provider-gridscale
$ make buildSee the gridscale provider documentation to get started on using the gridscale provider.
Alternatively, this documentation can also be found within this repository. Check out website/docs/index.html.markdown to get started. Documentation on how to create resources like servers, storages and networks can be found in website/docs/r. Documentation on how to add resources like storages, networks and IP addresses to servers, check out the documentation on datasources found in website/docs/d.
| Feature | Availability |
|---|---|
| Server (CRUD) | ✔️ |
| Server dependency (link/unlink) | ✔️ |
| Load balancer (CRUD) | ✔️ |
| PaaS (CRUD) | ✔️ |
| Storage (CRUD) | ✔️ |
| Object storage (CRUD) | ✔️ |
| IP address (CRUD) | ✔️ |
| Network (CRUD) | ✔️ |
| Security zone (PaaS) (CRUD) | ✔️ |
| Firewall (CRUD) | ✔️ |
| SSH key (CRUD) | ✔️ |
| ISO Image (CRUD) | ✔️ |
| Snapshot (CRUD) | ✔️ |
| Snapshot rollback | ✔️ |
| Snapshot to S3 | ✔️ |
| Snapshot schedule (CRUD) | ✔️ |
| Template (CRUD) | ✔️ |
| Multiple project support (Workaround) | ❌ |
| Marketplace | ❌ |
If you wish to work on the provider, you'll first need Go installed on your machine (version 1.8+ 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-gridscale
…In order to test the provider, you can simply run make test.
$ make testIn order to run the full suite of Acceptance tests, run make testacc.
Note: Acceptance tests create real resources, and often cost money to run.
$ make testaccIn order to run a specific Acceptance test.
$ make testacc TEST=./gridscale/ TESTARGS='-run=TestAccResourceGridscaleLoadBalancerBasic'The following issues are known to us:
- Changing the name attribute in a template datasource will not trigger storages using this template to be recreated.
- If a storage has snapshots, terraform can not delete it.
- The autorecovery value of a server can't be changed with Terraform.
