go-ethereum/cicd/devnet/terraform/main.tf

78 lines
No EOL
1.5 KiB
HCL

terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 4.16"
}
}
required_version = ">= 1.2.0"
}
provider "aws" {
region = "us-east-1"
}
# This bucket had to be created before you can run the terraform init
resource "aws_s3_bucket" "terraform_s3_bucket" {
bucket = "terraform-devnet-bucket"
versioning {
enabled = true
}
}
# Bucket need to be created first. If first time run terraform init, need to comment out the below section
terraform {
backend "s3" {
bucket = "terraform-devnet-bucket"
key = "tf/terraform.tfstate"
region = "us-east-1"
encrypt = true
}
}
resource "aws_vpc" "devnet_vpc" {
cidr_block = "10.0.0.0/16"
instance_tenancy = "default"
tags = {
Name = "TfDevnetVpc"
}
}
resource "aws_subnet" "devnet_subnet" {
vpc_id = aws_vpc.devnet_vpc.id
cidr_block = "10.0.0.0/20"
map_public_ip_on_launch = true
availability_zone = "us-east-1a"
tags = {
Name = "TfDevnetVpcSubnet"
}
}
resource "aws_internet_gateway" "devnet_gatewat" {
vpc_id = aws_vpc.devnet_vpc.id
tags = {
Name = "TfDevnetGateway"
}
}
resource "aws_route_table" "devnet_route_table" {
vpc_id = aws_vpc.devnet_vpc.id
route {
cidr_block = "0.0.0.0/0"
gateway_id = aws_internet_gateway.devnet_gatewat.id
}
tags = {
Name = "TfDevnetVpcRoutingTable"
}
}
resource "aws_route_table_association" "devnet_route_table_association" {
subnet_id = aws_subnet.devnet_subnet.id
route_table_id = aws_route_table.devnet_route_table.id
}