Merge pull request #21 from elizabeth-ikechukwu/feat/week8-auth-ui-ssm
feat: add Route53 hosted zone and DNS records for lizzycloudlab.online
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# --------------------------------------------------
|
||||
# Route53 Hosted Zone
|
||||
# --------------------------------------------------
|
||||
resource "aws_route53_zone" "main" {
|
||||
name = var.domain_name
|
||||
|
||||
tags = {
|
||||
Name = "${var.project_name}-hosted-zone"
|
||||
Project = var.project_name
|
||||
Environment = var.environment
|
||||
}
|
||||
}
|
||||
|
||||
# --------------------------------------------------
|
||||
# A Record - taskflow subdomain points to Elastic IP
|
||||
# --------------------------------------------------
|
||||
resource "aws_route53_record" "taskflow" {
|
||||
zone_id = aws_route53_zone.main.zone_id
|
||||
name = "taskflow.${var.domain_name}"
|
||||
type = "A"
|
||||
ttl = 300
|
||||
records = [aws_eip.app.public_ip]
|
||||
}
|
||||
|
||||
# --------------------------------------------------
|
||||
# A Record - root domain points to Elastic IP
|
||||
# --------------------------------------------------
|
||||
resource "aws_route53_record" "root" {
|
||||
zone_id = aws_route53_zone.main.zone_id
|
||||
name = var.domain_name
|
||||
type = "A"
|
||||
ttl = 300
|
||||
records = [aws_eip.app.public_ip]
|
||||
}
|
||||
@@ -1,34 +1,9 @@
|
||||
output "vpc_id" {
|
||||
description = "ID of the VPC"
|
||||
value = aws_vpc.main.id
|
||||
output "nameservers" {
|
||||
description = "Route53 nameservers - paste these into Hostinger DNS settings"
|
||||
value = aws_route53_zone.main.name_servers
|
||||
}
|
||||
|
||||
output "public_subnet_id" {
|
||||
description = "ID of the public subnet"
|
||||
value = aws_subnet.public.id
|
||||
}
|
||||
|
||||
output "private_subnet_id" {
|
||||
description = "ID of the private subnet"
|
||||
value = aws_subnet.private[0].id
|
||||
}
|
||||
|
||||
output "ec2_instance_id" {
|
||||
description = "EC2 instance ID - use this to connect via SSM"
|
||||
value = aws_instance.app.id
|
||||
}
|
||||
|
||||
output "ec2_public_ip" {
|
||||
description = "Public IP of the EC2 instance"
|
||||
value = aws_instance.app.public_ip
|
||||
}
|
||||
|
||||
output "ec2_public_dns" {
|
||||
description = "Public DNS of the EC2 instance"
|
||||
value = aws_instance.app.public_dns
|
||||
}
|
||||
|
||||
output "elastic_ip" {
|
||||
description = "Permanent Elastic IP - point your domain DNS A record to this"
|
||||
value = aws_eip.app.public_ip
|
||||
output "app_url" {
|
||||
description = "TaskFlow app URL"
|
||||
value = "http://taskflow.${var.domain_name}"
|
||||
}
|
||||
@@ -67,3 +67,9 @@ variable "jwt_secret" {
|
||||
type = string
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
variable "domain_name" {
|
||||
description = "Root domain name for Route53 hosted zone"
|
||||
type = string
|
||||
default = "lizzycloudlab.online"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user