avx-pmarie-aws-infra/modules/eks-ingress-controller/variables.tf

104 lines
2.6 KiB
Terraform
Raw Normal View History

2022-07-01 14:12:11 +02:00
variable "load_balancer_config" {
type = map(object({
backend-protocol = string
connection-idle-timeout = string
cross-zone-load-balancing-enabled = bool
type = string
dns_record = string
2022-07-12 22:32:18 +02:00
enable-proxy-protocol = bool
2022-07-01 14:12:11 +02:00
nlb-target-type = string
2022-07-12 22:32:18 +02:00
eip-allocations = string
name = string
2022-07-01 14:12:11 +02:00
}))
description = "The AWS Load Balancer(s) configuration. Map keys shall be 'public' and/or 'internal'"
}
variable "ingress_config" {
type = object({
use-proxy-protocol = bool
proxy-real-ip-cidr = string
use-forwarded-headers = bool
compute-full-forwarded-for = bool
})
description = "Ingress level configuration"
default = {
use-proxy-protocol = false
proxy-real-ip-cidr = "0.0.0.0/0"
use-forwarded-headers = false
compute-full-forwarded-for = false
}
}
variable "cluster_id" {
type = string
description = "The name/id of the EKS cluster. Will block on cluster creation until the cluster is really ready"
}
variable "cluster_endpoint" {
type = string
description = "Endpoint for your Kubernetes API server"
}
variable "cluster_certificate_authority_data" {
type = string
description = "Base64 encoded certificate data required to communicate with the cluster"
}
variable "ingress_class" {
type = string
default = "nginx"
description = "A class for the Ingress controller"
}
variable "is_default_ingress_class" {
type = bool
description = "Flag allowing to define this ingress controller ingress class as the default one"
default = true
}
variable "enable_internal_lb" {
type = bool
default = false
}
variable "namespace" {
type = string
description = "The namespace where the ingress controller is deployed"
default = "nginx-ingress"
}
variable "create_namespace" {
type = bool
description = "Flag allowing to create the namespace if it does not exists"
default = true
}
variable "public_dns_record" {
type = object({
zone_id = string
name = string
})
default = {
zone_id = ""
name = ""
}
description = "Public DNS zone and record name where to register the ingress load balancer"
}
variable "internal_dns_record" {
type = object({
zone_id = string
name = string
})
default = {
zone_id = ""
name = ""
}
description = "Private DNS zone and record name where to register the ingress load balancer"
}
variable "tags" {
type = map(string)
default = {}
2022-07-12 22:32:18 +02:00
}