https://github.com/truefoundry/terraform-aws-truefoundry-efs
Truefoundry AWS EFS Module
https://github.com/truefoundry/terraform-aws-truefoundry-efs
Last synced: 4 months ago
JSON representation
Truefoundry AWS EFS Module
- Host: GitHub
- URL: https://github.com/truefoundry/terraform-aws-truefoundry-efs
- Owner: truefoundry
- License: apache-2.0
- Created: 2023-07-05T13:23:56.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-10-29T14:53:30.000Z (8 months ago)
- Last Synced: 2026-02-13T08:05:41.408Z (4 months ago)
- Language: HCL
- Size: 76.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# terraform-aws-truefoundry-efs
Truefoundry AWS EFS Module
## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | ~> 1.4 |
| [aws](#requirement\_aws) | ~> 5.57 |
## Providers
| Name | Version |
|------|---------|
| [aws](#provider\_aws) | ~> 5.57 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| [efs](#module\_efs) | cloudposse/efs/aws | 1.2.1 |
| [iam\_assumable\_role\_admin](#module\_iam\_assumable\_role\_admin) | terraform-aws-modules/iam/aws//modules/iam-assumable-role-with-oidc | 5.27.0 |
## Resources
| Name | Type |
|------|------|
| [aws_efs_file_system_policy.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/efs_file_system_policy) | resource |
| [aws_iam_policy.efs](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_policy) | resource |
| [aws_iam_policy_document.efs](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source |
| [aws_iam_policy_document.efs_file_system_policy](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source |
## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [cluster\_name](#input\_cluster\_name) | EKS Cluster Name | `string` | n/a | yes |
| [cluster\_oidc\_issuer\_url](#input\_cluster\_oidc\_issuer\_url) | The oidc url of the eks cluster | `string` | n/a | yes |
| [create\_efs\_access\_policy](#input\_create\_efs\_access\_policy) | Enable/disable creation of EFS access policy | `bool` | `true` | no |
| [create\_efs\_iam\_role](#input\_create\_efs\_iam\_role) | Enable/disable creation of IAM role for EFS | `bool` | `true` | no |
| [disable\_default\_tags](#input\_disable\_default\_tags) | Disable the default tag for the EFSs. Used in cases where only certain tags are allowed | `bool` | `false` | no |
| [efs\_access\_policy\_prefix\_enable\_override](#input\_efs\_access\_policy\_prefix\_enable\_override) | Enable/disable override of the EFS access policy. When enabled, the EFS access policy will be set to the value of efs\_access\_policy\_prefix\_override\_name | `bool` | `false` | no |
| [efs\_access\_policy\_prefix\_override\_name](#input\_efs\_access\_policy\_prefix\_override\_name) | The name of the EFS access policy. This will be used only when efs\_access\_policy\_prefix\_enable\_override is set to true | `string` | `""` | no |
| [efs\_iam\_role\_additional\_policy\_arns](#input\_efs\_iam\_role\_additional\_policy\_arns) | Additional policy ARNs to attach to the EFS IAM role | `list(string)` | `[]` | no |
| [efs\_iam\_role\_enable\_override](#input\_efs\_iam\_role\_enable\_override) | Enable/disable override of the EFS IAM role name. When enabled, the EFS IAM role name will be set to the value of efs\_iam\_role\_override\_name | `bool` | `false` | no |
| [efs\_iam\_role\_override\_name](#input\_efs\_iam\_role\_override\_name) | The name of the EFS IAM role. This will be used only when efs\_iam\_role\_enable\_override is set to true | `string` | `""` | no |
| [efs\_iam\_role\_permissions\_boundary\_arn](#input\_efs\_iam\_role\_permissions\_boundary\_arn) | ARN of the permissions boundary for the EFS IAM role | `string` | `""` | no |
| [efs\_kms\_key\_arn](#input\_efs\_kms\_key\_arn) | The KMS key ARN to use for EFS | `string` | `null` | no |
| [efs\_node\_iam\_role\_arn](#input\_efs\_node\_iam\_role\_arn) | The node IAM role ARN being used by the EFS daemonset | `string` | n/a | yes |
| [enable\_backup\_policy](#input\_enable\_backup\_policy) | Enable EFS backup policy | `bool` | `true` | no |
| [existing\_efs\_access\_policy\_arn](#input\_existing\_efs\_access\_policy\_arn) | ARN of the existing EFS access policy. This will be used only when create\_efs\_iam\_role is set to false | `string` | `""` | no |
| [existing\_efs\_iam\_role\_arn](#input\_existing\_efs\_iam\_role\_arn) | ARN of the existing EFS IAM role. This will be used only when create\_efs\_iam\_role is set to false | `string` | `""` | no |
| [k8s\_service\_account\_name](#input\_k8s\_service\_account\_name) | The k8s efs service account name | `string` | n/a | yes |
| [k8s\_service\_account\_namespace](#input\_k8s\_service\_account\_namespace) | The k8s efs namespace | `string` | n/a | yes |
| [performance\_mode](#input\_performance\_mode) | the performance mode for EFS | `string` | n/a | yes |
| [private\_subnets\_cidrs](#input\_private\_subnets\_cidrs) | List of CIDR of private subnets | `list(string)` | n/a | yes |
| [private\_subnets\_id](#input\_private\_subnets\_id) | List of private subnet IDs | `list(string)` | n/a | yes |
| [region](#input\_region) | The region where the EFS will be provisioned | `string` | n/a | yes |
| [tags](#input\_tags) | AWS Tags common to all the resources created | `map(string)` | `{}` | no |
| [throughput\_mode](#input\_throughput\_mode) | the throughput mode for EFS | `string` | n/a | yes |
| [vpc\_id](#input\_vpc\_id) | ID of the VPC where the cluster and its nodes will be provisioned | `string` | `null` | no |
## Outputs
| Name | Description |
|------|-------------|
| [efs\_arn](#output\_efs\_arn) | n/a |
| [efs\_id](#output\_efs\_id) | n/a |
| [efs\_role\_arn](#output\_efs\_role\_arn) | n/a |
| [efs\_security\_group\_id](#output\_efs\_security\_group\_id) | n/a |