{
  "builders": [
    {
      "communicator": "winrm",
      "cpus": "{{ user `cpus` }}",
      "disk_size": "{{user `disk_size`}}",
      "floppy_files": [
        "{{ user `floppy_dir` }}/{{ user `unattended_file_path` }}"
      ],
      "headless": "{{ user `headless` }}",
      "iso_checksum": "{{ user `iso_checksum` }}",
      "iso_url": "{{ user `iso_url` }}",
      "memory": "{{ user `memory` }}",
      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-virtualbox",
      "shutdown_command": "shutdown /s /t 10 /f /d p:4:1 /c \"Packer Shutdown\"",
      "shutdown_timeout": "15m",
      "switch_name": "{{user `hyperv_switch`}}",
      "type": "hyperv-iso",
      "winrm_password": "vagrant",
      "winrm_timeout": "12h",
      "winrm_username": "vagrant"
    },
    {
      "communicator": "winrm",
      "cpus": "{{ user `cpus` }}",
      "disk_size": "{{user `disk_size`}}",
      "floppy_files": [
        "{{ user `floppy_dir` }}/{{ user `unattended_file_path` }}"
      ],
      "guest_additions_mode": "{{ user `guest_additions_mode` }}",
      "guest_additions_path": "C:/users/vagrant/VBoxGuestAdditions.iso",
      "guest_additions_url": "{{ user `guest_additions_url` }}",
      "guest_os_type": "Windows2012_64",
      "hard_drive_interface": "sata",
      "headless": "{{ user `headless` }}",
      "iso_checksum": "{{ user `iso_checksum` }}",
      "iso_interface": "sata",
      "iso_url": "{{ user `iso_url` }}",
      "memory": "{{ user `memory` }}",
      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-virtualbox",
      "shutdown_command": "shutdown /s /t 10 /f /d p:4:1 /c \"Packer Shutdown\"",
      "shutdown_timeout": "15m",
      "type": "virtualbox-iso",
      "vboxmanage": [
        [
          "modifyvm",
          "{{.Name}}",
          "--vram",
          "48"
        ],
        [
          "modifyvm",
          "{{.Name}}",
          "--audio",
          "none"
        ]
      ],
      "winrm_password": "vagrant",
      "winrm_timeout": "12h",
      "winrm_username": "vagrant"
    },
    {
      "communicator": "winrm",
      "cpus": "{{ user `cpus` }}",
      "disk_size": "{{user `disk_size`}}",
      "floppy_files": [
        "{{ user `floppy_dir` }}/{{ user `unattended_file_path` }}"
      ],
      "guest_os_type": "win-2012",
      "iso_checksum": "{{ user `iso_checksum` }}",
      "iso_url": "{{ user `iso_url` }}",
      "memory": "{{ user `memory` }}",
      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-parallels",
      "parallels_tools_flavor": "win",
      "prlctl": [
        [
          "set",
          "{{.Name}}",
          "--efi-boot",
          "off"
        ]
      ],
      "prlctl_version_file": ".prlctl_version",
      "shutdown_command": "shutdown /s /t 10 /f /d p:4:1 /c \"Packer Shutdown\"",
      "shutdown_timeout": "15m",
      "type": "parallels-iso",
      "winrm_password": "vagrant",
      "winrm_timeout": "12h",
      "winrm_username": "vagrant"
    },
    {
      "communicator": "winrm",
      "cpus": "{{ user `cpus` }}",
      "disk_adapter_type": "lsisas1068",
      "disk_size": "{{user `disk_size`}}",
      "floppy_files": [
        "{{ user `floppy_dir` }}/{{ user `unattended_file_path` }}"
      ],
      "guest_os_type": "windows9srv-64",
      "headless": "{{ user `headless` }}",
      "iso_checksum": "{{ user `iso_checksum` }}",
      "iso_url": "{{ user `iso_url` }}",
      "memory": "{{ user `memory` }}",
      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-vmware",
      "shutdown_command": "shutdown /s /t 10 /f /d p:4:1 /c \"Packer Shutdown\"",
      "shutdown_timeout": "15m",
      "tools_upload_flavor": "windows",
      "tools_upload_path": "c:/Windows/Temp/vmware.iso",
      "type": "vmware-iso",
      "version": 11,
      "winrm_password": "vagrant",
      "winrm_timeout": "12h",
      "winrm_username": "vagrant"
    },
    {
      "communicator": "winrm",
      "cpus": "{{ user `cpus` }}",
      "disk_size": "{{user `disk_size`}}",
      "floppy_files": [
        "{{ user `floppy_dir` }}/{{ user `unattended_file_path` }}"
      ],
      "headless": "{{ user `headless` }}",
      "iso_checksum": "{{ user `iso_checksum` }}",
      "iso_url": "{{ user `iso_url` }}",
      "memory": "{{ user `memory` }}",
      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-qemu",
      "qemuargs": [
        [
          "-m",
          "{{ user `memory` }}"
        ],
        [
          "-smp",
          "{{ user `cpus` }}"
        ],
        [
          "-drive",
          "file={{ user `virtio_win_iso` }},media=cdrom,index=3"
        ],
        [
          "-drive",
          "file={{ user `build_directory` }}/packer-{{ user `template` }}-qemu/{{ .Name }},if=virtio,cache=writeback,discard=ignore,format=qcow2,index=1"
        ]
      ],
      "shutdown_command": "shutdown /s /t 10 /f /d p:4:1 /c \"Packer Shutdown\"",
      "shutdown_timeout": "15m",
      "type": "qemu",
      "winrm_password": "vagrant",
      "winrm_timeout": "12h",
      "winrm_username": "vagrant"
    }
  ],
  "post-processors": [
    [
      {
        "keep_input_artifact": true,
        "output": "{{ user `template` }}-{{.Provider}}.box",
        "type": "vagrant",
        "vagrantfile_template": "{{template_dir}}/vagrantfile-windows.template"
      }
    ]
  ],
  "provisioners": [
    {
      "cookbook_paths": [
        "{{template_dir}}/cookbooks"
      ],
      "guest_os_type": "windows",
      "run_list": [
        "packer::disable_uac",
        "packer::disable_restore",
        "packer::disable_windows_update",
        "packer::remove_defender",
        "packer::configure_power",
        "packer::disable_screensaver"
      ],
      "type": "chef-solo"
    },
    {
      "type": "windows-restart"
    },
    {
      "cookbook_paths": [
        "{{template_dir}}/cookbooks"
      ],
      "guest_os_type": "windows",
      "run_list": [
        "packer::vm_tools",
        "packer::features",
        "packer::enable_file_sharing",
        "packer::enable_remote_desktop",
        "packer::ui_tweaks"
      ],
      "type": "chef-solo"
    },
    {
      "type": "windows-restart"
    },
    {
      "cookbook_paths": [
        "{{template_dir}}/cookbooks"
      ],
      "guest_os_type": "windows",
      "run_list": [
        "packer::cleanup",
        "packer::defrag"
      ],
      "type": "chef-solo"
    },
    {
      "elevated_password": "vagrant",
      "elevated_user": "vagrant",
      "script": "{{template_dir}}/scripts/cleanup.ps1",
      "type": "powershell"
    }
  ],
  "variables": {
    "build_directory": "../../builds",
    "cpus": "2",
    "disk_size": "40000",
    "floppy_dir": "{{template_dir}}/answer_files",
    "guest_additions_mode": "attach",
    "guest_additions_url": "",
    "headless": "true",
    "hyperv_switch": "bento",
    "iso_checksum": "849734f37346385dac2c101e4aacba4626bb141c",
    "iso_url": "http://download.microsoft.com/download/6/2/A/62A76ABB-9990-4EFC-A4FE-C7D698DAEB96/9600.17050.WINBLUE_REFRESH.140317-1640_X64FRE_SERVER_EVAL_EN-US-IR3_SSS_X64FREE_EN-US_DV9.ISO",
    "memory": "4096",
    "template": "windows-2012r2-standard",
    "unattended_file_path": "2012_r2/Autounattend.xml",
    "virtio_win_iso": "~/virtio-win.iso"
  }
}