packer-proxmox/rocky-9.0/variables.pkr.hcl

182 lines
3.8 KiB
HCL

// Proxmox Settings
variable "proxmox_iso_file" {
type = string
}
variable "proxmox_iso_pool" {
type = string
default = "local:iso"
}
variable "proxmox_url" {
type = string
default = ""
}
variable "proxmox_node" {
type = string
default = ""
}
variable "proxmox_username" {
type = string
default = ""
}
variable "proxmox_password" {
type = string
default = ""
}
variable "proxmox_storage_format" {
type = string
default = "raw"
}
variable "proxmox_storage_pool" {
type = string
default = "local-lvm"
}
variable "proxmox_storage_pool_type" {
type = string
default = "lvm-thin"
}
variable "template_description" {
type = string
}
variable "template_name" {
type = string
}
// Virtual Machine Settings
variable "vm_id" {
type = number
description = "The ID used to reference the virtual machine."
default = 0
}
variable "vm_guest_os_language" {
type = string
description = "The guest operating system lanugage."
default = "en_US"
}
variable "vm_guest_os_keyboard" {
type = string
description = "The guest operating system keyboard input."
default = "us"
}
variable "vm_guest_os_timezone" {
type = string
description = "The guest operating system timezone."
default = "America/New_York"
}
variable "vm_os_type" {
type = string
description = "The operating system."
default = "l26"
}
variable "vm_cpu_sockets" {
type = number
description = "The number of virtual CPUs sockets. (e.g. '2')"
default = 1
}
variable "vm_cpu_cores" {
type = number
description = "The number of virtual CPUs cores per socket. (e.g. '1')"
default = 1
}
variable "vm_cpu_type" {
type = string
description = "The CPU type to emulate."
default = "host"
}
variable "vm_mem_size" {
type = number
description = "The size for the virtual memory in MB. (e.g. '2048')"
default = 1024
}
variable "vm_disk_size" {
type = string
description = "The size for the virtual disk in MB. (e.g. '8G')"
default = "32G"
}
variable "vm_disk_controller_type" {
type = list(string)
description = "The virtual disk controller types in sequence. (e.g. 'pvscsi')"
default = ["pvscsi"]
}
variable "vm_disk_thin_provisioned" {
type = bool
description = "Thin provision the virtual disk."
default = true
}
variable "vm_network_adapter_model" {
type = string
description = "Model of the virtual network adapter. (e.g. 'vmxnet3' or 'e1000e')"
default = "e1000"
}
variable "vm_network_adapter_bridge" {
type = string
description = "Which Proxmox bridge to attach the adapter to."
default = "vmbr0"
}
variable "vm_network_adapter_vlan_tag" {
type = string
description = "If the adapter should tag packets."
default = ""
}
// Communicator Settings and Credentials
variable "build_username" {
type = string
description = "The username to login to the guest operating system. (e.g. rainpole)"
sensitive = true
}
variable "build_password" {
type = string
description = "The password to login to the guest operating system."
sensitive = true
}
variable "build_password_encrypted" {
type = string
description = "The encrypted password to login the guest operating system."
sensitive = true
}
variable "communicator_port" {
type = number
description = "The port for the communicator protocol."
default = 22
}
variable "communicator_timeout" {
type = string
description = "The timeout for the communicator protocol."
default = "30m"
}
// Provisioner Settings
variable "scripts" {
type = list(string)
description = "A list of scripts and their relative paths to transfer and execute."
default = []
}