dataset/seed/applicationservice/2022.03.08/base-fedora/packer/os/recipe.json
2022-03-08 19:42:28 +01:00

71 lines
2.4 KiB
JSON

{
"builders": [
{
"format": "qcow2",
"headless": true,
"output_directory": "{{user `tmp_directory`}}/output",
"shutdown_command": "echo packer | sudo -S shutdown -P now",
"ssh_password": "qemubuild",
"ssh_username": "qemubuild",
"ssh_wait_timeout": "120m",
"type": "qemu",
"disk_interface": "virtio",
"vm_name": "image.img",
"qemuargs": [
["-drive", "file=output/image.img,if=virtio,cache=writeback,discard=ignore,format=qcow2"],
["-drive", "if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE.fd"]
],
"memory": "2048",
"vnc_bind_address": "0.0.0.0",
"boot_command": [
"<up>e<down><down><end> inst.text inst.gpt inst.ks=http://{{ .HTTPIP }}:{{ .HTTPPort }}/ks-34.cfg <leftCtrlOn>x<leftCtrlOff> <wait>"
],
"disk_size": "4096",
"iso_checksum_type": "sha256",
"iso_checksum": "e1a38b9faa62f793ad4561b308c31f32876cfaaee94457a7a9108aaddaeec406",
"iso_url": "https://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/iso/Fedora-Server-netinst-x86_64-34-1.2.iso",
"http_directory": "{{user `tmp_directory`}}/http"
}
],
"provisioners": [
{
"type": "file",
"source": "{{user `tmp_directory`}}/bin",
"destination": "/tmp/bin"
},
{
"type": "shell",
"inline": [
"sudo mv /tmp/bin/* /usr/local/bin",
"sudo chown root: /usr/local/bin/*",
"sudo chmod +x /usr/local/bin/*"
]
},
{
"type": "file",
"source": "{{user `tmp_directory`}}/scripts",
"destination": "/tmp/scripts"
},
{
"type": "shell",
"inline": [
"sudo chown root: /tmp/scripts/*",
"sudo chmod +x /tmp/scripts/*",
"sudo risotto-run-parts /tmp/scripts/"
]
}
],
"post-processors": [
{
"type": "shell-local",
"inline": [
"sleep 5",
"mkdir -p {{user `tmp_directory`}}/tmp",
"LIBGUESTFS_BACKEND=direct virt-sysprep -a {{user `tmp_directory`}}/output/image.img",
"LIBGUESTFS_BACKEND=direct virt-sparsify --check-tmpdir=ignore --tmp {{user `tmp_directory`}}/tmp/ --compress {{user `tmp_directory`}}/output/image.img {{user `tmp_directory`}}/image.img",
"sha256sum {{user `tmp_directory`}}/image.img > {{user `tmp_directory`}}/image.sha256",
"rm -rf {{user `tmp_directory`}}/tmp {{user `tmp_directory`}}/output"
]
}
]
}