diff --git a/README.md b/README.md index d85ac234..540db736 100644 --- a/README.md +++ b/README.md @@ -211,7 +211,7 @@ The following sections are generated by [terraform-docs](https://github.com/terr |------|---------| | [terraform](#requirement\_terraform) | >= 1.3 | | [azapi](#requirement\_azapi) | >= 1.4.0, < 2.0 | -| [azurerm](#requirement\_azurerm) | >= 3.69.0, < 4.0 | +| [azurerm](#requirement\_azurerm) | >= 3.80.0, < 4.0 | | [null](#requirement\_null) | >= 3.0 | | [tls](#requirement\_tls) | >= 3.1 | @@ -220,7 +220,7 @@ The following sections are generated by [terraform-docs](https://github.com/terr | Name | Version | |------|---------| | [azapi](#provider\_azapi) | >= 1.4.0, < 2.0 | -| [azurerm](#provider\_azurerm) | >= 3.69.0, < 4.0 | +| [azurerm](#provider\_azurerm) | >= 3.80.0, < 4.0 | | [null](#provider\_null) | >= 3.0 | | [tls](#provider\_tls) | >= 3.1 | @@ -395,6 +395,7 @@ No modules. | [ultra\_ssd\_enabled](#input\_ultra\_ssd\_enabled) | (Optional) Used to specify whether the UltraSSD is enabled in the Default Node Pool. Defaults to false. | `bool` | `false` | no | | [vnet\_subnet\_id](#input\_vnet\_subnet\_id) | (Optional) The ID of a Subnet where the Kubernetes Node Pool should exist. Changing this forces a new resource to be created. | `string` | `null` | no | | [web\_app\_routing](#input\_web\_app\_routing) | object({
dns\_zone\_id = "(Required) Specifies the ID of the DNS Zone in which DNS entries are created for applications deployed to the cluster when Web App Routing is enabled."
}) |
object({
dns_zone_id = string
})
| `null` | no | +| [workload\_autoscaler\_profile](#input\_workload\_autoscaler\_profile) | `keda_enabled` - (Optional) Specifies whether KEDA Autoscaler can be used for workloads.
`vertical_pod_autoscaler_enabled` - (Optional) Specifies whether Vertical Pod Autoscaler should be enabled. |
object({
keda_enabled = optional(bool, false)
vertical_pod_autoscaler_enabled = optional(bool, false)
})
| `null` | no | | [workload\_identity\_enabled](#input\_workload\_identity\_enabled) | Enable or Disable Workload Identity. Defaults to false. | `bool` | `false` | no | ## Outputs diff --git a/main.tf b/main.tf index d7c53a5a..235825c0 100644 --- a/main.tf +++ b/main.tf @@ -493,6 +493,14 @@ resource "azurerm_kubernetes_cluster" "main" { dns_zone_id = var.web_app_routing.dns_zone_id } } + dynamic "workload_autoscaler_profile" { + for_each = var.workload_autoscaler_profile == null ? [] : [var.workload_autoscaler_profile] + + content { + keda_enabled = workload_autoscaler_profile.value.keda_enabled + vertical_pod_autoscaler_enabled = workload_autoscaler_profile.value.vertical_pod_autoscaler_enabled + } + } lifecycle { ignore_changes = [kubernetes_version] diff --git a/variables.tf b/variables.tf index f31c24b1..38da51eb 100644 --- a/variables.tf +++ b/variables.tf @@ -1285,6 +1285,18 @@ variable "web_app_routing" { EOT } +variable "workload_autoscaler_profile" { + type = object({ + keda_enabled = optional(bool, false) + vertical_pod_autoscaler_enabled = optional(bool, false) + }) + default = null + description = <<-EOT + `keda_enabled` - (Optional) Specifies whether KEDA Autoscaler can be used for workloads. + `vertical_pod_autoscaler_enabled` - (Optional) Specifies whether Vertical Pod Autoscaler should be enabled. +EOT +} + variable "workload_identity_enabled" { type = bool default = false diff --git a/versions.tf b/versions.tf index 642c7c1d..a03ef61d 100644 --- a/versions.tf +++ b/versions.tf @@ -8,7 +8,7 @@ terraform { } azurerm = { source = "hashicorp/azurerm" - version = ">= 3.69.0, < 4.0" + version = ">= 3.80.0, < 4.0" } null = { source = "hashicorp/null"