data "aws_availability_zones" "available" {} locals { vpc_cidr = "10.3.0.0/16" public_subnets_cidrs = [ "10.3.0.0/24", "10.3.1.0/24"] } module "vpc" { source = "git::ssh://git@github.com/fpco/terraform-aws-foundation//modules/vpc-scenario-1" name_prefix = "test1" region = "us-west-2" cidr = local.vpc_cidr public_subnet_cidrs = local.public_subnets_cidrs azs = slice(data.aws_availability_zones.available.names,0,2) extra_tags = {Autor = "Jose"} } module "asg-sg" { source = "git::ssh://git@github.com/fpco/terraform-aws-foundation//modules/security-group-base" name = "jose-asg-sg" description = "SG for ASG" vpc_id = module.vpc.vpc_id } module "ami" { source = "git::ssh://git@github.com/fpco/terraform-aws-foundation//modules/ami-centos" release = 7 } resource "aws_key_pair" "main" { key_name = "test1-key" public_key = file("../id_rsa.pub") } module "asg" { source = "git::ssh://git@github.com/fpco/terraform-aws-foundation//modules/asg?ref=asg-changes-for-count" name_prefix = "jose" key_name = "test1-key" ami = module.ami.id max_nodes = 1 min_nodes = 1 public_ip = false user_data = "echo hola" subnet_ids = module.vpc.public_subnet_ids security_group_ids = [module.asg-sg.id] alb_target_group_arns = [module.forwarder.target_group_arn] } module "alb" { source = "git::ssh://git@github.com/fpco/terraform-aws-foundation//modules/alb" vpc_id = module.vpc.vpc_id name_prefix = "test1-alb" subnet_ids = module.vpc.public_subnet_ids internal = false } module "forwarder" { source = "git::ssh://git@github.com/fpco/terraform-aws-foundation//modules/alb-default-forward" lb_arn = module.alb.lb_arn lb_port = 80 name_prefix = "test1-https" protocol = "HTTP" service_port = 80 vpc_id = module.vpc.vpc_id }