description="AWS RDS DB instance class (size/type)"
type=string
default="db.t4g.small"
}
variable"db_engine"{
description="AWS RDS DB engine type"
type=string
default="postgres"
}
variable"db_storage"{
description="AWS RDS DB storage volume (in GB)"
type=number
default=10
}
variable"db_storage_type"{
description="AWS RDS DB storage type"
type=string
default="gp2"
}
variable"db_storage_iops"{
description="AWS RDS DB storage IOPS (optional)"
type=string
default=null
}
variable"db_name"{
description="Name of the RDS Database"
type=string
default=null // default value defined in the locals
}
variable"db_create"{
description="Enables module to create RDS resources"
type=bool
default=true
}
variable"db_host"{
description="Address of a pre-configured PostgreSQL host"
type=string
default=null
}
variable"db_port"{
description="Address of a pre-configured PostgreSQL host"
type=number
default=5432
}
variable"db_user"{
description="Default username for RDS database"
type=string
default="boundary"
}
variable"db_pass"{
description="Default password for RDS database"
type=string
default=""
}
variable"db_monitoring_interval"{
description="Interval (in seconds) to report enhanced DB metrics. Disabled by default"
type=number
default=0
}
variable"db_monitoring_role_arn"{
description="The ARN of the IAM role to be used to report enhanced DB metrics. Must be set if db_monitoring_interval is set"
type=string
default=""
}
variable"db_max_open_connections"{
description="The maximum number of open connections to the database. Limiting this limits the load a controller can handle."
type=number
default=5
validation{
condition=var.db_max_open_connections>=5
error_message="Max open connections must be at least 5."
}
}
variable"db_snapshot_identifier"{
description="The name of the DB snapshot to restore into the created RDS instance. Will be applied to all clusters created. If not set, no DB restore will be made."
type=string
default=null
}
variable"boundary_release"{
description="boundary release version and edition to install from releases.hashicorp.com"
type=object({
version=string
})
default=null
}
variable"boundary_artifactory_release"{
description="Boundary release version and edition to install from artifactory.hashicorp.engineering"
type=object({
username=string
token=string
url=string
sha256=string
})
default=null
}
variable"boundary_install_dir"{
description="The remote directory where the boundary binary will be installed"
type=string
default="/opt/boundary/bin"
}
variable"boundary_binary_name"{
description="Boundary binary name"
type=string
default="boundary"
}
variable"boundary_data_dir"{
description="The directory where the boundary will store data"
type=string
default="/opt/boundary/data"
}
variable"boundary_log_dir"{
description="The directory where the boundary will write log output"
type=string
default="/var/log/boundary.d"
}
variable"boundary_config_dir"{
description="The directory where boundary config files will live"
type=string
default="/etc/boundary"
}
variable"local_artifact_path"{
description="path to a local boundary.zip"
type=string
default=null
}
variable"alb_listener_api_port"{
description="The load balancer port that will expose controller APIs"
type=number
default=9200
}
variable"listener_api_port"{
description="The port controller instances will bind the controller API to"
type=number
default=9200
}
variable"listener_cluster_port"{
description="The port controller and worker instances will bind to for communication"
type=number
default=9201
}
variable"listener_proxy_port"{
description="The port worker instances will bind the worker API to"
type=number
default=9202
}
variable"listener_ops_port"{
description="The port controller instances will bind the operational API to"