Получение времени ожидания при создании образа QCOW2 с Ubuntu 18.04 ISO с помощью упаковщика с использованием нижеприведенного шаблона. Ниже упаковщик. json используется.
Любая помощь по этому вопросу будет оценена по этому вопросу. Тот же шаблон работает для изображения 14.04. Добавлены подсвеченные qemuargs для UEFI: ["-b ios", "/usr/share/qemu/OVMF.fd"], который необходим для образа Ubuntu 18.04:
[packer-host] out: 2020/02/06 04:36:02 packer: 2020/02/06 04:36:02 [INFO] Attempting SSH connection...
[packer-host] out: 2020/02/06 04:36:02 packer: 2020/02/06 04:36:02 reconnecting to TCP connection for SSH
[packer-host] out: 2020/02/06 04:36:02 packer: 2020/02/06 04:36:02 handshaking with SSH
[packer-host] out: 2020/02/06 04:36:33 ui error: [1;31m==> qemu: Timeout waiting for SSH.[0m
[packer-host] out: [1;31m==> qemu: Timeout waiting for SSH.[0m
[packer-host] out: 2020/02/06 04:36:33 ui: [1;32m==> qemu: Deleting output directory...[0m
{
"builders":
[
{
"type": "qemu",
"iso_url": "xxxx-xxxxx-9e3083d.iso",
"iso_checksum": "b9fc1719eaee3c31e65dda6d6ba31313",
"iso_checksum_type": "md5",
"output_directory": "output",
"ssh_wait_timeout": "30s",
"disk_size": 81920,
"format": "qcow2",
"headless": true,
"accelerator": "kvm",
"ssh_host_port_min": 2222,
"ssh_host_port_max": 2229,
"ssh_username": "admin",
"ssh_password": "xxxx123",
"ssh_port": 22,
"qemuargs": [
[ "-serial", "file:serial.out" ],
[ "-device", "e1000,netdev=user.0" ],
[ "-cpu", "host" ],
[ "-smp", "4" ],
[ "-m", "8192M" ],
[ "-bios", "/usr/share/qemu/OVMF.fd"]
],
"ssh_wait_timeout": "120m",
"shutdown_command": "echo xxxx123 | sudo -S shutdown -P now",
"vm_name": "xxxx-xxxx-9e3083d.qcow2",
"net_device": "virtio-net",
"disk_interface": "virtio",
"boot_wait": "2s",
"boot_command": [
"<enter><wait>",
"<enter>"
]
}
],
"provisioners": [
{
"type": "file",
"source": "/etc/init/ttyS0.conf",
"destination": "/var/tmp/ttyS0.conf"
},
{
"type": "shell",
"inline": [
"sleep 120",
"echo '=> Enabling ttyS0 service'",
"echo xxxx123 | sudo -S cp /var/tmp/ttyS0.conf /etc/init/",
"echo xxxx123 | sudo -S bash -c 'echo Azure > /opt/xxxx/etc/cloud_instance'",
"echo xxxx123 | sudo -S chmod g+r /opt/xxxx/etc/cloud_instance",
"echo '=> Updating hugetlbfs mount point'",
"echo xxxx123 | sudo -S mkdir -p /huge",
"echo xxxx123 | sudo -S grep -q hugetlbfs /etc/fstab && sudo sed -i '/hugetlbfs/d' /etc/fstab && sudo bash -c 'echo \"hugetlbfs /huge hugetlbfs defaults 0 0\" >> /etc/fstab'",
"echo '=> Disabling password authentication'",
"echo xxxx123 | sudo -S sed -i 's/#PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config",
"echo '=> Disabling SWAP partition for Azure builds'",
"echo xxxx123 | sudo -S sed -i '/swap/d' /etc/fstab",
"echo xxxx123 | sudo -S sed -i 's/^/#/' /etc/initramfs-tools/conf.d/resume",
"echo '=> Cleaning up SSH keys'",
"echo xxxx123 | sudo -S rm -rf /home/admin/.ssh/*",
"echo xxxx123 | sudo -S shred -fu /etc/ssh/*_key /etc/ssh/*_key.pub",
"echo '=> Cleaning up cloud-init dir'",
"echo xxxx123 | sudo -S rm -rf /var/lib/cloud/*",
"echo xxxx123 | sudo -S rm -rf /var/log/cloud-init*",
"echo '=> Copy the 91_xxxx.cfg file to cloud.cfg.d folder'",
"echo xxxx123 | sudo -S cp /etc/cloud.cfg.d/91_xxxx.cfg /etc/cloud/cloud.cfg.d/ 2>/dev/null || :",
"echo '=> Change the Permissions for 91_xxxx.cfg file'",
"echo xxxx123 | sudo -S chown xxxx:xxxx /etc/cloud/cloud.cfg.d/91_xxxx.cfg",
"echo xxxx123 | sudo -S chmod 664 /etc/cloud/cloud.cfg.d/91_xxxx.cfg",
"echo '=> Adding Azure DataSource'",
"echo xxxx123 | sudo -S sed -i 's/datasource_list.*/datasource_list: [ ConfigDrive, OVF, Azure ]/g' /etc/cloud/cloud.cfg.d/91_xxxx.cfg",
"echo '=> Uncomment the apt repository in sources.list file to download packages'",
"echo xxxx123 | sudo -S [ ! -f /etc/init.d/vnms ] && echo xxxx123 | sudo -S sed -i.bak '7,$ s/# #_//' /etc/apt/sources.list",
"echo '=> Updating apt sources list to Azure'",
"echo xxxx123 | sudo -S sed -i 's/[a-z][a-z].archive.ubuntu.com/azure.archive.ubuntu.com/g' /etc/apt/sources.list",
"echo xxxx123 | sudo -S sleep 120",
"echo xxxx123 | sudo -S apt-get update",
"echo xxxx123 | sudo -S sleep 120",
"echo '=> Installing LTS HWE kernel'",
"echo xxxx123 | sudo -S apt-get install --yes linux-image-virtual-lts-vivid linux-lts-vivid-tools-common",
"echo '=>Installing HyperV KVP daemon'",
"echo xxxx123 | sudo -S apt-get install --yes hv-kvp-daemon-init",
"echo '=> Updating Grub command line'",
"echo xxxx123 | sudo -S sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT.*/GRUB_CMDLINE_LINUX_DEFAULT=\"console=ttyS0,115200n8 earlyprintk=ttyS0,115200 rootdelay=300\"/' /etc/default/grub",
"echo xxxx123 | sudo -S [ -f /etc/default/grub.d/50-xxxx-grub.cfg ] && sudo -S sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT.*/GRUB_CMDLINE_LINUX_DEFAULT=\"console=tty1 console=ttyS0,115200n8 earlyprintk=ttyS0,115200 rootdelay=300\"/' /etc/default/grub.d/50-xxxx-grub.cfg",
"echo xxxx123 | sudo -S rm -f /etc/grub.d/50_xxxx",
"echo xxxx123 | sudo -S update-grub2",
"echo '=> Installing Windows Azure Linuxagent and update /etc/waagent.conf'",
"echo xxxx123 | sudo -S apt-get purge --yes waagent*",
"echo xxxx123 | sudo -S apt-get install --yes walinuxagent",
"echo xxxx123 | sudo -S service walinuxagent restart",
"echo xxxx123 | sudo -S waagent -force -deprovision",
"export HISTSIZE=0",
"echo '=> Revert to original sources.list file after downloading the packages.'",
"echo xxxx123 | sudo -S [ ! -f /etc/init.d/vnms ] && echo xxxx123 | sudo -S mv /etc/apt/sources.list.bak /etc/apt/sources.list",
"echo '=> Clearning Bash history'",
"echo xxxx123 | sudo -S rm -rf .bash_history && unset HISTFILE"
]
}
]
}