31 lines
689 B
Terraform
31 lines
689 B
Terraform
data "aws_availability_zones" "available" {}
|
|
|
|
locals {
|
|
subnet_start = cidrsubnets(var.vpc-cidr,4,4)
|
|
}
|
|
|
|
module "random" {
|
|
source = "./m.random"
|
|
}
|
|
|
|
module "vpc" {
|
|
source = "terraform-aws-modules/vpc/aws"
|
|
version = "2.6.0"
|
|
|
|
name = "demo-vpc-${module.random.number}"
|
|
cidr = var.vpc-cidr
|
|
azs = data.aws_availability_zones.available.names
|
|
private_subnets = cidrsubnets(local.subnet_start[0], 4,4)
|
|
public_subnets = cidrsubnets(local.subnet_start[1], 4,4)
|
|
enable_nat_gateway = false
|
|
single_nat_gateway = true
|
|
enable_dns_hostnames = true
|
|
|
|
tags = var.default-tags
|
|
|
|
}
|
|
|
|
output "vpc_id" {
|
|
value = module.vpc.vpc_id
|
|
}
|