Skip to content

Commit 08623dd

Browse files
committed
added default_tags variable
1 parent c1e35f9 commit 08623dd

File tree

3 files changed

+26
-5
lines changed

3 files changed

+26
-5
lines changed

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ module "ami_scheduled_backup" {
1414
backup_tag = var.backup_tag
1515
backup_retention = var.backup_retention
1616
schedule_expression = var.cron_expressions
17+
default_tags = var.default_tags
1718
}
1819
```
1920

@@ -31,6 +32,10 @@ module "ami_scheduled_backup" {
3132
backup_tag = "Backup-AZ-A"
3233
backup_retention = 7 # Keep seven days of backs (AMIs & Snapshots)
3334
schedule_expression = "cron(0 20 * * ? *)" # Backup at 8:00pm UTC Daily
35+
36+
default_tags = {
37+
Owner = "Cloud Engineering"
38+
}
3439
}
3540
```
3641

@@ -45,3 +50,4 @@ module "ami_scheduled_backup" {
4550
|`backup_tag`|_Optional_, Specify the tag that will be assigned to EC2 instances that are to be backed up (defaults to _Backup_). **Note:** The Tag value **must** be set to **yes** in order for the backup to be created.|
4651
|`backup_retention`|_Optional_, Specify the number of days to keep the AMI and Snapshots (Defaults to 30).|
4752
|`schedule_expression`|_Required_, Scheduling expression for triggering the Lambda Function using CloudWatch events. For example, cron(0 20 * * ? *) or rate(5 minutes).|
53+
|`default_tags`|_Optional_, default tags to be applied to all resources.|

main.tf

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ resource "aws_iam_role" "default" {
2020
]
2121
}
2222
EOF
23+
24+
tags = merge({
25+
Name = "${var.name}-${var.region}"
26+
}, var.default_tags)
2327
}
2428

2529
resource "aws_iam_policy_attachment" "default" {
@@ -71,10 +75,10 @@ resource "aws_cloudwatch_log_group" "default" {
7175
name = "/aws/lambda/${aws_lambda_function.default.function_name}"
7276
retention_in_days = 14
7377

74-
tags = {
78+
tags = merge({
7579
Name = var.name
7680
Environment = var.environment
77-
}
81+
}, var.default_tags)
7882
}
7983

8084
resource "aws_lambda_function" "default" {
@@ -95,11 +99,11 @@ resource "aws_lambda_function" "default" {
9599
}
96100
}
97101

98-
tags = {
102+
tags = merge({
99103
Name = var.name
100104
Type = "Lambda Function"
101105
Environment = var.environment
102-
}
106+
}, var.default_tags)
103107
}
104108

105109
resource "aws_lambda_permission" "default" {
@@ -114,6 +118,11 @@ resource "aws_cloudwatch_event_rule" "default" {
114118
name = "${var.name}-${var.region}-trigger"
115119
description = "Triggers AMI Backup of EC2 Instances"
116120
schedule_expression = var.schedule_expression
121+
122+
tags = merge({
123+
Name = "${var.name}-${var.region}-trigger"
124+
Environment = var.environment
125+
}, var.default_tags)
117126
}
118127

119128
resource "aws_cloudwatch_event_target" "default" {

variables.tf

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,10 @@ variable "backup_retention" {
2929

3030
variable "schedule_expression" {
3131
description = "Scheduling expression for triggering the Lambda Function using CloudWatch events. For example, cron(0 20 * * ? *) or rate(5 minutes)."
32-
}
32+
}
33+
34+
variable "default_tags" {
35+
description = "Optional default tags to be applied to all resources"
36+
type = map(string)
37+
default = {}
38+
}

0 commit comments

Comments
 (0)