It takes some time to write zeros to the disk and it aborts later if
less than 20GB are available.
Add variable to the template, cleanup script and add a new option to
wrapacker.
In older versions of arch linux, the hashicorp packer package (and
binary) was named packer-io to avoid clashing with a pre-existing AUR
helper called packer. Recently, the AUR helper package was renamed to
packer-aur and the old packer-io (and corresponding binary) was
renamed to packer.
https://www.archlinux.org/packages/community/x86_64/packer/
Previously, the wrapacker script would unconditionally set PACKER_BIN
to "packer-io" if the file /etc/arch-release existed. We now instead
the check for the existence of a packer-io command, and fall back to
the default "packer" in case that doesn't exist.
mirrors.kernel.org is redirecting to mirrors.edge.kernel.org, causing
ISO_NAME to be set to an empty string. This resulted in ISO_URL being
set to the wrong value and packer failing to download the iso.
It seems the archlinux dropped support for dual iso.
According the official mirror (and many other which I have checked)
there is only -x86_64.iso file.
You can see it here: https://mirrors.kernel.org/archlinux/iso/latest/
This fix will ensure that the correct signature is read when the image
is parsed in sha1sum.txt file.
The nomenclature used with wrapacker is a bit of a mixture between the
Packer "builder" used and the Vagrant "provider" that will eventually
launch the resulting image that it creates. This tries to be a bit more
liberal with the input that will be accepted for that option.
Minor reorganization here so the --dry-run option is listed at the end,
and we document that the --timeout option takes an argument. I had also
missed showing the `[-d]` option on the usage message previously.
I also slightly re-organized how the default was set, so it will always
rely on the status of the $timeout variable and also the final variable
name matches the name of the Packer option.
This does not yet call the actual `packer build` command, but it does
grab the metadata correctly. I'll have to change up the option flag
parsing to include the provider type, then it can just call the complete
command rather than passing options through.