variable "aws_region" {
  type        = string
  default     = "eu-central-1"
  description = "The AWS region to create resources in"
}

variable "environment" {
  description = "The name of the environment"
  default     = "prod"
}

variable "account_group" {
  description = "The name of the account group"
  default     = "amp"
}

variable "application_family" {
  description = "Name of application family"
  default     = "devops"
}

variable "team_name" {
  description = "Name of the team that owns this infrastructure"
  default     = "devops"
}

variable "vpc_id" {
  default = "vpc-0869359855245eb83"
}

variable "vpc_name" {
  description = "Unique identifier for the VPC"
  default     = "AMP-AAS-P2"
}

variable "vpc_tgw_name" {
  description = "Unique identifier for the VPC in TGW"
  default     = "amp-prod-amp-aas-p2"
}

variable "private_subnet_ids" {
  default = [
    "subnet-0f75b5ff077d58921",
    "subnet-08b875b2ce4695488",
    "subnet-012dfc8203c46d9cb",
  ]
}

variable "route_table_id" {
  default = "rtb-0025046aaad1e332a" # AMP-AAS-P2-APP-RT
}

variable "vpc_routing_destination_prefix_lists" {
  type        = list(string)
  description = "list of prefix lists names that should be routable from the private subnets"
  default = [
    "shared-orcd-atlantis-private-subnet-prefix-list",
  ]
}

variable "vpc_routing_destination_cidr_blocks" {
  type        = list(string)
  description = "list of CIDR blocks that should be routable from the selected subnets"
  default     = []
}

locals {
  pl_internal_routes = [
    for tuple in setproduct(toset([var.route_table_id]), toset(data.aws_ec2_managed_prefix_lists.required_routes.ids)) : {
      route_table_id = tuple[0]
      prefix_list_id = tuple[1]
    }
  ]
  cidr_internal_routes = [
    for tuple in setproduct(toset([var.route_table_id]), toset(var.vpc_routing_destination_cidr_blocks)) : {
      route_table_id = tuple[0]
      cidr           = tuple[1]
    }
  ]
}
