diff --git a/examples/lustre/README.md b/examples/lustre/README.md
index 0bbe68b..1582c79 100644
--- a/examples/lustre/README.md
+++ b/examples/lustre/README.md
@@ -23,13 +23,13 @@ Note that this example may create resources which will incur monetary charges on
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
-| [aws](#requirement\_aws) | >= 5.53 |
+| [aws](#requirement\_aws) | >= 5.82 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.53 |
+| [aws](#provider\_aws) | >= 5.82 |
## Modules
diff --git a/examples/lustre/versions.tf b/examples/lustre/versions.tf
index cbea89e..be17c1b 100644
--- a/examples/lustre/versions.tf
+++ b/examples/lustre/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/examples/ontap/README.md b/examples/ontap/README.md
index 8635e38..be2cdfd 100644
--- a/examples/ontap/README.md
+++ b/examples/ontap/README.md
@@ -22,13 +22,13 @@ Note that this example may create resources which will incur monetary charges on
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
-| [aws](#requirement\_aws) | >= 5.53 |
+| [aws](#requirement\_aws) | >= 5.82 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.53 |
+| [aws](#provider\_aws) | >= 5.82 |
## Modules
diff --git a/examples/ontap/versions.tf b/examples/ontap/versions.tf
index cbea89e..be17c1b 100644
--- a/examples/ontap/versions.tf
+++ b/examples/ontap/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/examples/openzfs/README.md b/examples/openzfs/README.md
index 83ad369..3105c18 100644
--- a/examples/openzfs/README.md
+++ b/examples/openzfs/README.md
@@ -22,13 +22,13 @@ Note that this example may create resources which will incur monetary charges on
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
-| [aws](#requirement\_aws) | >= 5.53 |
+| [aws](#requirement\_aws) | >= 5.82 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.53 |
+| [aws](#provider\_aws) | >= 5.82 |
## Modules
diff --git a/examples/openzfs/versions.tf b/examples/openzfs/versions.tf
index cbea89e..be17c1b 100644
--- a/examples/openzfs/versions.tf
+++ b/examples/openzfs/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/examples/windows/README.md b/examples/windows/README.md
index 2a9e488..4dbdafb 100644
--- a/examples/windows/README.md
+++ b/examples/windows/README.md
@@ -22,13 +22,13 @@ Note that this example may create resources which will incur monetary charges on
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
-| [aws](#requirement\_aws) | >= 5.53 |
+| [aws](#requirement\_aws) | >= 5.82 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.53 |
+| [aws](#provider\_aws) | >= 5.82 |
## Modules
diff --git a/examples/windows/versions.tf b/examples/windows/versions.tf
index cbea89e..be17c1b 100644
--- a/examples/windows/versions.tf
+++ b/examples/windows/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/modules/lustre/README.md b/modules/lustre/README.md
index 9058cb7..45bf7f8 100644
--- a/modules/lustre/README.md
+++ b/modules/lustre/README.md
@@ -171,13 +171,13 @@ Examples codified under the [`examples`](https://github.com/terraform-aws-module
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
-| [aws](#requirement\_aws) | >= 5.53 |
+| [aws](#requirement\_aws) | >= 5.82 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.53 |
+| [aws](#provider\_aws) | >= 5.82 |
## Modules
@@ -209,6 +209,7 @@ No modules.
| [cloudwatch\_log\_group\_kms\_key\_id](#input\_cloudwatch\_log\_group\_kms\_key\_id) | If a KMS Key ARN is set, this key will be used to encrypt the corresponding log group. Please be sure that the KMS Key has an appropriate key policy (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html) | `string` | `null` | no |
| [cloudwatch\_log\_group\_name](#input\_cloudwatch\_log\_group\_name) | Name of the CloudWatch Log Group to send logs to. Note: `/aws/fsx/` is pre-pended to the name provided as this is a requirement by FSx | `string` | `null` | no |
| [cloudwatch\_log\_group\_retention\_in\_days](#input\_cloudwatch\_log\_group\_retention\_in\_days) | Number of days to retain log events. Default retention - 90 days | `number` | `90` | no |
+| [cloudwatch\_log\_group\_skip\_destroy](#input\_cloudwatch\_log\_group\_skip\_destroy) | Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the Terraform state | `bool` | `null` | no |
| [cloudwatch\_log\_group\_tags](#input\_cloudwatch\_log\_group\_tags) | A map of additional tags to add to the cloudwatch log group created | `map(string)` | `{}` | no |
| [cloudwatch\_log\_group\_use\_name\_prefix](#input\_cloudwatch\_log\_group\_use\_name\_prefix) | Determines whether the log group name should be prefixed with the `cloudwatch_log_group_name` provided | `bool` | `true` | no |
| [copy\_tags\_to\_backups](#input\_copy\_tags\_to\_backups) | A boolean flag indicating whether tags for the file system should be copied to backups | `bool` | `false` | no |
@@ -223,6 +224,7 @@ No modules.
| [data\_repository\_associations\_timeouts](#input\_data\_repository\_associations\_timeouts) | Create, update, and delete timeout configurations for the data repository associations | `map(string)` | `{}` | no |
| [deployment\_type](#input\_deployment\_type) | The filesystem deployment type. One of: `SCRATCH_1`, `SCRATCH_2`, `PERSISTENT_1`, `PERSISTENT_2` | `string` | `null` | no |
| [drive\_cache\_type](#input\_drive\_cache\_type) | The type of drive cache used by `PERSISTENT_1` filesystems that are provisioned with `HDD` `storage_type` | `string` | `null` | no |
+| [efa\_enabled](#input\_efa\_enabled) | Adds support for Elastic Fabric Adapter (EFA) and GPUDirect Storage (GDS) to Lustre. This must be set at creation. If set this cannot be changed and this prevents changes to per\_unit\_storage\_throughput. This is only supported when deployment\_type is set to PERSISTENT\_2, metadata\_configuration is used, and an EFA-enabled security group is attached | `bool` | `null` | no |
| [file\_cache\_copy\_tags\_to\_data\_repository\_associations](#input\_file\_cache\_copy\_tags\_to\_data\_repository\_associations) | A boolean flag indicating whether tags for the cache should be copied to data repository associations. This value defaults to `false` | `bool` | `null` | no |
| [file\_cache\_kms\_key\_id](#input\_file\_cache\_kms\_key\_id) | Specifies the ID of the AWS Key Management Service (AWS KMS) key to use for encrypting data on an Amazon File Cache | `string` | `null` | no |
| [file\_cache\_lustre\_configuration](#input\_file\_cache\_lustre\_configuration) | The configuration object for Amazon FSx for Lustre | `any` | `{}` | no |
diff --git a/modules/lustre/main.tf b/modules/lustre/main.tf
index b71cd57..18675be 100644
--- a/modules/lustre/main.tf
+++ b/modules/lustre/main.tf
@@ -18,6 +18,7 @@ resource "aws_fsx_lustre_file_system" "this" {
data_compression_type = var.data_compression_type
deployment_type = var.deployment_type
drive_cache_type = local.is_persistent_1 ? var.drive_cache_type : null
+ efa_enabled = var.efa_enabled
# export_path - see data_repository_associations
file_system_type_version = var.file_system_type_version
# import_path - see data_repository_associations
@@ -87,6 +88,7 @@ resource "aws_cloudwatch_log_group" "this" {
retention_in_days = var.cloudwatch_log_group_retention_in_days
kms_key_id = var.cloudwatch_log_group_kms_key_id
log_group_class = var.cloudwatch_log_group_class
+ skip_destroy = var.cloudwatch_log_group_skip_destroy
tags = merge(
var.tags,
diff --git a/modules/lustre/variables.tf b/modules/lustre/variables.tf
index 2332b4e..78c0594 100644
--- a/modules/lustre/variables.tf
+++ b/modules/lustre/variables.tf
@@ -56,6 +56,12 @@ variable "drive_cache_type" {
default = null
}
+variable "efa_enabled" {
+ description = "Adds support for Elastic Fabric Adapter (EFA) and GPUDirect Storage (GDS) to Lustre. This must be set at creation. If set this cannot be changed and this prevents changes to per_unit_storage_throughput. This is only supported when deployment_type is set to PERSISTENT_2, metadata_configuration is used, and an EFA-enabled security group is attached"
+ type = bool
+ default = null
+}
+
variable "file_system_type_version" {
description = "Sets the Lustre version for the file system that you're creating"
type = string
@@ -175,6 +181,12 @@ variable "cloudwatch_log_group_class" {
default = null
}
+variable "cloudwatch_log_group_skip_destroy" {
+ description = "Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the Terraform state"
+ type = bool
+ default = null
+}
+
variable "cloudwatch_log_group_tags" {
description = "A map of additional tags to add to the cloudwatch log group created"
type = map(string)
diff --git a/modules/lustre/versions.tf b/modules/lustre/versions.tf
index cbea89e..be17c1b 100644
--- a/modules/lustre/versions.tf
+++ b/modules/lustre/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/modules/ontap/README.md b/modules/ontap/README.md
index 5349bfd..02d4aa8 100644
--- a/modules/ontap/README.md
+++ b/modules/ontap/README.md
@@ -166,13 +166,13 @@ Examples codified under the [`examples`](https://github.com/terraform-aws-module
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
-| [aws](#requirement\_aws) | >= 5.53 |
+| [aws](#requirement\_aws) | >= 5.82 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.53 |
+| [aws](#provider\_aws) | >= 5.82 |
## Modules
diff --git a/modules/ontap/versions.tf b/modules/ontap/versions.tf
index cbea89e..be17c1b 100644
--- a/modules/ontap/versions.tf
+++ b/modules/ontap/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/modules/openzfs/README.md b/modules/openzfs/README.md
index 4e69a12..4e96c12 100644
--- a/modules/openzfs/README.md
+++ b/modules/openzfs/README.md
@@ -146,13 +146,13 @@ Examples codified under the [`examples`](https://github.com/terraform-aws-module
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
-| [aws](#requirement\_aws) | >= 5.53 |
+| [aws](#requirement\_aws) | >= 5.82 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.53 |
+| [aws](#provider\_aws) | >= 5.82 |
## Modules
diff --git a/modules/openzfs/versions.tf b/modules/openzfs/versions.tf
index cbea89e..be17c1b 100644
--- a/modules/openzfs/versions.tf
+++ b/modules/openzfs/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/modules/windows/README.md b/modules/windows/README.md
index 1533296..cc523aa 100644
--- a/modules/windows/README.md
+++ b/modules/windows/README.md
@@ -73,13 +73,13 @@ Examples codified under the [`examples`](https://github.com/terraform-aws-module
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
-| [aws](#requirement\_aws) | >= 5.53 |
+| [aws](#requirement\_aws) | >= 5.82 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 5.53 |
+| [aws](#provider\_aws) | >= 5.82 |
## Modules
@@ -109,6 +109,7 @@ No modules.
| [cloudwatch\_log\_group\_kms\_key\_id](#input\_cloudwatch\_log\_group\_kms\_key\_id) | If a KMS Key ARN is set, this key will be used to encrypt the corresponding log group. Please be sure that the KMS Key has an appropriate key policy (https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html) | `string` | `null` | no |
| [cloudwatch\_log\_group\_name](#input\_cloudwatch\_log\_group\_name) | Name of the CloudWatch Log Group to send logs to. Note: `/aws/fsx/` is pre-pended to the name provided as this is a requirement by FSx | `string` | `null` | no |
| [cloudwatch\_log\_group\_retention\_in\_days](#input\_cloudwatch\_log\_group\_retention\_in\_days) | Number of days to retain log events. Default retention - 90 days | `number` | `90` | no |
+| [cloudwatch\_log\_group\_skip\_destroy](#input\_cloudwatch\_log\_group\_skip\_destroy) | Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the Terraform state | `bool` | `null` | no |
| [cloudwatch\_log\_group\_tags](#input\_cloudwatch\_log\_group\_tags) | A map of additional tags to add to the cloudwatch log group created | `map(string)` | `{}` | no |
| [cloudwatch\_log\_group\_use\_name\_prefix](#input\_cloudwatch\_log\_group\_use\_name\_prefix) | Determines whether the log group name should be prefixed with the `cloudwatch_log_group_name` provided | `bool` | `true` | no |
| [copy\_tags\_to\_backups](#input\_copy\_tags\_to\_backups) | A boolean flag indicating whether tags on the file system should be copied to backups. Defaults to `false` | `bool` | `null` | no |
diff --git a/modules/windows/main.tf b/modules/windows/main.tf
index 9cebc9c..493134d 100644
--- a/modules/windows/main.tf
+++ b/modules/windows/main.tf
@@ -86,6 +86,7 @@ resource "aws_cloudwatch_log_group" "this" {
retention_in_days = var.cloudwatch_log_group_retention_in_days
kms_key_id = var.cloudwatch_log_group_kms_key_id
log_group_class = var.cloudwatch_log_group_class
+ skip_destroy = var.cloudwatch_log_group_skip_destroy
tags = merge(
var.tags,
diff --git a/modules/windows/variables.tf b/modules/windows/variables.tf
index 86890fd..417098b 100644
--- a/modules/windows/variables.tf
+++ b/modules/windows/variables.tf
@@ -183,6 +183,12 @@ variable "cloudwatch_log_group_class" {
default = null
}
+variable "cloudwatch_log_group_skip_destroy" {
+ description = "Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the Terraform state"
+ type = bool
+ default = null
+}
+
variable "cloudwatch_log_group_tags" {
description = "A map of additional tags to add to the cloudwatch log group created"
type = map(string)
diff --git a/modules/windows/versions.tf b/modules/windows/versions.tf
index cbea89e..be17c1b 100644
--- a/modules/windows/versions.tf
+++ b/modules/windows/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/wrappers/lustre/main.tf b/wrappers/lustre/main.tf
index 594b7f4..23b47be 100644
--- a/wrappers/lustre/main.tf
+++ b/wrappers/lustre/main.tf
@@ -11,6 +11,7 @@ module "wrapper" {
cloudwatch_log_group_kms_key_id = try(each.value.cloudwatch_log_group_kms_key_id, var.defaults.cloudwatch_log_group_kms_key_id, null)
cloudwatch_log_group_name = try(each.value.cloudwatch_log_group_name, var.defaults.cloudwatch_log_group_name, null)
cloudwatch_log_group_retention_in_days = try(each.value.cloudwatch_log_group_retention_in_days, var.defaults.cloudwatch_log_group_retention_in_days, 90)
+ cloudwatch_log_group_skip_destroy = try(each.value.cloudwatch_log_group_skip_destroy, var.defaults.cloudwatch_log_group_skip_destroy, null)
cloudwatch_log_group_tags = try(each.value.cloudwatch_log_group_tags, var.defaults.cloudwatch_log_group_tags, {})
cloudwatch_log_group_use_name_prefix = try(each.value.cloudwatch_log_group_use_name_prefix, var.defaults.cloudwatch_log_group_use_name_prefix, true)
copy_tags_to_backups = try(each.value.copy_tags_to_backups, var.defaults.copy_tags_to_backups, false)
@@ -25,6 +26,7 @@ module "wrapper" {
data_repository_associations_timeouts = try(each.value.data_repository_associations_timeouts, var.defaults.data_repository_associations_timeouts, {})
deployment_type = try(each.value.deployment_type, var.defaults.deployment_type, null)
drive_cache_type = try(each.value.drive_cache_type, var.defaults.drive_cache_type, null)
+ efa_enabled = try(each.value.efa_enabled, var.defaults.efa_enabled, null)
file_cache_copy_tags_to_data_repository_associations = try(each.value.file_cache_copy_tags_to_data_repository_associations, var.defaults.file_cache_copy_tags_to_data_repository_associations, null)
file_cache_kms_key_id = try(each.value.file_cache_kms_key_id, var.defaults.file_cache_kms_key_id, null)
file_cache_lustre_configuration = try(each.value.file_cache_lustre_configuration, var.defaults.file_cache_lustre_configuration, {})
diff --git a/wrappers/lustre/versions.tf b/wrappers/lustre/versions.tf
index cbea89e..be17c1b 100644
--- a/wrappers/lustre/versions.tf
+++ b/wrappers/lustre/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/wrappers/ontap/versions.tf b/wrappers/ontap/versions.tf
index cbea89e..be17c1b 100644
--- a/wrappers/ontap/versions.tf
+++ b/wrappers/ontap/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/wrappers/openzfs/versions.tf b/wrappers/openzfs/versions.tf
index cbea89e..be17c1b 100644
--- a/wrappers/openzfs/versions.tf
+++ b/wrappers/openzfs/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}
diff --git a/wrappers/windows/main.tf b/wrappers/windows/main.tf
index 4c5ce62..0802e49 100644
--- a/wrappers/windows/main.tf
+++ b/wrappers/windows/main.tf
@@ -15,6 +15,7 @@ module "wrapper" {
cloudwatch_log_group_kms_key_id = try(each.value.cloudwatch_log_group_kms_key_id, var.defaults.cloudwatch_log_group_kms_key_id, null)
cloudwatch_log_group_name = try(each.value.cloudwatch_log_group_name, var.defaults.cloudwatch_log_group_name, null)
cloudwatch_log_group_retention_in_days = try(each.value.cloudwatch_log_group_retention_in_days, var.defaults.cloudwatch_log_group_retention_in_days, 90)
+ cloudwatch_log_group_skip_destroy = try(each.value.cloudwatch_log_group_skip_destroy, var.defaults.cloudwatch_log_group_skip_destroy, null)
cloudwatch_log_group_tags = try(each.value.cloudwatch_log_group_tags, var.defaults.cloudwatch_log_group_tags, {})
cloudwatch_log_group_use_name_prefix = try(each.value.cloudwatch_log_group_use_name_prefix, var.defaults.cloudwatch_log_group_use_name_prefix, true)
copy_tags_to_backups = try(each.value.copy_tags_to_backups, var.defaults.copy_tags_to_backups, null)
diff --git a/wrappers/windows/versions.tf b/wrappers/windows/versions.tf
index cbea89e..be17c1b 100644
--- a/wrappers/windows/versions.tf
+++ b/wrappers/windows/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 5.53"
+ version = ">= 5.82"
}
}
}