mirror of
https://github.com/GoodOlClint/PSProxmoxVE.git
synced 2026-08-25 03:46:49 +00:00
feat(ci): automated nested PVE provisioning for integration tests
Workflow now provisions a throwaway nested PVE VM via Terraform, runs integration tests against it, then destroys it. Uses proxmox-auto-install-assistant to bake the answer file and a first-boot script (installs qemu-guest-agent) directly into the ISO. IP is discovered via the QEMU guest agent on the parent PVE, eliminating the need for static IP configuration. Supports both PVE 8.x and 9.x via workflow_dispatch version selector. Skip provisioning with skip_provision=true to test against a pre-existing PVE. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -57,9 +57,8 @@ variable "disk_storage" {
|
||||
}
|
||||
|
||||
variable "iso_file_id" {
|
||||
description = "Proxmox file ID of the PVE installation ISO (e.g. nas-nfs:iso/proxmox-ve_9.1-1.iso)"
|
||||
description = "Proxmox file ID of the auto-install PVE ISO (e.g. local:iso/proxmox-ve_9.1-1-auto.iso)"
|
||||
type = string
|
||||
default = "nas-nfs:iso/proxmox-ve_9.1-1.iso"
|
||||
}
|
||||
|
||||
variable "network_bridge" {
|
||||
@@ -68,32 +67,9 @@ variable "network_bridge" {
|
||||
default = "Core"
|
||||
}
|
||||
|
||||
variable "test_vm_ip" {
|
||||
description = "Static IP address to assign to the nested PVE instance"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "test_vm_gateway" {
|
||||
description = "Default gateway for the nested PVE instance"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "test_vm_netmask_bits" {
|
||||
description = "CIDR prefix length for the nested PVE network (e.g. 24 for /24)"
|
||||
type = string
|
||||
default = "24"
|
||||
}
|
||||
|
||||
variable "test_vm_dns" {
|
||||
description = "DNS server for the nested PVE instance"
|
||||
type = string
|
||||
default = "1.1.1.1"
|
||||
}
|
||||
|
||||
variable "test_vm_password" {
|
||||
description = "Root password for the nested PVE instance"
|
||||
type = string
|
||||
sensitive = true
|
||||
default = "Testpass123!"
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user