infrastructure/base/variables.tf
variable "project_name" {
default = "landgriffon"
type = string
description = "A project namespace for the infrastructure."
}
variable "environment" {
type = string
description = "An environment namespace for the infrastructure."
}
variable "domain" {
type = string
description = "The base domain name"
}
variable "aws_region" {
default = "eu-west-3"
type = string
description = "A valid GCP region to configure the underlying GCP SDK."
}
variable "gcp_region" {
type = string
description = "A valid GCP region to configure the underlying GCP SDK."
}
variable "gcp_zone" {
type = string
description = "A valid GCP zone to configure the underlying GCP SDK."
}
# define GCP project id
variable "gcp_project_id" {
type = string
description = "GCP project id"
}
variable "dynamo_db_lock_table_name" {
default = "aws-locks"
type = string
description = "Name of the lock table in Dynamo DB"
}
variable "tf_state_bucket" {
type = string
description = "The name of the S3 bucket where the state is stored"
}
variable "allowed_account_id" {
type = string
description = "Allowed AWS Account ID"
}
#
# RDS configuration
#
variable "rds_log_retention_period" {
type = number
default = 1
description = "Time in days to keep log files in cloud watch"
}
variable "rds_engine_version" {
type = string
description = "RDS Database engine version"
}
variable "rds_instance_class" {
type = string
default = "db.t3.micro"
description = "Instance type of Aurora PostgreSQL server"
}
variable "rds_instance_count" {
type = number
default = 1
description = "Number of Aurora PostgreSQL instances before autoscaling"
}
variable "rds_backup_retention_period" {
type = number
default = 7
description = "Time in days to keep db backups"
}
#
# EKS
#
variable "ebs_csi_addon_version" {
type = string
description = "Version of AWS EBS CRI driver to use"
}
variable "coredns_addon_version" {
type = string
description = "Version of AWS Core DNS addon to use"
}
variable "eks_cluster_version" {
type = string
description = "Version of EKS (kubernetes) cluster deploy"
}
#
# EKS default node group
#
variable "default_node_group_instance_types" {
type = string
default = "m5a.xlarge"
}
variable "default_node_group_min_size" {
type = number
default = 1
}
variable "default_node_group_max_size" {
type = number
default = 6
}
variable "default_node_group_desired_size" {
type = number
default = 2
}
variable "data_node_group_instance_types" {
type = string
default = "c5a.xlarge"
}
variable "data_node_group_min_size" {
type = number
default = 1
}
variable "data_node_group_max_size" {
type = number
default = 3
}
variable "data_node_group_desired_size" {
type = number
default = 1
}
variable "marketing_site_tag" {
type = string
description = "Tag name to use when pulling the marketing site from the image repository"
}
variable "repo_name" {
type = string
description = "Name of the github repo where the project is hosted"
}
variable "marketing_site_sendgrid_api_key_subscription" {
type = string
}
variable "marketing_site_sendgrid_api_key_contact" {
type = string
}
variable "marketing_site_google_analytics" {
type = string
}