@@ -99,6 +99,28 @@ variable "cert_manager" {
9999 })
100100}
101101
102+ variable "konnectivity_agent" {
103+ description = " Configuration for Konnectivity agent deployment replica alert in GKE. Triggers when there are no available replicas."
104+ default = {}
105+ type = object ({
106+ enabled = optional (bool , true )
107+ project_id = optional (string , null )
108+ cluster_name = optional (string , null )
109+ namespace = optional (string , " kube-system" )
110+ deployment_name = optional (string , " konnectivity-agent" )
111+ duration_seconds = optional (number , 60 )
112+ auto_close_seconds = optional (number , 3600 )
113+ notification_enabled = optional (bool , true )
114+ notification_channels = optional (list (string ), [])
115+ notification_prompts = optional (list (string ), null )
116+ })
117+
118+ validation {
119+ condition = ! try (var. konnectivity_agent . enabled , false ) || try (trimspace (var. konnectivity_agent . cluster_name ), " " ) != " "
120+ error_message = " When konnectivity_agent is enabled, 'cluster_name' must be provided."
121+ }
122+ }
123+
102124variable "typesense" {
103125 description = " Configuration for Typesense monitoring alerts. Supports uptime checks for HTTP endpoints and container-level alerts (pod restarts) in GKE. Each app is identified by its name (map key)."
104126 default = {}
@@ -120,10 +142,10 @@ variable "typesense" {
120142 enabled = optional (bool , true )
121143 namespace = string
122144 pod_restart = optional (object ({
123- threshold = optional (number , 0 )
124- alignment_period = optional (number , 60 )
125- duration = optional (number , 180 )
126- auto_close_seconds = optional (number , 3600 )
145+ threshold = optional (number , 0 )
146+ alignment_period = optional (number , 60 )
147+ duration = optional (number , 180 )
148+ auto_close_seconds = optional (number , 3600 )
127149 notification_prompts = optional (list (string ), null )
128150 }), {})
129151 }), null )
@@ -171,10 +193,10 @@ variable "litellm" {
171193 enabled = optional (bool , true )
172194 namespace = string
173195 pod_restart = optional (object ({
174- threshold = optional (number , 0 )
175- alignment_period = optional (number , 60 )
176- duration = optional (number , 180 )
177- auto_close_seconds = optional (number , 3600 )
196+ threshold = optional (number , 0 )
197+ alignment_period = optional (number , 60 )
198+ duration = optional (number , 180 )
199+ auto_close_seconds = optional (number , 3600 )
178200 notification_prompts = optional (list (string ), null )
179201 }), {})
180202 }), null )
0 commit comments