variable "project_id" {
  type        = string
  description = "GCP project id"
}

variable "region" {
  type        = string
  description = "GCP region"
}

variable "zone" {
  type        = string
  description = "GCP zone (ex: europe-west1-b)"
}

variable "instance_type" {
  type        = string
  description = "Machine type for instances (ex: e2-medium)"
  default     = "e2-medium"
}

variable "network" {
  type        = string
  description = "VPC network self_link or name"
}

variable "frontend_subnet_id" {
  type        = string
  description = "Frontend subnet self_link"
}

variable "backend_subnet_id" {
  type        = string
  description = "Backend subnet self_link"
}

variable "database_subnet_id" {
  type        = string
  description = "Database subnet self_link"
}

variable "ssh_pub_key" {
  type        = string
  description = "SSH public key to add as metadata for OS Login fallback (optional)"
  default     = ""
}

variable "service_account_email" {
  type        = string
  description = "Service account email to attach to instances"
}

variable "labels" {
  type    = map(string)
  default = {}
}