You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Terraform module to create a server environment in AWS. It provisions networking resources, optional backups and EC2 instances (on‑demand and spot) with DNS records.
Features
Creates private and public subnets in every availability zone of the current region
Associates subnets with provided route tables
Optional security group allowing traffic between all instances in the environment
Deploys on‑demand and spot instances using the frgrisk/ec2-instance and frgrisk/ec2-spot modules
Creates forward and reverse Route53 records for all instances
Supports optional AWS Backup plans
Additional encrypted volumes can be attached to instances
Requirements
Name
Version
terraform
>= 1.0
aws
~> 5.0
Usage
module"environment" {
source="github.com/FRG/terraform-aws-environment"tag_environment="prod"vpc_id=aws_vpc.main.idenvironment_cidr="10.0.0.0/16"route53_zone_name="example.com"route53_zone_id=data.aws_route53_zone.primary.zone_idkey_name="my-keypair"public_route_table_id=aws_route_table.public.idprivate_route_table_id=aws_route_table.private.idon_demand_requests={
server1 = {
ami ="ami-abc123"
type ="t3.micro"
security_group_ids = [aws_security_group.common.id]
}
}
}
Inputs
Name
Description
Type
Default
spot_requests
Map of spot requests to spot instance variables
map(object(...))
{}
on_demand_requests
Map of on-demand requests to on-demand instance variables