Add billing subcategories

This commit is contained in:
Radon Rosborough 2021-07-17 01:05:49 -07:00
parent 0bec96b88b
commit b0310dafed
10 changed files with 53 additions and 4 deletions

View File

@ -37,6 +37,11 @@ source "amazon-ebs" "ubuntu" {
instance_type = "t3.micro"
source_ami = "${data.amazon-ami.ubuntu.id}"
ssh_username = "ubuntu"
tags {
BillingCategory = "Riju"
BillingCategory = "Riju:AMI"
}
}
build {

View File

@ -4,7 +4,8 @@ resource "aws_acm_certificate" "riju" {
validation_method = "DNS"
tags = {
Name = "Riju server"
Name = "Riju server"
BillingSubcategory = "Riju:ACM"
}
}

View File

@ -31,6 +31,10 @@ resource "aws_lb" "server" {
security_groups = [aws_security_group.alb.id]
subnets = data.aws_subnet_ids.default.ids
idle_timeout = 3600
tags = {
BillingSubcategory = "Riju:ALB"
}
}
resource "aws_lb_target_group" "server" {

View File

@ -99,6 +99,13 @@ resource "aws_autoscaling_group" "server" {
propagate_at_launch = true,
}
],
[
{
key = "BillingSubcategory"
value = "Riju:EC2:Webserver"
propagate_at_launch = true
}
]
)
lifecycle {

View File

@ -15,7 +15,8 @@ resource "aws_backup_plan" "riju" {
}
recovery_point_tags = {
BillingCategory = "Riju"
BillingCategory = "Riju"
BillingSubcategory = "Riju:Backup:DevServer"
}
}
}

View File

@ -16,6 +16,10 @@ resource "aws_cloudwatch_metric_alarm" "server_cpu" {
dimensions = {
AutoScalingGroupName = aws_autoscaling_group.server[count.index].name
}
tags = {
BillingSubcategory = "Riju:CloudWatch:Alarm"
}
}
resource "aws_cloudwatch_metric_alarm" "server_memory" {
@ -36,6 +40,10 @@ resource "aws_cloudwatch_metric_alarm" "server_memory" {
dimensions = {
AutoScalingGroupName = aws_autoscaling_group.server[count.index].name
}
tags = {
BillingSubcategory = "Riju:CloudWatch:Alarm"
}
}
resource "aws_cloudwatch_metric_alarm" "server_data_volume_disk_space" {
@ -57,6 +65,10 @@ resource "aws_cloudwatch_metric_alarm" "server_data_volume_disk_space" {
AutoScalingGroupName = aws_autoscaling_group.server[count.index].name
path = "/mnt/riju/data"
}
tags = {
BillingSubcategory = "Riju:CloudWatch:Alarm"
}
}
resource "aws_cloudwatch_metric_alarm" "server_root_volume_disk_space" {
@ -78,6 +90,10 @@ resource "aws_cloudwatch_metric_alarm" "server_root_volume_disk_space" {
AutoScalingGroupName = aws_autoscaling_group.server[count.index].name
path = "/"
}
tags = {
BillingSubcategory = "Riju:CloudWatch:Alarm"
}
}
resource "aws_cloudwatch_dashboard" "riju" {

View File

@ -50,7 +50,8 @@ resource "aws_instance" "dev_server" {
}
tags = {
Name = "Riju dev server"
Name = "Riju dev server"
BillingSubcategory = "Riju:EC2:DevServer"
}
lifecycle {
@ -63,8 +64,10 @@ resource "aws_instance" "dev_server" {
resource "aws_eip" "dev_server" {
count = local.ssh_key_available ? 1 : 0
tags = {
Name = "Riju dev server"
Name = "Riju dev server"
BillingSubcategory = "Riju:EIP"
}
}

View File

@ -1,6 +1,10 @@
resource "aws_ecr_repository" "riju" {
name = "riju"
image_tag_mutability = "MUTABLE"
tags = {
BillingSubcategory = "Riju:ECR:Private"
}
}
resource "aws_ecrpublic_repository" "riju" {

View File

@ -1,5 +1,9 @@
resource "aws_s3_bucket" "riju" {
bucket = data.external.env.result.S3_BUCKET
tags = {
BillingSubcategory = "Riju:S3"
}
}
resource "aws_s3_bucket_public_access_block" "riju" {

View File

@ -1,3 +1,7 @@
resource "aws_sns_topic" "riju" {
name = "Riju"
tags = {
BillingSubcategory = "Riju:SNS"
}
}