Today we’re releasing an update of our provider plugin for Hashicorp’s Terraform.
Terraform is a tool to make managing your overall system infrastructure as easy as managing your individual server configuration. You map out all the different components of your systems from as many different providers as you need and represent them all in code. Terraform handles working out all the dependencies, building the components and configuring all the relationships. More details in our original announcement blog.
This update is mostly just a compatibility upgrade, now supporting Terraform v0.10, but we have added a couple of new features. The new image data source allows automatic selection of cloud server images based on various criteria. Previously you had to hard code image identifiers and our images are updated regularly, so this posed a problem. For example, you can now automatically select the most up-to-date Ubuntu Xenial image available and use it for building servers:
data "brightbox_image" "xenial" {
name = "^ubuntu-xenial.*server$"
arch = "x86_64"
official = true
most_recent = true
}
resource "brightbox_server" "myserver" {
image = "${data.brightbox_image.xenial.id}"
name = "my server"
}
Also, now our provider supports Terraform’s new ability to import existing infrastructure. The feature is a bit limited at the moment as you still need to write a configuration, but it’s a good step forward.
Plus a few minor bug fixes and improvements, including making the base64 encoding of cloud server userdata optional which allows you to use Terraform’s new cloudinit template data source more easily.
We’ve got a detailed guide on getting Terraform installed and building your first cluster on Brightbox Cloud.
Make sure you check it out, as the plugin installation process has changed from previous versions.
You can sign up for Brightbox in just a couple of minutes and get a £50 free credit to play with Terraform.