# Auto-generated by SketchTF
# VPC Module
module "vpc" {
source = "./modules/vpc"
vpc_cidr = var.vpc_cidr
availability_zones = var.availability_zones
public_subnet_cidrs = var.public_subnet_cidrs
private_subnet_cidrs = var.private_subnet_cidrs
tags = local.common_tags
}
# EC2 Module
module "web_servers" {
source = "./modules/ec2"
instance_count = var.web_server_count
instance_type = var.instance_type
subnet_ids = module.vpc.private_subnet_ids
security_group_id = module.security.web_sg_id
tags = local.common_tags
}
# VPC Configuration
variable "vpc_cidr" {
description = "CIDR block for VPC"
type = string
default = "10.0.0.0/16"
}
variable "availability_zones" {
description = "List of availability zones"
type = list(string)
default = ["us-west-2a", "us-west-2b"]
}
# EC2 Configuration
variable "instance_type" {
description = "EC2 instance type"
type = string
default = "t3.micro"
}
# VPC Outputs
output "vpc_id" {
description = "ID of the VPC"
value = module.vpc.vpc_id
}
output "public_subnet_ids" {
description = "List of public subnet IDs"
value = module.vpc.public_subnet_ids
}
# Load Balancer Output
output "load_balancer_dns" {
description = "DNS name of the load balancer"
value = module.load_balancer.dns_name
}