Hello,
I am trying to build a couple of vmware images on vmware fusion but it gets stuck on: vmware-iso: Waiting for SSH to become available…
More detailed logs show this.
2021/01/21 07:53:08 packer-builder-vmware-iso plugin: GuestIP discovered device matching nat: vmnet8
2021/01/21 07:53:08 packer-builder-vmware-iso plugin: Lookup up IP information...
2021/01/21 07:53:08 packer-builder-vmware-iso plugin: GuestAddress found MAC address in VMX: 00:0c:29:24:11:62
2021/01/21 07:53:08 packer-builder-vmware-iso plugin: Trying DHCP leases path: /var/db/vmware/vmnet-dhcpd-vmnet8.leases
2021/01/21 07:53:08 packer-builder-vmware-iso plugin: Unable to find an exact match for DHCP lease. Falling back to a loose match for hw address 00:0c:29:24:11:62
2021/01/21 07:53:08 packer-builder-vmware-iso plugin: IP lookup failed: None of the found device(s) [vmnet8] has a DHCP lease for MAC 00:0c:29:24:11:62
2021/01/21 07:53:08 packer-builder-vmware-iso plugin: [DEBUG] Error getting SSH address: IP lookup failed: None of the found device(s) [vmnet8] has a DHCP lease for MAC 00:0c:29:24:11:62
2021/01/21 07:53:13 packer-builder-vmware-iso plugin: Located networkmapper configuration file using Fusion6: /Library/Preferences/VMware Fusion/networking
Here is my preseed file
d-i debian-installer/language string en
d-i debian-installer/locale string en_US.UTF-8
d-i finish-install/reboot_in_progress note
d-i localechooser/preferred-locale string en_US.UTF-8
d-i localechooser/supported-locales en_US.UTF-8
d-i netcfg/get_hostname string localhost
d-i netcfg/get_domain string localdomain
d-i console-setup/ask_detect boolean false
d-i keyboard-configuration/layout select USA
d-i keyboard-configuration/variant select USA
d-i keyboard-configuration/modelcode string pc105
d-i time/zone string UTC
d-i clock-setup/utc-auto boolean true
d-i clock-setup/utc boolean true
tasksel tasksel/first multiselect standard, ubuntu-server
d-i mirror/http/proxy string
d-i pkgsel/include string gnupg2 open-vm-tools openssh-server sudo
d-i pkgsel/install-language-support boolean false
d-i pkgsel/update-policy select none
d-i pkgsel/upgrade select full-upgrade
# Partitioning
d-i partman-auto/method string lvm
d-i partman-auto-lvm/guided_size string max
d-i partman-auto/choose_recipe select atomic
d-i partman-auto/disk string /dev/sda
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-lvm/device_remove_lvm boolean true
d-i partman/confirm_nooverwrite boolean true
d-i partman/confirm boolean true
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
# Create ansible user account.
d-i passwd/user-fullname string ansible
d-i passwd/username string ansible
d-i passwd/user-password password ansible
d-i passwd/user-password-again password ansible
d-i user-setup/allow-password-weak boolean true
d-i user-setup/encrypt-home boolean false
d-i passwd/user-default-groups ansible sudo
d-i preseed/late_command string \
in-target sed -i 's/^%sudo.*$/%sudo ALL=(ALL:ALL) NOPASSWD: ALL/g' /etc/sudoers; \
in-target /bin/sh -c "echo 'Defaults env_keep += \"SSH_AUTH_SOCK\"' >> /etc/sudoers"; \
in-target mkdir -p /home/ansible/.ssh; \
in-target /bin/sh -c "echo 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDppMZtppNDh9JsKr+rwPWK3yHt8H5oS8XBvkmSfBAiBta4/t7AP0JXY+/28BpneOAip10tOrKgS1jJKjmOHobuC5qUT9uy1uGFE8diIxBtwT5FRyq3gtbI2qJbWg4RVEAm9ZlVG5bsXCJJryKxPRkJpZi/KWoaeXe0tij3A+sQUu1ovMKYOozVwj6OEfj4LL6Z1Ov2KrgBGUwuE/G88ky07wURI5L0gRnY9UER49/XNPrBRqBuRhLoS0wObcta5guIvyY85L2tbCwdTXJb6e52+967b9QKqu7rn44j2m8Zm53+C60Cs7sVIoY5jH3IyixJOZl36evYXw9yvOzXs9Grn00byjdZDsGDxrUC/LW6jWZ3Ua+a9RiPc2+qfW6KwluehOB97zCtslbp5kl/T8GJAGhuAEJAyGWiySNSw1fXliCP5EQwZxMoLo8V4rm6UYaJgvcwndqATbaxo6y0qVol42tWVPcOR2QbksepaS9eLYnAxkMwMyeuhU2FWxtxa/oAr96FZ5g98omoT1r/sssbTdSKClAzQwrXymrlhsD50zW1/Qjl+plTQFtHldQ6j953LW9uuMHdMXlRaWv5mgxnRYrDJOLbumKC5mPYKLn+ws64nmrqhpIO/CYx4av1udUixRLRjYXbCzWkYCWGQhMQcO3HHRkZR/MEo5HNuYsy+Q== ansible' >> /home/ansible/.ssh/authorized_keys"; \
in-target chown -R ansible:ansible /home/ansible/; \
in-target chmod -R go-rwx /home/ansible/.ssh/authorized_keys; \
in-target sed -i 's/PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config;
Here is my build file:
{
"builders": [
{
"type": "vmware-iso",
"guest_os_type": "ubuntu-64",
"iso_url": "http://cdimage.ubuntu.com/ubuntu-legacy-server/releases/20.04/release/ubuntu-20.04.1-legacy-server-amd64.iso",
"iso_checksum": "f11bda2f2caed8f420802b59f382c25160b114ccc665dbac9c5046e7fceaced2",
"disk_type_id": "4",
"disk_size": 50000,
"headless": "true",
"version": "14",
"output_directory": "vmdk-workers",
"vm_name": "workers",
"memory": 2048,
"cores": 2,
"cpus": 2,
"http_directory": "files",
"boot_wait": "5s",
"boot_command": [
"<esc><wait>",
"<esc><wait>",
"<enter><wait>",
"/install/vmlinuz ",
"initrd=/install/initrd.gz ",
"auto=true ",
"preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed.cfg ",
"fb=false ",
"auto=true ",
"language=en ",
"locale=en_US ",
"priority=critical ",
"keymap=us ",
"netcfg/get_hostname={{ .Name }} ",
"netcfg/get_domain=localdomain ",
"debconf/frontend=noninteractive ",
"debian-installer/country=US ",
"console-setup/ask_detect=false ",
"console-keymaps-at/keymap=us ",
"DEBCONF_DEBUG=5 ",
"<enter>"
],
"ssh_username": "ansible",
"ssh_password": "ansible",
"ssh_timeout": "20m",
"shutdown_command": "sudo shutdown -P now"
}
],
"provisioners": [
{
"ansible_env_vars": [
"ANSIBLE_HOST_KEY_CHECKING=False",
"ANSIBLE_SSH_ARGS='-o ForwardAgent=yes'"
],
"playbook_file": "workers.yml",
"user": "ansible",
"type": "ansible"
}
]
}
Here is my /Library/Preferences/VMware Fusion/networking file:
VERSION=1,0
answer VNET_1_DHCP yes
answer VNET_1_DHCP_CFG_HASH CE56BCBD9740EDDFE96CA0467B4FCDA9C4DB93F8
answer VNET_1_HOSTONLY_NETMASK 255.255.255.0
answer VNET_1_HOSTONLY_SUBNET 172.16.114.0
answer VNET_1_VIRTUAL_ADAPTER yes
answer VNET_8_DHCP yes
answer VNET_8_DHCP_CFG_HASH E157C84313EF5A16805F5332A764F8734EF9724F
answer VNET_8_HOSTONLY_NETMASK 255.255.255.0
answer VNET_8_HOSTONLY_SUBNET 192.168.227.0
answer VNET_8_NAT yes
answer VNET_8_VIRTUAL_ADAPTER yes
Note: On my mac my /var/db/vmware/vmnet-dhcpd-vmnet8.leases is empty