Created FreeBSD packer build config for Proxmox

This commit is contained in:
Gregory Ballantine 2024-04-18 00:42:00 -04:00
parent 05171a80a3
commit 05d6ec78c3
3 changed files with 56 additions and 4 deletions

7
.gitignore vendored
View File

@ -6,13 +6,12 @@ packer_cache/
crash.log crash.log
# https://www.packer.io/guides/hcl/variables # https://www.packer.io/guides/hcl/variables
# Exclude all .pkrvars.hcl files, which are likely to contain sensitive data, # Exclude all .pkrvars.hcl files, which are likely to contain sensitive data,
# such as password, private keys, and other secrets. These should not be part of # such as password, private keys, and other secrets. These should not be part of
# version control as they are data points which are potentially sensitive and # version control as they are data points which are potentially sensitive and
# subject to change depending on the environment. # subject to change depending on the environment.
# #
*.pkrvars.hcl *.pkrvars.hcl
# For built boxes # For built boxes
*.box *.box

View File

@ -0,0 +1,44 @@
variable "proxmox_apiuser" {
type = string
default = "packer"
}
variable "proxmox_apitoken" {
type = string
default = "changeme"
}
source "proxmox-iso" "freebsd-14" {
template_name = "freebsd-14"
template_description = "FreeBSD 14.0, generated on ${timestamp()}"
# shutdown_command = "echo 'packer' | sudo -S poweroff"
disks {
disk_size = "10G"
storage_pool = "templates"
type = "scsi"
}
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 = "geonosis"
iso_url = "https://download.freebsd.org/releases/amd64/amd64/ISO-IMAGES/14.0/FreeBSD-14.0-RELEASE-amd64-bootonly.iso"
iso_checksum = "sha256:71db8160a2339634bd9fbabbf10dd868148ebc9e1b08c1d8c4e5b954d30941ec"
iso_storage_pool = "iso"
unmount_iso = true
iso_download_pve = true
ssh_username = "xadmin"
ssh_password = "packer"
ssh_timeout = "20m"
}
build {
sources = ["source.proxmox-iso.freebsd-14"]
}

9
init.pkr.hcl Normal file
View File

@ -0,0 +1,9 @@
packer {
required_plugins {
name = {
version = "~> 1"
source = "github.com/hashicorp/proxmox"
}
}
}