variable "name" { description = "Used to name various infrastructure components" default = "nomad-e2e" } variable "region" { description = "The AWS region to deploy to." default = "us-east-1" } variable "indexed" { description = "Different configurations per client/server" default = true } variable "instance_type" { description = "The AWS instance type to use for both clients and servers." default = "t2.medium" } variable "server_count" { description = "The number of servers to provision." default = "3" } variable "client_count" { description = "The number of clients to provision." default = "4" } variable "retry_join" { description = "Used by Consul to automatically form a cluster." default = "provider=aws tag_key=ConsulAutoJoin tag_value=auto-join" } variable "nomad_sha" { description = "The sha of Nomad to run" } provider "aws" { region = "${var.region}" } resource "random_pet" "e2e" {} locals { random_name = "${var.name}-${random_pet.e2e.id}" } # Generates keys to use for provisioning and access module "keys" { name = "${local.random_name}" path = "${path.root}/keys" source = "mitchellh/dynamic-keys/aws" version = "v1.0.0" } data "aws_ami" "main" { most_recent = true owners = ["self"] filter { name = "name" values = ["nomad-e2e-*"] } filter { name = "tag:OS" values = ["Ubuntu"] } } data "aws_caller_identity" "current" {} output "servers" { value = "${aws_instance.server.*.public_ip}" } output "clients" { value = "${aws_instance.client.*.public_ip}" } output "message" { value = <