variable "kubeconfig" {
  description = "Path to the kubeconfig for the simulation cluster"
  type        = string
  default     = "~/.kube/config"
}

variable "kube_context" {
  description = "Kubeconfig context of the k3d simulation cluster"
  type        = string
  default     = "k3d-swarm-sim"
}

variable "namespace" {
  description = "Namespace for the ground warehouse segment"
  type        = string
  default     = "ground"
}

variable "simulator_image" {
  description = "Simulator image (provides the explorer; imported by Ansible)"
  type        = string
  default     = "swarm-house/simulator:dev"
}

variable "lake_host_path" {
  description = "Host path of the fleet's live lake (T1) inside the k3d node"
  type        = string
  default     = "/data"
}

variable "warehouse_host_path" {
  description = "Host path of the historical warehouse (T3) inside the k3d node; dot-prefixed so lake globs never match it"
  type        = string
  default     = "/data/.warehouse"
}

variable "offload_schedule" {
  description = "Cron schedule of the post-flight offload job (T1 -> T3)"
  type        = string
  default     = "*/2 * * * *"
}

variable "minio_root_user" {
  description = "MinIO root user (simulation only; production uses sealed credentials)"
  type        = string
  default     = "warehouse"
}

variable "minio_root_password" {
  description = "MinIO root password (simulation only)"
  type        = string
  default     = "warehouse-sim-only"
  sensitive   = true
}

variable "minio_storage" {
  description = "PVC size for the MinIO object store"
  type        = string
  default     = "2Gi"
}

variable "node_ports" {
  description = "Host-reachable NodePorts (must match the ports opened by sim-cluster.yml)"
  type = object({
    warehouse_explorer = number
    minio_console      = number
  })
  default = {
    warehouse_explorer = 30089
    minio_console      = 30901
  }
}
