variable "project_id" { type = string } variable "name" { type = string } variable "ipv4_gateway" { type = string default = null } variable "ipv4_nameservers" { type = list(string) default = [] } variable "ipv4_prefix" { type = string # CIDR, only for NON-routed nets default = null } variable "ipv4_prefix_length" { type = number # e.g. 24 default = null } variable "ipv6_gateway" { type = string default = null } variable "ipv6_nameservers" { type = list(string) default = [] } variable "ipv6_prefix" { type = string default = null } variable "ipv6_prefix_length" { type = number default = null } variable "labels" { type = map(string) default = {} } variable "no_ipv4_gateway" { type = bool default = false } variable "no_ipv6_gateway" { type = bool default = false } variable "routed" { type = bool default = true } variable "nic_allowed_addresses" { type = list(string) default = [] } variable "nic_ipv4" { type = string default = null } variable "nic_labels" { type = map(string) default = {} } variable "nic_name" { type = string default = null } variable "nic_security" { type = bool default = false nullable = false } variable "nic_security_group_ids" { type = list(string) default = [] } variable "security_groups" { type = map(object({ name = string description = optional(string) labels = optional(map(string)) stateful = optional(bool) rules = list(object({ description = optional(string) direction = string ether_type = optional(string) ip_range = optional(string) protocol = optional(object({ name = optional(string) number = optional(number) })) port_range = optional(object({ min = number max = number })) remote_security_group_id = optional(string) })) })) default = {} }