Skip to content

Instantly share code, notes, and snippets.

@greyhoundforty
Created December 2, 2015 20:39
Show Gist options
  • Save greyhoundforty/77490d55149b60071345 to your computer and use it in GitHub Desktop.
Save greyhoundforty/77490d55149b60071345 to your computer and use it in GitHub Desktop.
SoftLayer Terraform example
variable "sl_user" {}
variable "sl_key" {}
variable "dnsimple_email" {}
variable "dnsimple_token" {}
provider "softlayer" {
username = "${var.sl_user}"
api_key = "${var.sl_key}"
}
resource "softlayer_virtualserver" "web1" {
name = "web1"
domain = "tinybot.io"
ssh_keys = ["429261"]
image_type = "os_code"
image = "UBUNTU_LATEST_64"
region = "hou02"
public_network_speed = 100
cpu = 2
ram = 2048
}
resource "softlayer_virtualserver" "web2" {
name = "web2"
domain = "tinybot.io"
ssh_keys = ["429261"]
image_type = "os_code"
image = "UBUNTU_LATEST_64"
region = "hou02"
public_network_speed = 100
cpu = 2
ram = 2048
}
output "web1_ip" {
value = "${softlayer_virtualserver.web1.ipv4_address}"
}
output "web2_ip" {
value = "${softlayer_virtualserver.web2.ipv4_address}"
}
# Configure the DNSimple provider
provider "dnsimple" {
token = "${var.dnsimple_token}"
email = "${var.dnsimple_email}"
}
resource "dnsimple_record" "web1" {
domain = "tinybot.io"
name = "web1"
value = "${softlayer_virtualserver.web1.ipv4_address}"
type = "A"
}
resource "dnsimple_record" "web2" {
domain = "tinybot.io"
name = "web2"
value = "${softlayer_virtualserver.web2.ipv4_address}"
type = "A"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment