variable "env" { type = object({ project = string region = string env_suffix = string lb = bool network_name = string registry_name = string registry_description = string registry_retention = object({ keep = number, days = number }) build_tag_prefixes = list(string) # the env that makes the network, subnets and registry this one runs on guest_of = optional(string) regions = map(object({ region = string subnet = string cidr = string ipv6_access_type = optional(string) # the addresses of what its hub gives it, as bobbin's env bobbin_env = map(string) # the `hub_nodes` keys bobbin can't get ready without bobbin_needs = list(string) })) hostnames = optional(map(string), {}) hub_nodes = map(object({ region = string })) services = map(object({ image = string public = bool env = map(string) secrets = optional(map(string), {}) iap = optional(bool, false) # overrides the liveness path, for a build that serves bobbin's xrpc under another namespace liveness = optional(string) })) }) description = "one modules/envs entry, its services carrying the image ref to run; the regions key set is the cell set" }