From b62a4ece241dbba354dfb9c34e1d1f088250609a Mon Sep 17 00:00:00 2001 From: Gregory Ballantine Date: Fri, 24 Jul 2026 08:19:01 -0400 Subject: [PATCH] Adding FreeBSD 15 packer build --- FreeBSD/freebsd-15.pkr.hcl | 68 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 FreeBSD/freebsd-15.pkr.hcl diff --git a/FreeBSD/freebsd-15.pkr.hcl b/FreeBSD/freebsd-15.pkr.hcl new file mode 100644 index 0000000..3883ef1 --- /dev/null +++ b/FreeBSD/freebsd-15.pkr.hcl @@ -0,0 +1,68 @@ +variable "proxmox_apiuser" { + type = string + default = "packer" +} + +variable "proxmox_apitoken" { + type = string + default = "changeme" +} + +source "proxmox-iso" "freebsd-15" { + template_name = "freebsd-15" + template_description = "FreeBSD 15.1, generated on ${timestamp()}" + vm_id = "210" + boot_wait = "5s" + boot_key_interval = "200ms" + boot_command = ["", "", "", "", "freebsd", "", "", "", "", "", "", "", " ", "", "", "packerpacker", "", "95", "", "", "", "", " ", " ", "", "", "xadmin", "Remote admin user", "", "", "wheel", "", "", "", "", "", "", "", "", "packer", "packer", "", "", "", "", "", "pkg install -y qemu-guest-agent sudo", "echo 'xadmin ALL=(ALL:ALL) NOPASSWD:ALL' > /usr/local/etc/sudoers.d/xadmin", "sysrc qemu_guest_agent_enable=YES", "exit", ""] + + os = "other" + cores = "2" + sockets = "1" + cpu_type = "host" + memory = "2048" + scsi_controller = "virtio-scsi-single" + disks { + disk_size = "30G" + storage_pool = "templates" + type = "scsi" + format = "qcow2" + } + network_adapters { + bridge = "vmbr0" + model = "virtio" + } + + proxmox_url = "https://kamino.int.metaunix.net:8006/api2/json/" + insecure_skip_tls_verify = true + username = "${var.proxmox_apiuser}" + password = "${var.proxmox_apitoken}" + node = "kamino" + pool = "Templates" + + boot_iso { + type = "scsi" + iso_url = "https://download.freebsd.org/releases/amd64/amd64/ISO-IMAGES/15.1/FreeBSD-15.1-RELEASE-amd64-bootonly.iso" + iso_checksum = "sha256:3e74120a59512cefc35840443bdd05087c8a010a27cf8a6fbb4f7450824f092e" + iso_download_pve = true + iso_storage_pool = "iso" + unmount = true + } + + ssh_username = "xadmin" + ssh_password = "packer" + ssh_timeout = "20m" +} + +build { + sources = ["source.proxmox-iso.freebsd-15"] + + provisioner "shell" { + script = "scripts/freebsd-install.sh" + } + + provisioner "file" { + source = "scripts/initial-setup.sh" + destination = "/home/xadmin/initial-setup.sh" + } +}