Blossom Logo Deploy your apps with Heroku-like simplicity using Blossom See Your Savings

DSL

Terraspace supports an optional Ruby DSL. It gives you access to the full power of Ruby, when HCL is not enough for your purposes.

Note: The DSL interface may change.

Examples

app/modules/instance/main.rb

resource("aws_instance", "this",
  ami: "ami-0ded0751341bcc45b", # amazonlinux2
  instance_type: "t2.micro",
)

app/modules/vpc/variables.rb

variable("cidr_block",
  default: "10.10.0.0/16",
  description: "cidr block",
)

app/modules/vpc/main.rb

resource("aws_vpc", "vpc",
  cidr_block: var.cidr_block,
)

app/modules/vpc/outputs.rb

output("vpc_arn",
  description: "VPC arn",
  value: "${aws_vpc.vpc.arn}"
)

More tools: