{ "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": [ "e inst.text inst.gpt inst.ks=http://{{ .HTTPIP }}:{{ .HTTPPort }}/ks-34.cfg x " ], "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" ] } ] }