I tried this template. But on Windows 10 the VMWare Workstation GUI opens and shows the Ubuntu installation screen. It doesn't proceed by itself. I click the button to
begin installation and once it finishes it shutsdown. I can restart the OS from the Workstation GUI. Open SSH is not found and then I manually install it but then SSH connection fails since packer is waiting for it.
{
"_comment": "Build with `packer build ubuntu.json`",
"builders": [
{
"boot_command": [
"{{ user `boot_command_prefix` }}",
"/install/vmlinuz noapic ",
"initrd=/install/initrd.gz ",
"file=/floppy/{{ user `preseed` }} ",
"debian-installer={{ user `locale` }} auto locale={{ user `locale` }} kbd-chooser/method=us ",
"hostname={{ user `hostname` }} ",
"grub-installer/bootdev=/dev/sda<wait> ",
"fb=false debconf/frontend=noninteractive ",
"keyboard-configuration/modelcode=SKIP keyboard-configuration/layout=USA ",
"keyboard-configuration/variant=USA console-setup/ask_detect=false ",
"passwd/user-fullname={{ user `ssh_fullname` }} ",
"passwd/user-password={{ user `ssh_password` }} ",
"passwd/user-password-again={{ user `ssh_password` }} ",
"passwd/username={{ user `ssh_username` }} ",
"-- <enter>"
],
"disk_size": "{{ user `disk_size` }}",
"floppy_files": [
"http/{{ user `preseed` }}"
],
"guest_os_type": "{{ user `vmware_guest_os_type` }}",
"headless": "{{ user `headless` }}",
"http_directory": "http",
"iso_checksum": "{{ user `iso_checksum` }}",
"iso_checksum_type": "{{ user `iso_checksum_type` }}",
"iso_urls": [
"{{ user `iso_path` }}/{{ user `iso_name` }}",
"{{ user `iso_url` }}"
],
"output_directory": "output-{{ user `vm_name` }}-vmware-iso",
"shutdown_command": "echo '{{ user `ssh_password` }}'|sudo -S shutdown -P now",
"ssh_password": "{{ user `ssh_password` }}",
"ssh_username": "{{ user `ssh_username` }}",
"ssh_timeout": "10000s",
"tools_upload_flavor": "linux",
"type": "vmware-iso",
"vm_name": "{{ user `vm_name` }}",
"vmx_data": {
"ethernet0.pciSlotNumber": "32",
"memsize": "{{ user `memory` }}",
"numvcpus": "{{ user `cpus` }}"
},
"vmx_remove_ethernet_interfaces": true
},
{
"boot_command": [
"{{ user `boot_command_prefix` }}",
"/install/vmlinuz noapic ",
"initrd=/install/initrd.gz ",
"file=/floppy/{{ user `preseed` }} ",
"debian-installer={{ user `locale` }} auto locale={{ user `locale` }} kbd-chooser/method=us ",
"hostname={{ user `hostname` }} ",
"grub-installer/bootdev=/dev/sda<wait> ",
"fb=false debconf/frontend=noninteractive ",
"keyboard-configuration/modelcode=SKIP keyboard-configuration/layout=USA ",
"keyboard-configuration/variant=USA console-setup/ask_detect=false ",
"passwd/user-fullname={{ user `ssh_fullname` }} ",
"passwd/user-password={{ user `ssh_password` }} ",
"passwd/user-password-again={{ user `ssh_password` }} ",
"passwd/username={{ user `ssh_username` }} ",
"-- <enter>"
],
"disk_size": "{{ user `disk_size` }}",
"floppy_files": [
"http/{{ user `preseed` }}"
],
"guest_additions_path": "VBoxGuestAdditions_{{.Version}}.iso",
"guest_os_type": "{{ user `virtualbox_guest_os_type` }}",
"hard_drive_interface": "sata",
"headless": "true",
"iso_checksum": "{{ user `iso_checksum` }}",
"iso_checksum_type": "{{ user `iso_checksum_type` }}",
"iso_urls": [
"{{ user `iso_path` }}/{{ user `iso_name` }}",
"{{ user `iso_url` }}"
],
"output_directory": "output-{{ user `vm_name` }}-virtualbox-iso",
"post_shutdown_delay": "1m",
"shutdown_command": "echo '{{ user `ssh_password` }}'|sudo -S shutdown -P now",
"ssh_password": "{{ user `ssh_password` }}",
"ssh_username": "{{ user `ssh_username` }}",
"ssh_wait_timeout": "10000s",
"type": "virtualbox-iso",
"vboxmanage": [
[
"modifyvm", "{{.Name}}", "--nictype1", "virtio"
],
[
"modifyvm", "{{.Name}}", "--memory", "{{ user `memory` }}"
],
[
"modifyvm", "{{.Name}}", "--cpus", "{{ user `cpus` }}"
]
],
"virtualbox_version_file": ".vbox_version",
"vm_name": "{{user `vm_name`}}"
},
{
"boot_command": [
"{{ user `boot_command_prefix` }}",
"/install/vmlinuz noapic ",
"initrd=/install/initrd.gz ",
"file=/floppy/{{ user `preseed` }} ",
"debian-installer={{ user `locale` }} auto locale={{ user `locale` }} kbd-chooser/method=us ",
"hostname={{ user `hostname` }} ",
"grub-installer/bootdev=/dev/sda<wait> ",
"fb=false debconf/frontend=noninteractive ",
"keyboard-configuration/modelcode=SKIP keyboard-configuration/layout=USA ",
"keyboard-configuration/variant=USA console-setup/ask_detect=false ",
"passwd/user-fullname={{ user `ssh_fullname` }} ",
"passwd/user-password={{ user `ssh_password` }} ",
"passwd/user-password-again={{ user `ssh_password` }} ",
"passwd/username={{ user `ssh_username` }} ",
"-- <wait><enter>"
],
"disk_size": "{{ user `disk_size` }}",
"floppy_files": [
"http/{{ user `preseed` }}"
],
"guest_os_type": "{{ user `parallels_guest_os_type` }}",
"http_directory": "http",
"iso_checksum": "{{ user `iso_checksum` }}",
"iso_checksum_type": "{{ user `iso_checksum_type` }}",
"iso_urls": [
"{{ user `iso_path` }}/{{ user `iso_name` }}",
"{{ user `iso_url` }}"
],
"output_directory": "output-{{ user `vm_name` }}-parallels-iso",
"parallels_tools_flavor": "lin",
"prlctl": [
[
"set", "{{.Name}}", "--memsize", "{{ user `memory` }}"
],
[
"set", "{{.Name}}", "--cpus", "{{ user `cpus` }}"
]
],
"prlctl_version_file": ".prlctl_version",
"shutdown_command": "echo '{{ user `ssh_password` }}'|sudo -S shutdown -P now",
"ssh_password": "{{ user `ssh_password` }}",
"ssh_username": "{{ user `ssh_username` }}",
"ssh_wait_timeout": "10000s",
"type": "parallels-iso",
"vm_name": "{{ user `vm_name` }}"
}
],
"post-processors": [
{
"keep_input_artifact": false,
"output": "box/{{.Provider}}/{{user `vm_name`}}-{{user `version`}}.box",
"type": "vagrant",
"vagrantfile_template": "{{ user `vagrantfile_template` }}"
}
],
"provisioners": [
{
"environment_vars": [
"CLEANUP_PAUSE={{user `cleanup_pause`}}",
"DEBIAN_FRONTEND=noninteractive",
"DESKTOP={{user `desktop`}}",
"UPDATE={{user `update`}}",
"INSTALL_VAGRANT_KEY={{user `install_vagrant_key`}}",
"SSH_USERNAME={{user `ssh_username`}}",
"SSH_PASSWORD={{user `ssh_password`}}",
"http_proxy={{user `http_proxy`}}",
"https_proxy={{user `https_proxy`}}",
"ftp_proxy={{user `ftp_proxy`}}",
"rsync_proxy={{user `rsync_proxy`}}",
"no_proxy={{user `no_proxy`}}"
],
"execute_command": "echo '{{ user `ssh_password` }}' | {{.Vars}} sudo -E -S bash '{{.Path}}'",
"scripts": [
"script/desktop.sh",
"script/update.sh",
"script/vagrant.sh",
"script/sshd.sh",
"script/vmware.sh",
"script/virtualbox.sh",
"script/parallels.sh",
"script/motd.sh",
"{{user `custom_script`}}",
"script/minimize.sh",
"script/cleanup.sh"
],
"type": "shell",
"expect_disconnect": "true"
}
],
"variables": {
"boot_command_prefix": "<esc><esc><enter><wait>",
"cleanup_pause": "",
"cpus": "1",
"custom_script": "custom-script.sh",
"desktop": "false",
"disk_size": "65536",
"ftp_proxy": "{{env `ftp_proxy`}}",
"headless": "false",
"http_proxy": "{{env `http_proxy`}}",
"https_proxy": "{{env `https_proxy`}}",
"install_vagrant_key": "true",
"iso_checksum": "a5b0ea5918f850124f3d72ef4b85bda82f0fcd02ec721be19c1a6952791c8ee8",
"iso_checksum_type": "sha256",
"iso_name": "ubuntu-18.04.1-server-amd64.iso",
"iso_path": "/Volumes/Storage/software/ubuntu",
"locale": "en_US",
"memory": "512",
"no_proxy": "{{env `no_proxy`}}",
"parallels_guest_os_type": "ubuntu",
"preseed" : "preseed.cfg",
"rsync_proxy": "{{env `rsync_proxy`}}",
"hostname": "vagrant",
"ssh_fullname": "vagrant",
"ssh_password": "vagrant",
"ssh_username": "vagrant",
"update": "false",
"vagrantfile_template": "",
"version": "0.1.0",
"virtualbox_guest_os_type": "Ubuntu_64",
"vm_name": "ubuntu1804",
"vmware_guest_os_type": "ubuntu-64"
}
}