Fix lifecycle policy to include archival policy.
This commit is contained in:
parent
8ea817da8f
commit
4ab0759e2d
4 changed files with 22 additions and 2 deletions
|
@ -3,6 +3,9 @@ resource "aws_efs_file_system" "volume" {
|
||||||
lifecycle_policy {
|
lifecycle_policy {
|
||||||
transition_to_ia = var.ia_lifecycle_policy
|
transition_to_ia = var.ia_lifecycle_policy
|
||||||
}
|
}
|
||||||
|
lifecycle_policy {
|
||||||
|
transition_to_archive = var.archive_lifecycle_policy
|
||||||
|
}
|
||||||
tags = local.efs_tags
|
tags = local.efs_tags
|
||||||
encrypted = true
|
encrypted = true
|
||||||
throughput_mode = "elastic"
|
throughput_mode = "elastic"
|
||||||
|
|
|
@ -43,7 +43,15 @@ variable "ia_lifecycle_policy" {
|
||||||
condition = can(regex("AFTER_(1|7|14|30|60|90|180|270|365)_DAY[S]?", var.ia_lifecycle_policy))
|
condition = can(regex("AFTER_(1|7|14|30|60|90|180|270|365)_DAY[S]?", var.ia_lifecycle_policy))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
variable "archive_lifecycle_policy" {
|
||||||
|
default = "AFTER_60_DAYS"
|
||||||
|
description = "The lifecycle policy for transitioning to Archive storage"
|
||||||
|
type = string
|
||||||
|
validation {
|
||||||
|
error_message = "Must be one of AFTER_7_DAYS, AFTER_14_DAYS, AFTER_30_DAYS, AFTER_60_DAYS, AFTER_90_DAYS, AFTER_180_DAYS, AFTER_270_DAYS, AFTER_365_DAYS."
|
||||||
|
condition = can(regex("AFTER_(7|14|30|60|90|180|270|365)_DAY[S]?", var.archive_lifecycle_policy))
|
||||||
|
}
|
||||||
|
}
|
||||||
variable "subnet_ids" {
|
variable "subnet_ids" {
|
||||||
type = list(string)
|
type = list(string)
|
||||||
description = "The subnet IDs in which the EFS file system will be available."
|
description = "The subnet IDs in which the EFS file system will be available."
|
||||||
|
|
|
@ -4,12 +4,12 @@ module "efs_file_system" {
|
||||||
users = local.users
|
users = local.users
|
||||||
tags = merge(var.tags, { Name = local.display_name_ascii }, coalesce(var.application.application_tag, {}))
|
tags = merge(var.tags, { Name = local.display_name_ascii }, coalesce(var.application.application_tag, {}))
|
||||||
ia_lifecycle_policy = var.ia_lifecycle_policy
|
ia_lifecycle_policy = var.ia_lifecycle_policy
|
||||||
|
archive_lifecycle_policy = var.archive_lifecycle_policy
|
||||||
application = var.application
|
application = var.application
|
||||||
origin_security_group_id = var.origin_security_group_id
|
origin_security_group_id = var.origin_security_group_id
|
||||||
vpc_id = data.aws_vpc.vpc.id
|
vpc_id = data.aws_vpc.vpc.id
|
||||||
subnet_ids = var.subnet_ids
|
subnet_ids = var.subnet_ids
|
||||||
}
|
}
|
||||||
|
|
||||||
data "aws_vpc" "vpc" {
|
data "aws_vpc" "vpc" {
|
||||||
id = var.vpc_id
|
id = var.vpc_id
|
||||||
lifecycle {
|
lifecycle {
|
||||||
|
|
|
@ -30,6 +30,15 @@ variable "ia_lifecycle_policy" {
|
||||||
condition = can(regex("AFTER_(1|7|14|30|60|90|180|270|365)_DAY[S]?", var.ia_lifecycle_policy))
|
condition = can(regex("AFTER_(1|7|14|30|60|90|180|270|365)_DAY[S]?", var.ia_lifecycle_policy))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
variable "archive_lifecycle_policy" {
|
||||||
|
default = "AFTER_60_DAYS"
|
||||||
|
description = "The lifecycle policy for transitioning to Archive storage"
|
||||||
|
type = string
|
||||||
|
validation {
|
||||||
|
error_message = "Must be one of AFTER_7_DAYS, AFTER_14_DAYS, AFTER_30_DAYS, AFTER_60_DAYS, AFTER_90_DAYS, AFTER_180_DAYS, AFTER_270_DAYS, AFTER_365_DAYS."
|
||||||
|
condition = can(regex("AFTER_(7|14|30|60|90|180|270|365)_DAY[S]?", var.archive_lifecycle_policy))
|
||||||
|
}
|
||||||
|
}
|
||||||
variable "origin_security_group_id" {
|
variable "origin_security_group_id" {
|
||||||
description = "The security group ID to allow NFS traffic from"
|
description = "The security group ID to allow NFS traffic from"
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue