126 lines
3.8 KiB
HCL

variable "region" {
type = string
description = "AWS Region"
}
variable "availability_zones" {
type = list(string)
}
variable "vpc_cidr_block" {
type = string
description = "VPC CIDR block"
}
variable "prefix" {
type = string
description = "Namespace, which could be your organization name, e.g. 'eg' or 'cp'"
}
variable "stage" {
type = string
description = "Stage, e.g. 'prod', 'staging', 'dev' or 'testing'"
}
variable "name" {
type = string
description = "Solution name, e.g. 'app' or 'cluster'"
}
variable "delimiter" {
type = string
default = "-"
description = "Delimiter to be used between `name`, `namespace`, `stage`, etc."
}
variable "attributes" {
type = list(string)
default = []
description = "Additional attributes (e.g. `1`)"
}
variable "tags" {
type = map(string)
default = {}
description = "Additional tags (e.g. `map('BusinessUnit`,`XYZ`)"
}
### Bastion Server Settings ###
variable "bastion_instance_type" {
type = string
description = "EC2 type for bastion"
}
variable "bastion_ami" {
type = string
}
variable "keyname" {
type = string
default = ""
}
variable "public_keyname" {
default = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDboPfi18b0We79c6mqQui+iPPL0KqUWIdm02hb6RyQ67buYPik6KRAin8hiwvgVHyBF3sdnDsaP9snSFq2QQXUtdB5MxHplIJSbdd/oREtTXHCc9OfhGEuJDqQ8ViHj1ApYlLNIohHAhJkVywkpMhLUHqLZ2DXhwVjM9XDHx0aoImwcyczzU9e4T8jtvLB+PlDRNxvCrKuf6Ir6sd1u9vHWQYR4kV61T3Z/VaeRPSF5Y50IF5ECTrNoQeR0NSRIrY6g4/hZzMisLxpybtO44jkZ7OPVwhAjfZgTTZYnrrSkdoL8HYbaEuKZC/WPvoCOfq5eF4ydpwUQomzeCD9pnOX pderuiter@MacBook-Pro-van-Patrick.local"
}
### Kubernetes Settings ###
variable "kubernetes_version" {
type = string
default = null
description = "Desired Kubernetes master version. If you do not specify a value, the latest available version is used"
}
variable "desired_size" {
type = number
description = "Desired number of worker nodes"
}
variable "max_size" {
type = number
description = "The maximum size of the AutoScaling Group"
}
variable "min_size" {
type = number
description = "The minimum size of the AutoScaling Group"
}
variable "oidc_provider_enabled" {
type = bool
default = true
description = "Create an IAM OIDC identity provider for the cluster, then you can create IAM roles to associate with a service account in the cluster, instead of using kiam or kube2iam. For more information, see https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html"
}
variable "kubeconfig_path" {
type = string
description = "The path to `kubeconfig` file"
}
variable "disk_size" {
type = number
description = "Disk size in GiB for worker nodes. Defaults to 20. Terraform will only perform drift detection if a configuration value is provided"
}
variable "instance_types" {
type = list(string)
description = "Set of instance types associated with the EKS Node Group. Defaults to [\"t3.medium\"]. Terraform will only perform drift detection if a configuration value is provided"
}
variable "kubernetes_labels" {
type = map(string)
description = "Key-value mapping of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed"
}
variable "kubernetes_namespace" {
type = string
default = "kube-apps"
description = "Kubernetes namespace to run your fargate workloads on"
}
variable "aws_eks_update_kubeconfig_additional_arguments" {
type = string
default = null
description = "Additional arguments for `aws eks update-kubeconfig` command, e.g. `--role-arn xxxxxxxxx`. For more info, see https://docs.aws.amazon.com/cli/latest/reference/eks/update-kubeconfig.html"
}