diff --git a/.github/workflows/terraform-docs.yaml b/.github/workflows/terraform-docs.yaml index 8b9d05b..0ece9d9 100644 --- a/.github/workflows/terraform-docs.yaml +++ b/.github/workflows/terraform-docs.yaml @@ -5,6 +5,6 @@ on: jobs: terraform-docs-generator: name: Generate terraform docs - uses: truefoundry/github-workflows-public/.github/workflows/terraform-doc-generator.yml@v0.1.0 + uses: truefoundry/github-workflows-public/.github/workflows/terraform-doc-generator.yml@v0.1.5 with: - commit_ref: ${{ github.event.pull_request.head.ref }} \ No newline at end of file + commit_ref: ${{ github.event.pull_request.head.ref }} diff --git a/README.md b/README.md index 17a95ad..c37f2bb 100644 --- a/README.md +++ b/README.md @@ -6,14 +6,14 @@ Truefoundry AWS platform features | Name | Version | |------|---------| -| [terraform](#requirement\_terraform) | >= 1.4 | -| [aws](#requirement\_aws) | >= 5.57.0 | +| [terraform](#requirement\_terraform) | ~> 1.4 | +| [aws](#requirement\_aws) | ~> 5.57 | ## Providers | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 5.57.0 | +| [aws](#provider\_aws) | ~> 5.57 | ## Modules @@ -56,7 +56,7 @@ Truefoundry AWS platform features | [aws\_account\_id](#input\_aws\_account\_id) | AWS account id | `string` | n/a | yes | | [aws\_region](#input\_aws\_region) | AWS region | `string` | n/a | yes | | [blob\_storage\_cors\_origins](#input\_blob\_storage\_cors\_origins) | List of CORS origins for Mlfoundry bucket | `list(string)` |
[
"*"
]
| no | -| [blob\_storage\_enable\_override](#input\_blob\_storage\_enable\_override) | Enable overriding the name of s3 bucket. This will only be used if feature\_blob\_storage\_enabled is enabled. You need to pass s3\_override\_name to pass the bucket name | `bool` | `false` | no | +| [blob\_storage\_enable\_override](#input\_blob\_storage\_enable\_override) | Enable overriding the name of s3 bucket. This will only be used if feature\_blob\_storage\_enabled is enabled. You need to pass blob\_storage\_override\_name to pass the bucket name | `bool` | `false` | no | | [blob\_storage\_encryption\_algorithm](#input\_blob\_storage\_encryption\_algorithm) | Algorithm used for encrypting the default bucket. | `string` | `"AES256"` | no | | [blob\_storage\_encryption\_key\_arn](#input\_blob\_storage\_encryption\_key\_arn) | ARN of the key used to encrypt the bucket. Only needed if you set aws:kms as encryption algorithm. | `string` | `null` | no | | [blob\_storage\_force\_destroy](#input\_blob\_storage\_force\_destroy) | Force destroy for mlfoundry s3 bucket | `bool` | `true` | no | @@ -68,8 +68,7 @@ Truefoundry AWS platform features | [feature\_docker\_registry\_enabled](#input\_feature\_docker\_registry\_enabled) | Enable docker registry feature in the platform | `bool` | `true` | no | | [feature\_parameter\_store\_enabled](#input\_feature\_parameter\_store\_enabled) | Enable parameter store feature in the platform | `bool` | `true` | no | | [feature\_secrets\_manager\_enabled](#input\_feature\_secrets\_manager\_enabled) | Enable secrets manager feature in the platform | `bool` | `false` | no | -| [platform\_feature\_enabled](#input\_platform\_feature\_enabled) | Enable platform features like docker registry, secrets manager and blob storage | `bool` | `true` | no | -| [platform\_role\_enable\_override](#input\_platform\_role\_enable\_override) | Enable overriding the platform role name. You need to pass s3\_override\_name to pass the bucket name | `bool` | `false` | no | +| [platform\_role\_enable\_override](#input\_platform\_role\_enable\_override) | Enable overriding the platform role name. You need to pass blob\_storage\_override\_name to pass the bucket name | `bool` | `false` | no | | [platform\_role\_override\_name](#input\_platform\_role\_override\_name) | Platform IAM role name which will have access to S3 bucket, SSM and ECR | `string` | `""` | no | | [platform\_user\_enabled](#input\_platform\_user\_enabled) | Enable creation of a platform feature user | `bool` | `false` | no | | [platform\_user\_force\_destroy](#input\_platform\_user\_force\_destroy) | Enable force destroy of the user | `bool` | `true` | no | @@ -81,15 +80,21 @@ Truefoundry AWS platform features | Name | Description | |------|-------------| -| [platform\_iam\_role\_arn](#output\_platform\_iam\_role\_arn) | The IAM role resource arn | -| [platform\_iam\_role\_assume\_role\_arns](#output\_platform\_iam\_role\_assume\_role\_arns) | The IAM role arns which has been assume by platform\_iam\_role | -| [platform\_iam\_role\_name](#output\_platform\_iam\_role\_name) | Then name of the IAM role | -| [platform\_iam\_role\_policy\_arns](#output\_platform\_iam\_role\_policy\_arns) | The list of ARNs of policies directly assigned to the IAM user | +| [blob\_storage\_uri](#output\_blob\_storage\_uri) | URI of the S3 bucket | +| [platform\_bucket\_arn](#output\_platform\_bucket\_arn) | ARN of the S3 bucket | +| [platform\_bucket\_enabled](#output\_platform\_bucket\_enabled) | Flag to enable S3 bucket for the platform | +| [platform\_bucket\_name](#output\_platform\_bucket\_name) | Name/ID of the S3 bucket | +| [platform\_cluster\_integration\_enabled](#output\_platform\_cluster\_integration\_enabled) | Flag to enable cluster integration for the platform | +| [platform\_ecr\_enabled](#output\_platform\_ecr\_enabled) | Flag to enable ECR for the platform | +| [platform\_ecr\_url](#output\_platform\_ecr\_url) | The ECR url to connect | +| [platform\_iam\_role\_arn](#output\_platform\_iam\_role\_arn) | The platform IAM role arn | +| [platform\_iam\_role\_assume\_role\_arns](#output\_platform\_iam\_role\_assume\_role\_arns) | The role arns that can assume the platform IAM role | +| [platform\_iam\_role\_enabled](#output\_platform\_iam\_role\_enabled) | Flag to enable IAM role for the platform. If false, the user will be created. | +| [platform\_iam\_role\_policy\_arns](#output\_platform\_iam\_role\_policy\_arns) | The platform IAM role policy arns | +| [platform\_secrets\_manager\_enabled](#output\_platform\_secrets\_manager\_enabled) | Flag to enable Secrets Manager for the platform | +| [platform\_ssm\_enabled](#output\_platform\_ssm\_enabled) | Flag to enable Parameter Store for the platform | | [platform\_user\_access\_key](#output\_platform\_user\_access\_key) | The user access key ID | | [platform\_user\_arn](#output\_platform\_user\_arn) | The user IAM resource arn | -| [platform\_user\_bucket\_arn](#output\_platform\_user\_bucket\_arn) | The bucket's arn | -| [platform\_user\_bucket\_name](#output\_platform\_user\_bucket\_name) | The bucket's ID/name | -| [platform\_user\_ecr\_url](#output\_platform\_user\_ecr\_url) | The ECR url to connect | -| [platform\_user\_enabled](#output\_platform\_user\_enabled) | The user is enabled | +| [platform\_user\_enabled](#output\_platform\_user\_enabled) | Flag to enable user for the platform. If false, the iam role will be created. | | [platform\_user\_secret\_key](#output\_platform\_user\_secret\_key) | The user secret key | \ No newline at end of file diff --git a/output.tf b/output.tf index e0ada01..0b52f7e 100644 --- a/output.tf +++ b/output.tf @@ -66,6 +66,11 @@ output "platform_bucket_arn" { value = var.feature_blob_storage_enabled ? module.truefoundry_bucket[0].s3_bucket_arn : "" } +output "blob_storage_uri" { + description = "URI of the S3 bucket" + value = var.feature_blob_storage_enabled ? "s3://${module.truefoundry_bucket[0].s3_bucket_id}" : "" +} + ################################################################################ # ECR details ################################################################################