diff --git a/modules/eks/keda/README.md b/modules/eks/keda/README.md index cd686925a..89b213ed5 100644 --- a/modules/eks/keda/README.md +++ b/modules/eks/keda/README.md @@ -16,20 +16,14 @@ components: eks/keda: vars: enabled: true - name: "keda" - kubernetes_namespace: "keda" + name: keda create_namespace: true - timeout: 90 - wait: true - atomic: true - cleanup_on_fail: true - resources: - requests: - cpu: 200m - memory: 256Mi - limits: - cpu: 1000m - memory: 1024Mi + kubernetes_namespace: "keda" + chart_repository: "https://kedacore.github.io/charts" + chart: "keda" + chart_version: "2.11.2" + chart_values: {} + timeout: 180 ``` @@ -116,7 +110,15 @@ components: | Name | Description | |------|-------------| -| [metadata](#output\_metadata) | Block status of the deployed release | +| [metadata](#output\_metadata) | Block status of the deployed release. | +| [service\_account\_name](#output\_service\_account\_name) | Kubernetes Service Account name | +| [service\_account\_namespace](#output\_service\_account\_namespace) | Kubernetes Service Account namespace | +| [service\_account\_policy\_arn](#output\_service\_account\_policy\_arn) | IAM policy ARN | +| [service\_account\_policy\_id](#output\_service\_account\_policy\_id) | IAM policy ID | +| [service\_account\_policy\_name](#output\_service\_account\_policy\_name) | IAM policy name | +| [service\_account\_role\_arn](#output\_service\_account\_role\_arn) | IAM role ARN | +| [service\_account\_role\_name](#output\_service\_account\_role\_name) | IAM role name | +| [service\_account\_role\_unique\_id](#output\_service\_account\_role\_unique\_id) | IAM role unique ID | ## References diff --git a/modules/eks/keda/main.tf b/modules/eks/keda/main.tf index 327b61d6e..857148b8c 100644 --- a/modules/eks/keda/main.tf +++ b/modules/eks/keda/main.tf @@ -21,8 +21,16 @@ module "keda" { service_account_name = module.this.name service_account_namespace = var.kubernetes_namespace - iam_role_enabled = false - iam_policy_statements = {} + iam_role_enabled = true + + iam_policy_statements = [ + { + sid = "KedaOperatorSQS" + effect = "Allow" + actions = ["SQS:GetQueueAttributes"] + resources = ["*"] + } + ] values = compact([ yamlencode({ diff --git a/modules/eks/keda/outputs.tf b/modules/eks/keda/outputs.tf index 8a5b6e428..cab379b79 100644 --- a/modules/eks/keda/outputs.tf +++ b/modules/eks/keda/outputs.tf @@ -1,4 +1,48 @@ +## eks_iam_role + +output "service_account_namespace" { + value = module.keda.service_account_namespace + description = "Kubernetes Service Account namespace" +} + +output "service_account_name" { + value = module.keda.service_account_name + description = "Kubernetes Service Account name" +} + +output "service_account_role_name" { + value = module.keda.service_account_role_name + description = "IAM role name" +} + +output "service_account_role_unique_id" { + value = module.keda.service_account_role_unique_id + description = "IAM role unique ID" +} + +output "service_account_role_arn" { + value = module.keda.service_account_role_arn + description = "IAM role ARN" +} + +output "service_account_policy_name" { + value = module.keda.service_account_policy_name + description = "IAM policy name" +} + +output "service_account_policy_id" { + value = module.keda.service_account_policy_id + description = "IAM policy ID" +} + +output "service_account_policy_arn" { + value = module.keda.service_account_policy_arn + description = "IAM policy ARN" +} + +## keda + output "metadata" { - value = try(one(module.keda.metadata), null) - description = "Block status of the deployed release" + description = "Block status of the deployed release." + value = module.keda.metadata }