tfmodules/hpc/ovh/variables.tf
gitops_test 53339e50a8 sync-modules: mirrored modules of release 3.3.0-F-feature-simpl-33565.765.f7724799
+++ hpc/README.md
+++ hpc/ovh/cloudinit.tf
+++ hpc/ovh/credentials.tf
+++ hpc/ovh/main.tf
+++ hpc/ovh/outputs.tf
+++ hpc/ovh/variables.tf
+++ hpc/ovh/versions.tf
2026-10-07 15:03:53 +00:00

103 lines
3.3 KiB
HCL

variable "project_id" {
description = "OVH public cloud project id (service_name). Defaults to the OVH_CLOUD_PROJECT_SERVICE variable of the runner environment, derived from the cloud account configuration."
type = string
default = null
}
variable "region" {
description = "OVH region for all cluster instances and the private network, for example SBG5 or GRA11"
type = string
}
variable "deployment_id" {
description = "Unique deployment identifier, used to build resource names"
type = string
}
variable "cloud_account" {
description = "Cloud account (environment) name, second segment of the Vault credentials path"
type = string
}
variable "requester_unique_id" {
description = "Requester unique id, third segment of the Vault credentials path"
type = string
}
variable "name_prefix" {
description = "Prefix for all resource names"
type = string
default = "simpl"
}
variable "username" {
description = "Consumer username on the head node, last segment of the Vault credentials path. The user exists on every node with the same uid (Slurm runs jobs under it), but can only log in on the head node."
type = string
default = "simpl_user"
}
variable "admin_username" {
description = "Management username created on all nodes with SSH key access only"
type = string
default = "simpladmin"
}
variable "credentials_version" {
description = "Opaque rotation marker for the consumer credential. Changing the value regenerates the consumer password, applies it on the head node over SSH and republishes the fresh credential to Vault in the same apply, without touching the cluster nodes. Managed by the credential renewal workflow, not by the deployment script author."
type = string
default = "1"
}
variable "image" {
description = "Image name for every cluster node, must be a cloud-init enabled image"
type = string
default = "Ubuntu 24.04"
}
variable "head_flavor" {
description = "Instance flavor for the head node, for example b3-8"
type = string
default = "b3-8"
}
variable "compute_flavor" {
description = "Instance flavor for the compute nodes, for example b3-8"
type = string
default = "b3-8"
}
variable "compute_node_count" {
description = "Number of compute nodes in the cluster"
type = number
default = 2
validation {
condition = var.compute_node_count >= 1
error_message = "The cluster needs at least one compute node."
}
}
variable "compute_cpus" {
description = "Number of schedulable CPUs per compute node, declared to the Slurm controller. Must not exceed the vCPUs of compute_flavor."
type = number
default = 2
}
variable "cluster_cidr" {
description = "CIDR of the private cluster network. The head node takes the 50th host address, compute nodes take the 60th onward (lower pool addresses are left to the DHCP agent ports)."
type = string
default = "192.168.100.0/24"
}
variable "vlan_id" {
description = "vRack VLAN id for the private cluster network, must be unused in the project"
type = number
default = 212
}
variable "gateway_model" {
description = "Model (size) of the cloud gateway providing internet egress to the cluster"
type = string
default = "s"
}