Skip to content

Instantly share code, notes, and snippets.

@mrlesmithjr
Created April 4, 2019 04:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mrlesmithjr/2696ccc26c4c5ac9ac1662e854e98490 to your computer and use it in GitHub Desktop.
Save mrlesmithjr/2696ccc26c4c5ac9ac1662e854e98490 to your computer and use it in GitHub Desktop.
Packer Ubuntu live cd
{
"variables": {
"boot_command_prefix": "",
"box_tag": "",
"compression_level": "6",
"iso_checksum": "",
"iso_checksum_type": "",
"iso_url": "",
"vagrant_cloud_token": "",
"vagrant_cloud_username": "",
"vm_disk_adapter_type": "scsi",
"vm_disk_size": "36864",
"vm_memory": "512",
"vm_name": "",
"vm_ssh_password": "vagrant",
"vm_ssh_username": "vagrant",
"vm_vcpu": "1"
},
"builders": [
{
"accelerator": "kvm",
"boot_command": [
"<enter><wait><enter><wait10><enter><wait><enter><wait>",
"<enter><enter><enter><enter><enter><down><enter>",
"vagrant<wait><tab>",
"{{ user `vm_name` }}<wait><tab>",
"vagrant<wait><tab>",
"vagrant<wait><tab>",
"vagrant<wait><tab>",
"<enter>",
"<spacebar><tab><tab><enter><wait><tab><enter>",
"<wait60><wait60><wait60><wait60><enter><wait10><enter>"
],
"boot_wait": "60s",
"cpus": "{{ user `vm_vcpu` }}",
"disk_interface": "virtio",
"disk_size": "{{ user `vm_disk_size` }}",
"format": "qcow2",
"headless": true,
"http_directory": "http",
"iso_checksum_type": "{{ user `iso_checksum_type` }}",
"iso_checksum": "{{ user `iso_checksum` }}",
"iso_url": "{{ user `iso_url` }}",
"memory": "{{ user `vm_memory` }}",
"output_directory": "output-{{ user `vm_name` }}-{{ build_type }}-{{ timestamp }}",
"shutdown_command": "echo '/sbin/halt -h -p' > shutdown.sh; echo 'packer'|sudo -S bash 'shutdown.sh'",
"ssh_password": "{{ user `vm_ssh_password` }}",
"ssh_username": "{{ user `vm_ssh_username` }}",
"ssh_wait_timeout": "60m",
"type": "qemu",
"vm_name": "{{ user `vm_name` }}-{{ timestamp }}"
},
{
"boot_command": [
"<enter><wait><enter><wait10><enter><wait><enter><wait>",
"<enter><enter><enter><enter><enter><down><enter>",
"vagrant<wait><tab>",
"{{ user `vm_name` }}<wait><tab>",
"vagrant<wait><tab>",
"vagrant<wait><tab>",
"vagrant<wait><tab>",
"<enter>",
"<spacebar><tab><tab><enter><wait><tab><enter>",
"<wait60><wait60><wait60><wait60><enter><wait10><enter>"
],
"boot_wait": "60s",
"cpus": "{{ user `vm_vcpu` }}",
"disk_size": "{{ user `vm_disk_size` }}",
"guest_os_type": "Ubuntu_64",
"hard_drive_interface": "{{ user `vm_disk_adapter_type` }}",
"headless": false,
"http_directory": "http",
"iso_checksum_type": "{{ user `iso_checksum_type` }}",
"iso_checksum": "{{ user `iso_checksum` }}",
"iso_url": "{{ user `iso_url` }}",
"memory": "{{ user `vm_memory` }}",
"output_directory": "output-{{ user `vm_name` }}-{{ build_type }}-{{ timestamp }}",
"shutdown_command": "echo '/sbin/halt -h -p' > shutdown.sh; echo 'packer'|sudo -S bash 'shutdown.sh'",
"ssh_password": "{{ user `vm_ssh_password` }}",
"ssh_username": "{{ user `vm_ssh_username` }}",
"ssh_wait_timeout": "60m",
"type": "virtualbox-iso",
"vm_name": "{{ user `vm_name` }}-{{ timestamp }}"
},
{
"boot_command": [
"<enter><wait><enter><wait10><enter><wait><enter><wait>",
"<enter><enter><enter><enter><enter><down><enter>",
"vagrant<wait><tab>",
"{{ user `vm_name` }}<wait><tab>",
"vagrant<wait><tab>",
"vagrant<wait><tab>",
"vagrant<wait><tab>",
"<enter>",
"<spacebar><tab><tab><enter><wait><tab><enter>",
"<wait60><wait60><wait60><wait60><enter><wait10><enter>"
],
"boot_wait": "60s",
"cpus": "{{ user `vm_vcpu` }}",
"disk_adapter_type": "{{ user `vm_disk_adapter_type` }}",
"disk_size": "{{ user `vm_disk_size` }}",
"disk_type_id": 0,
"guest_os_type": "ubuntu-64",
"headless": true,
"http_directory": "http",
"iso_checksum_type": "{{ user `iso_checksum_type` }}",
"iso_checksum": "{{ user `iso_checksum` }}",
"iso_url": "{{ user `iso_url` }}",
"memory": "{{ user `vm_memory` }}",
"output_directory": "output-{{ user `vm_name` }}-{{ build_type }}-{{ timestamp }}",
"shutdown_command": "echo '/sbin/halt -h -p' > shutdown.sh; echo 'packer'|sudo -S bash 'shutdown.sh'",
"ssh_password": "{{ user `vm_ssh_password` }}",
"ssh_username": "{{ user `vm_ssh_username` }}",
"ssh_wait_timeout": "60m",
"type": "vmware-iso",
"vm_name": "{{ user `vm_name` }}-{{ timestamp }}",
"vmx_data": {
"ethernet0.pciSlotNumber": "32"
},
"vmx_remove_ethernet_interfaces": true
}
],
"provisioners": [
{
"type": "shell",
"scripts": [
"scripts/base.sh",
"scripts/vagrant.sh",
"scripts/virtualbox.sh",
"scripts/vmware.sh",
"scripts/cleanup.sh",
"scripts/zerodisk.sh"
]
}
],
"post-processors": [
[
{
"compression_level": "{{ user `compression_level` }}",
"output": "{{ user `vm_name` }}-{{.Provider}}-{{ timestamp }}.box",
"type": "vagrant"
},
{
"type": "vagrant-cloud",
"box_tag": "{{ user `box_tag` }}",
"access_token": "{{ user `vagrant_cloud_token` }}",
"version": "{{ timestamp }}"
},
{
"type": "manifest",
"output": "manifest.json",
"strip_path": true
}
]
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment