github.com/yoctocloud/packer@v0.6.2-0.20160520224004-e11a0a18423f/CHANGELOG.md (about)

     1  ## (Unreleased)
     2  
     3  FEATURES:
     4  
     5    * **New Checksum post-processor**: Create a checksum file from your build artifacts as part of your build. [GH-3492]
     6  
     7  IMPROVEMENTS:
     8  
     9    * builder/azure: Now pre-validates `capture_container_name` and `capture_name_prefix` [GH-3537]
    10    * builder/google: Added support for `image_family` [GH-3503]
    11    * builder/null: Can now be used with WinRM [GH-2525]
    12    * builder/parallels: Added pause between `boot_command` when running with `-debug` [GH-3547]
    13    * builder/virtualbox: Added pause between `boot_command` when running with `-debug` [GH-3542]
    14    * builder/vmware: Added pause between `boot_command` when running with `-debug` [GH-3542]
    15    * builder/qemu: Added pause between `boot_command` when running with `-debug` [GH-3547]
    16    * post-processor/compress: Added support for bgzf compression [GH-3501]
    17  
    18  BUG FIXES:
    19  
    20    * post-processor/shell-local: Do not set execute bit on artifact file [GH-3505]
    21    * post-processor/vsphere: Fix upload failures with vsphere [GH-3321]
    22  
    23  ## 0.10.1 (May 7, 2016)
    24  
    25  FEATURES:
    26  
    27    * `azure-arm` builder: Can now build Windows images, and supports additional
    28      configuration. Please refer to the documentation for details.
    29  
    30  IMPROVEMENTS:
    31  
    32    * core: Added support for `ATLAS_CAFILE` and `ATLAS_CAPATH` [GH-3494]
    33    * builder/azure: Improved build cancellation and cleanup of partially-
    34      provisioned resources [GH-3461]
    35    * builder/azure: Improved logging [GH-3461]
    36    * builder/azure: Added support for US Government and China clouds [GH-3461]
    37    * builder/azure: Users may now specify an image version [GH-3461]
    38    * builder/azure: Added device login [GH-3461]
    39    * builder/docker: Added `privileged` build option [GH-3475]
    40    * builder/google: Packer now identifies its version to the service [GH-3465]
    41    * provisioner/shell: Added `remote_folder` and `remote_file` options
    42      [GH-3462]
    43    * post-processor/compress: Added support for `bgzf` format and added
    44      `format` option [GH-3501]
    45  
    46  BUG FIXES:
    47  
    48    * core: Fix hang after pressing enter key in `-debug` mode [GH-3346]
    49    * provisioner/chef: Use custom values for remote validation key path
    50      [GH-3468]
    51  
    52  ## 0.10.0 (March 14, 2016)
    53  
    54  BACKWARDS INCOMPATIBILITIES:
    55  
    56    * Building Packer now requires go >= 1.5 (>= 1.6 is recommended). If you want
    57      to continue building with go 1.4 you can remove the `azurearmbuilder` line
    58      from `command/plugin.go`.
    59  
    60  FEATURES:
    61  
    62    * **New `azure-arm` builder**: Build virtual machines in Azure Resource
    63      Manager
    64  
    65  IMPROVEMENTS:
    66  
    67    * builder/google: Added support for `disk_type` [GH-2830]
    68    * builder/openstack: Added support for retrieving the Administrator password
    69      when using WinRM if no `winrm_password` is set [GH-3209]
    70    * provisioner/ansible: Added the `empty_groups` parameter [GH-3232]
    71    * provisioner/ansible: Added the `user` parameter [GH-3276]
    72    * provisioner/ansible: Don't use deprecated ssh option with Ansible 2.0
    73      [GH-3291]
    74    * provisioner/puppet-masterless: Add `ignore_exit_codes` parameter [GH-3349]
    75  
    76  BUG FIXES:
    77  
    78    * builders/parallels: Handle `output_directory` containing `.` and `..`
    79      [GH-3239]
    80    * provisioner/ansible: os.Environ() should always be passed to the ansible
    81      command. [GH-3274]
    82  
    83  ## 0.9.0 (February 19, 2016)
    84  
    85  BACKWARDS INCOMPATIBILITIES:
    86  
    87    * Packer now ships as a single binary, including plugins. If you install
    88      packer 0.9.0 over a previous packer installation, **you must delete all of
    89      the packer-* plugin files** or packer will load out-of-date plugins from
    90      disk.
    91    * Release binaries are now provided via <https://releases.hashicorp.com>.
    92    * Packer 0.9.0 is now built with Go 1.6.
    93    * core: Plugins that implement the Communicator interface must now implement
    94      a DownloadDir method [GH-2618]
    95    * builder/amazon: Inline `user_data` for EC2 is now base64 encoded
    96      automatically [GH-2539]
    97    * builder/parallels: `parallels_tools_host_path` and `guest_os_distribution`
    98      have been replaced by `guest_os_type`; use `packer fix` to update your
    99      templates [GH-2751]
   100  
   101  FEATURES:
   102  
   103    * **Chef on Windows**: The chef provisioner now has native support for
   104      Windows using Powershell and WinRM [GH-1215]
   105    * **New `vmware-esxi` feature**: Packer can now export images from vCloud or
   106      vSphere during the build [GH-1921]
   107    * **New Ansible Provisioner**: `ansible` provisioner supports remote
   108      provisioning to keep your build image cleaner [GH-1969]
   109    * **New Amazon Import post-processor**: `amazon-import` allows you to upload an OVA-based VM to Amazon EC2 [GH-2962]
   110    * **Shell Local post-processor**: `shell-local` allows you to run shell
   111      commands on the host after a build has completed for custom packaging or
   112      publishing of your artifacts [GH-2706]
   113    * **Artifice post-processor**: Override packer artifacts during post-
   114      processing. This allows you to extract artifacts from a packer builder and
   115      use them with other post-processors like compress, docker, and Atlas.
   116  
   117  IMPROVEMENTS:
   118  
   119    * core: Packer plugins are now compiled into the main binary, reducing file
   120      size and build times, and making packer easier to install. The overall
   121      plugin architecture has not changed and third-party plugins can still be
   122      loaded from disk. Please make sure your plugins are up-to-date! [GH-2854]
   123    * core: Packer now indicates line numbers for template parse errors [GH-2742]
   124    * core: Scripts are executed via `/usr/bin/env bash` instead of `/bin/bash`
   125      for broader compatibility. [GH-2913]
   126    * core: `target_path` for builder downloads can now be specified. [GH-2600]
   127    * core: WinRM communicator now supports HTTPS protocol [GH-3061]
   128    * core: Template syntax errors now show line, column, offset [GH-3180]
   129    * core: SSH communicator now supports downloading directories [GH-2618]
   130    * builder/amazon: Add support for `ebs_optimized` [GH-2806]
   131    * builder/amazon: You can now specify `0` for `spot_price` to switch to on
   132      demand instances [GH-2845]
   133    * builder/amazon: Added `ap-northeast-2` (Seoul) [GH-3056]
   134    * builder/amazon: packer will try to derive the AZ if only a subnet is
   135      specified [GH-3037]
   136    * builder/digitalocean: doubled instance wait timeouts to power off or
   137      shutdown (now 4 minutes) and to complete a snapshot (now 20 minutes)
   138      [GH-2939]
   139    * builder/google: `account_file` can now be provided as a JSON string
   140      [GH-2811]
   141    * builder/google: added support for `preemptible` instances [GH-2982]
   142    * builder/google: added support for static external IPs via `address` option
   143      [GH-3030]
   144    * builder/openstack: added retry on WaitForImage 404 [GH-3009]
   145    * builder/openstack: Can specify `source_image_name` instead of the ID
   146      [GH-2577]
   147    * builder/openstack: added support for SSH over IPv6 [GH-3197]
   148    * builder/parallels: Improve support for Parallels 11 [GH-2662]
   149    * builder/parallels: Parallels disks are now compacted by default [GH-2731]
   150    * builder/parallels: Packer will look for Parallels in
   151      `/Applications/Parallels Desktop.app` if it is not detected automatically
   152      [GH-2839]
   153    * builder/qemu: qcow2 images are now compacted by default [GH-2748]
   154    * builder/qemu: qcow2 images can now be compressed [GH-2748]
   155    * builder/qemu: Now specifies `virtio-scsi` by default [GH-2422]
   156    * builder/qemu: Now checks for version-specific options [GH-2376]
   157    * builder/qemu: Can now bypass disk cache using `iso_skip_cache` [GH-3105]
   158    * builder/qemu: `<wait>` in `boot_command` now accepts an arbitrary duration
   159      like <wait1m30s> [GH-3129]
   160    * builder/qemu: Expose `{{ .SSHHostPort }}` in templates [GH-2884]
   161    * builder/virtualbox: Added VRDP for debugging [GH-3188]
   162    * builder/vmware-esxi: Added private key auth for remote builds via
   163      `remote_private_key_file` [GH-2912]
   164    * post-processor/atlas: Added support for compile ID. [GH-2775]
   165    * post-processor/docker-import: Can now import Artifice artifacts [GH-2718]
   166    * provisioner/chef: Added `encrypted_data_bag_secret_path` option [GH-2653]
   167    * provisioner/puppet: Added the `extra_arguments` parameter [GH-2635]
   168    * provisioner/salt: Added `no_exit_on_failure`, `log_level`, and improvements
   169      to salt command invocation [GH-2660]
   170  
   171  BUG FIXES:
   172  
   173    * core: Random number generator is now seeded. [GH-2640]
   174    * core: Packer should now have a lot less race conditions [GH-2824]
   175    * builder/amazon: The `no_device` option for block device mappings is now handled correctly [GH-2398]
   176    * builder/amazon: AMI name validation now matches Amazon's spec [GH-2774]
   177    * builder/amazon: Use snapshot size when volume size is unspecified [GH-2480]
   178    * builder/amazon: Pass AccessKey and SecretKey when uploading bundles for
   179      instance-backed AMIs [GH-2596]
   180    * builder/parallels: Added interpolation in `prlctl_post` [GH-2828]
   181    * builder/vmware: `format` option is now read correctly [GH-2892]
   182    * builder/vmware-esxi: Correct endless loop in destroy validation logic
   183      [GH-2911]
   184    * provisioner/shell: No longer leaves temp scripts behind [GH-1536]
   185    * provisioner/winrm: Now waits for reboot to complete before continuing with provisioning [GH-2568]
   186    * post-processor/artifice: Fix truncation of files downloaded from Docker. [GH-2793]
   187  
   188  
   189  ## 0.8.6 (Aug 22, 2015)
   190  
   191  IMPROVEMENTS:
   192  
   193    * builder/docker: Now supports Download so it can be used with the file
   194        provisioner to download a file from a container. [GH-2585]
   195    * builder/docker: Now verifies that the artifact will be used before the build
   196        starts, unless the `discard` option is specified. This prevent failures
   197        after the build completes. [GH-2626]
   198    * post-processor/artifice: Now supports glob-like syntax for filenames [GH-2619]
   199    * post-processor/vagrant: Like the compress post-processor, vagrant now uses a
   200        parallel gzip algorithm to compress vagrant boxes. [GH-2590]
   201  
   202  BUG FIXES:
   203  
   204    * core: When `iso_url` is a local file and the checksum is invalid, the local
   205        file will no longer be deleted. [GH-2603]
   206    * builder/parallels: Fix interpolation in `parallels_tools_guest_path` [GH-2543]
   207  
   208  ## 0.8.5 (Aug 10, 2015)
   209  
   210  FEATURES:
   211  
   212    * **[Beta]** Artifice post-processor: Override packer artifacts during post-
   213        processing. This allows you to extract artifacts from a packer builder
   214        and use them with other post-processors like compress, docker, and Atlas.
   215  
   216  IMPROVEMENTS:
   217  
   218    * Many docs have been updated and corrected; big thanks to our contributors!
   219    * builder/openstack: Add debug logging for IP addresses used for SSH [GH-2513]
   220    * builder/openstack: Add option to use existing SSH keypair [GH-2512]
   221    * builder/openstack: Add support for Glance metadata [GH-2434]
   222    * builder/qemu and builder/vmware: Packer's VNC connection no longer asks for
   223        an exclusive connection [GH-2522]
   224    * provisioner/salt-masterless: Can now customize salt remote directories [GH-2519]
   225  
   226  BUG FIXES:
   227  
   228    * builder/amazon: Improve instance cleanup by storing id sooner [GH-2404]
   229    * builder/amazon: Only fetch windows password when using WinRM communicator [GH-2538]
   230    * builder/openstack: Support IPv6 SSH address [GH-2450]
   231    * builder/openstack: Track new IP address discovered during RackConnect [GH-2514]
   232    * builder/qemu: Add 100ms delay between VNC key events. [GH-2415]
   233    * post-processor/atlas: atlas_url configuration option works now [GH-2478]
   234    * post-processor/compress: Now supports interpolation in output config [GH-2414]
   235    * provisioner/powershell: Elevated runs now receive environment variables [GH-2378]
   236    * provisioner/salt-masterless: Clarify error messages when we can't create or
   237        write to the temp directory [GH-2518]
   238    * provisioner/salt-masterless: Copy state even if /srv/salt exists already [GH-1699]
   239    * provisioner/salt-masterless: Make sure /etc/salt exists before writing to it [GH-2520]
   240    * provisioner/winrm: Connect to the correct port when using NAT with
   241        VirtualBox / VMware [GH-2399]
   242  
   243  Note: 0.8.3 was pulled and 0.8.4 was skipped.
   244  
   245  ## 0.8.2 (July 17, 2015)
   246  
   247  IMPROVEMENTS:
   248  
   249    * builder/docker: Add option to use a Pty [GH-2425]
   250  
   251  BUG FIXES:
   252  
   253    * core: Fix crash when `min_packer_version` is specified in a template. [GH-2385]
   254    * builder/amazon: Fix EC2 devices being included in EBS mappings [GH-2459]
   255    * builder/googlecompute: Fix default name for GCE images [GH-2400]
   256    * builder/null: Fix error message with missing ssh_host [GH-2407]
   257    * builder/virtualbox: Use --portcount on VirtualBox 5.x [GH-2438]
   258    * provisioner/puppet: Packer now correctly handles a directory for manifest_file [GH-2463]
   259    * provisioner/winrm: Fix potential crash with WinRM [GH-2416]
   260  
   261  ## 0.8.1 (July 2, 2015)
   262  
   263  IMPROVEMENTS:
   264  
   265    * builder/amazon: When debug mode is enabled, the Windows administrator
   266        password for Windows instances will be shown [GH-2351]
   267  
   268  BUG FIXES:
   269  
   270    * core: `min_packer_version`  field in configs work [GH-2356]
   271    * core: The `build_name` and `build_type` functions work in provisioners [GH-2367]
   272    * core: Handle timeout in SSH handshake [GH-2333]
   273    * command/build: Fix reading configuration from stdin [GH-2366]
   274    * builder/amazon: Fix issue with sharing AMIs when using `ami_users` [GH-2308]
   275    * builder/amazon: Fix issue when using multiple Security Groups [GH-2381]
   276    * builder/amazon: Fix for tag creation when creating new ec2 instance [GH-2317]
   277    * builder/amazon: Fix issue with creating AMIs with multiple device mappings [GH-2320]
   278    * builder/amazon: Fix failing AMI snapshot tagging when copying to other
   279        regions [GH-2316]
   280    * builder/amazon: Fix setting AMI launch permissions [GH-2348]
   281    * builder/amazon: Fix spot instance cleanup to remove the correct request [GH-2327]
   282    * builder/amazon: Fix `bundle_prefix` not interpolating `timestamp` [GH-2352]
   283    * builder/amazon-instance: Fix issue with creating AMIs without specifying a
   284        virtualization type [GH-2330]
   285    * builder/digitalocean: Fix builder using private IP instead of public IP [GH-2339]
   286    * builder/google: Set default communicator settings properly [GH-2353]
   287    * builder/vmware-iso: Setting `checksum_type` to `none` for ESX builds
   288        now works [GH-2323]
   289    * provisioner/chef: Use knife config file vs command-line params to
   290        clean up nodes so full set of features can be used [GH-2306]
   291    * post-processor/compress: Fixed crash in compress post-processor plugin [GH-2311]
   292  
   293  ## 0.8.0 (June 23, 2015)
   294  
   295  BACKWARDS INCOMPATIBILITIES:
   296  
   297    * core: SSH connection will no longer request a PTY by default. This
   298        can be enabled per builder.
   299    * builder/digitalocean: no longer supports the v1 API which has been
   300        deprecated for some time. Most configurations should continue to
   301        work as long as you use the `api_token` field for auth.
   302    * builder/digitalocean: `image`, `region`, and `size` are now required.
   303    * builder/openstack: auth parameters have been changed to better
   304        reflect OS terminology. Existing environment variables still work.
   305  
   306  FEATURES:
   307  
   308    * **WinRM:** You can now connect via WinRM with almost every builder.
   309        See the docs for more info. [GH-2239]
   310    * **Windows AWS Support:** Windows AMIs can now be built without any
   311        external plugins: Packer will start a Windows instance, get the
   312        admin password, and can use WinRM (above) to connect through. [GH-2240]
   313    * **Disable SSH:** Set `communicator` to "none" in any builder to disable SSH
   314        connections. Note that provisioners won't work if this is done. [GH-1591]
   315    * **SSH Agent Forwarding:** SSH Agent Forwarding will now be enabled
   316        to allow access to remote servers such as private git repos. [GH-1066]
   317    * **SSH Bastion Hosts:** You can now specify a bastion host for
   318        SSH access (works with all builders). [GH-387]
   319    * **OpenStack v3 Identity:** The OpenStack builder now supports the
   320        v3 identity API.
   321    * **Docker builder supports SSH**: The Docker builder now supports containers
   322        with SSH, just set `communicator` to "ssh" [GH-2244]
   323    * **File provisioner can download**: The file provisioner can now download
   324        files out of the build process. [GH-1909]
   325    * **New config function: `build_name`**: The name of the currently running
   326        build. [GH-2232]
   327    * **New config function: `build_type`**: The type of the currently running
   328        builder. This is useful for provisioners. [GH-2232]
   329    * **New config function: `template_dir`**: The directory to the template
   330        being built. This should be used for template-relative paths. [GH-54]
   331    * **New provisioner: shell-local**: Runs a local shell script. [GH-770]
   332    * **New provisioner: powershell**: Provision Windows machines
   333        with PowerShell scripts. [GH-2243]
   334    * **New provisioner: windows-shell**: Provision Windows machines with
   335        batch files. [GH-2243]
   336    * **New provisioner: windows-restart**: Restart a Windows machines and
   337        wait for it to come back online. [GH-2243]
   338    * **Compress post-processor supports multiple algorithms:** The compress
   339        post-processor now supports lz4 compression and compresses gzip in
   340        parallel for much faster throughput.
   341  
   342  IMPROVEMENTS:
   343  
   344    * core: Interrupt handling for SIGTERM signal as well. [GH-1858]
   345    * core: HTTP downloads support resuming [GH-2106]
   346    * builder/*: Add `ssh_handshake_attempts` to configure the number of
   347        handshake attempts done before failure [GH-2237]
   348    * builder/amazon: Add `force_deregister` option for automatic AMI
   349        deregistration [GH-2221]
   350    * builder/amazon: Now applies tags to EBS snapshots [GH-2212]
   351    * builder/amazon: Clean up orphaned volumes from Source AMIs [GH-1783]
   352    * builder/amazon: Support custom keypairs [GH-1837]
   353    * builder/amazon-chroot: Can now resize the root volume of the resulting
   354        AMI with the `root_volume_size` option [GH-2289]
   355    * builder/amazon-chroot: Add `mount_options` configuration option for providing
   356        options to the `mount` command [GH-2296]
   357    * builder/digitalocean: Save SSH key to pwd if debug mode is on. [GH-1829]
   358    * builder/digitalocean: User data support [GH-2113]
   359    * builder/googlecompute: Option to use internal IP for connections. [GH-2152]
   360    * builder/parallels: Support Parallels Desktop 11 [GH-2199]
   361    * builder/openstack: Add `rackconnect_wait` for Rackspace customers to wait for
   362        RackConnect data to appear
   363    * buidler/openstack: Add `ssh_interface` option for rackconnect for users that
   364        have prohibitive firewalls
   365    * builder/openstack: Flavor names can be used as well as refs
   366    * builder/openstack: Add `availability_zone` [GH-2016]
   367    * builder/openstack: Machine will be stopped prior to imaging if the
   368        cluster supports the `startstop` extension. [GH-2223]
   369    * builder/openstack: Support for user data [GH-2224]
   370    * builder/qemu: Default accelerator to "tcg" on Windows [GH-2291]
   371    * builder/virtualbox: Added option: `ssh_skip_nat_mapping` to skip the
   372        automatic port forward for SSH and to use the guest port directly. [GH-1078]
   373    * builder/virtualbox: Added SCSI support
   374    * builder/vmware: Support for additional disks [GH-1382]
   375    * builder/vmware: Can now customize the template used for adding disks [GH-2254]
   376    * command/fix: After fixing, the template is validated [GH-2228]
   377    * command/push: Add `-name` flag for specifying name from CLI [GH-2042]
   378    * command/push: Push configuration in templates supports variables [GH-1861]
   379    * post-processor/docker-save: Can be chained [GH-2179]
   380    * post-processor/docker-tag: Support `force` option [GH-2055]
   381    * post-processor/docker-tag: Can be chained [GH-2179]
   382    * post-processor/vsphere: Make more fields optional, support empty
   383        resource pools. [GH-1868]
   384    * provisioner/puppet-masterless: `working_directory` option [GH-1831]
   385    * provisioner/puppet-masterless: `packer_build_name` and
   386        `packer_build_type` are default facts. [GH-1878]
   387    * provisioner/puppet-server: `ignore_exit_codes` option added [GH-2280]
   388  
   389  BUG FIXES:
   390  
   391    * core: Fix potential panic for post-processor plugin exits [GH-2098]
   392    * core: `PACKER_CONFIG` may point to a non-existent file [GH-2226]
   393    * builder/amazon: Allow spaces in AMI names when using `clean_ami_name` [GH-2182]
   394    * builder/amazon: Remove deprecated ec2-upload-bundle paramger [GH-1931]
   395    * builder/amazon: Use IAM Profile to upload bundle if provided [GH-1985]
   396    * builder/amazon: Use correct exit code after SSH authentication failed [GH-2004]
   397    * builder/amazon: Retry finding created instance for eventual
   398        consistency. [GH-2129]
   399    * builder/amazon: If no AZ is specified, use AZ chosen automatically by
   400        AWS for spot instance. [GH-2017]
   401    * builder/amazon: Private key file (only available in debug mode)
   402        is deleted on cleanup. [GH-1801]
   403    * builder/amazon: AMI copy won't copy to the source region [GH-2123]
   404    * builder/amazon: Validate AMI doesn't exist with name prior to build [GH-1774]
   405    * builder/amazon: Improved retry logic around waiting for instances. [GH-1764]
   406    * builder/amazon: Fix issues with creating Block Devices. [GH-2195]
   407    * builder/amazon/chroot: Retry waiting for disk attachments [GH-2046]
   408    * builder/amazon/chroot: Only unmount path if it is mounted [GH-2054]
   409    * builder/amazon/instance: Use `-i` in sudo commands so PATH is inherited. [GH-1930]
   410    * builder/amazon/instance: Use `--region` flag for bundle upload command. [GH-1931]
   411    * builder/digitalocean: Wait for droplet to unlock before changing state,
   412        should lower the "pending event" errors.
   413    * builder/digitalocean: Ignore invalid fields from the ever-changing v2 API
   414    * builder/digitalocean: Private images can be used as a source [GH-1792]
   415    * builder/docker: Fixed hang on prompt while copying script
   416    * builder/docker: Use `docker exec` for newer versions of Docker for
   417        running scripts [GH-1993]
   418    * builder/docker: Fix crash that could occur at certain timed ctrl-c [GH-1838]
   419    * builder/docker: validate that `export_path` is not a directory [GH-2105]
   420    * builder/google: `ssh_timeout` is respected [GH-1781]
   421    * builder/openstack: `ssh_interface` can be used to specify the interface
   422        to retrieve the SSH IP from. [GH-2220]
   423    * builder/qemu: Add `disk_discard` option [GH-2120]
   424    * builder/qemu: Use proper SSH port, not hardcoded to 22. [GH-2236]
   425    * builder/qemu: Find unused SSH port if SSH port is taken. [GH-2032]
   426    * builder/virtualbox: Bind HTTP server to IPv4, which is more compatible with
   427        OS installers. [GH-1709]
   428    * builder/virtualbox: Remove the floppy controller in addition to the
   429        floppy disk. [GH-1879]
   430    * builder/virtualbox: Fixed regression where downloading ISO without a
   431        ".iso" extension didn't work. [GH-1839]
   432    * builder/virtualbox: Output dir is verified at runtime, not template
   433        validation time. [GH-2233]
   434    * builder/virtualbox: Find unused SSH port if SSH port is taken. [GH-2032]
   435    * builder/vmware: Add 100ms delay between keystrokes to avoid subtle
   436        timing issues in most cases. [GH-1663]
   437    * builder/vmware: Bind HTTP server to IPv4, which is more compatible with
   438        OS installers. [GH-1709]
   439    * builder/vmware: Case-insensitive match of MAC address to find IP [GH-1989]
   440    * builder/vmware: More robust IP parsing from ifconfig output [GH-1999]
   441    * builder/vmware: Nested output directories for ESXi work [GH-2174]
   442    * builder/vmware: Output dir is verified at runtime, not template
   443        validation time. [GH-2233]
   444    * command/fix: For the `virtualbox` to `virtualbox-iso` builder rename,
   445        provisioner overrides are now also fixed [GH-2231]
   446    * command/validate: don't crash for invalid builds [GH-2139]
   447    * post-processor/atlas: Find common archive prefix for Windows [GH-1874]
   448    * post-processor/atlas: Fix index out of range panic [GH-1959]
   449    * post-processor/vagrant-cloud: Fixed failing on response
   450    * post-processor/vagrant-cloud: Don't delete version on error [GH-2014]
   451    * post-processor/vagrant-cloud: Retry failed uploads a few times
   452    * provisioner/chef-client: Fix permissions issues on default dir [GH-2255]
   453    * provisioner/chef-client: Node cleanup works now. [GH-2257]
   454    * provisioner/puppet-masterless: Allow manifest_file to be a directory
   455    * provisioner/salt-masterless: Add `--retcode-passthrough` to salt-call
   456    * provisioner/shell: chmod executable script to 0755, not 0777 [GH-1708]
   457    * provisioner/shell: inline commands failing will fail the provisioner [GH-2069]
   458    * provisioner/shell: single quotes in env vars are escaped [GH-2229]
   459    * provisioner/shell: Temporary file is deleted after run [GH-2259]
   460    * provisioner/shell: Randomize default script name to avoid strange
   461        race issues from Windows. [GH-2270]
   462  
   463  ## 0.7.5 (December 9, 2014)
   464  
   465  FEATURES:
   466  
   467    * **New command: `packer push`**: Push template and files to HashiCorp's
   468        Atlas for building your templates automatically.
   469    * **New post-processor: `atlas`**: Send artifact to HashiCorp's Atlas for
   470        versioning and storing artifacts. These artifacts can then be queried
   471        using the API, Terraform, etc.
   472  
   473  IMPROVEMENTS:
   474  
   475    * builder/googlecompute: Support for ubuntu-os-cloud project
   476    * builder/googlecompute: Support for OAuth2 to avoid client secrets file
   477    * builder/googlecompute: GCE image from persistant disk instead of tarball
   478    * builder/qemu: Checksum type "none" can be used
   479    * provisioner/chef: Generate a node name if none available
   480    * provisioner/chef: Added ssl_verify_mode configuration
   481  
   482  BUG FIXES:
   483  
   484    * builder/parallels: Fixed attachment of ISO to cdrom device
   485    * builder/parallels: Fixed boot load ordering
   486    * builder/digitalocean: Fixed decoding of size
   487    * builder/digitalocean: Fixed missing content-type header in request
   488    * builder/digitalocean: Fixed use of private IP
   489    * builder/digitalocean: Fixed the artifact ID generation
   490    * builder/vsphere: Fixed credential escaping
   491    * builder/qemu: Fixed use of CDROM with disk_image
   492    * builder/aws: Fixed IP address for SSH in VPC
   493    * builder/aws: Fixed issue with multiple block devices
   494    * builder/vmware: Upload VMX to ESX5 after editing
   495    * communicator/docker: Fix handling of symlinks during upload
   496    * provisioner/chef: Fixed use of sudo in some cases
   497    * core: Fixed build name interpolation
   498    * postprocessor/vagrant: Fixed check for Vagrantfile template
   499  
   500  ## 0.7.2 (October 28, 2014)
   501  
   502  FEATURES:
   503  
   504    * builder/digitalocean: API V2 support. [GH-1463]
   505    * builder/parallels: Don't depend on _prl-utils_ [GH-1499]
   506  
   507  IMPROVEMENTS:
   508  
   509    * builder/amazon/all: Support new AWS Frankfurt region.
   510    * builder/docker: Allow remote `DOCKER_HOST`, which works as long as
   511        volumes work. [GH-1594]
   512    * builder/qemu: Can set cache mode for main disk. [GH-1558]
   513    * builder/qemu: Can build from pre-existing disk. [GH-1342]
   514    * builder/vmware: Can specify path to Fusion installation with environmental
   515        variable `FUSION_APP_PATH`. [GH-1552]
   516    * builder/vmware: Can specify the HW version for the VMX. [GH-1530]
   517    * builder/vmware/esxi: Will now cache ISOs/floppies remotely. [GH-1479]
   518    * builder/vmware/vmx: Source VMX can have a disk connected via SATA. [GH-1604]
   519    * post-processors/vagrant: Support Qemu (libvirt) boxes. [GH-1330]
   520    * post-processors/vagrantcloud: Support self-hosted box URLs.
   521  
   522  BUG FIXES:
   523  
   524    * core: Fix loading plugins from pwd. [GH-1521]
   525    * builder/amazon: Prefer token in config if given. [GH-1544]
   526    * builder/amazon/all: Extended timeout for waiting for AMI. [GH-1533]
   527    * builder/virtualbox: Can read VirtualBox version on FreeBSD. [GH-1570]
   528    * builder/virtualbox: More robust reading of guest additions URL. [GH-1509]
   529    * builder/vmware: Always remove floppies/drives. [GH-1504]
   530    * builder/vmware: Wait some time so that post-VMX update aren't
   531        overwritten. [GH-1504]
   532    * builder/vmware/esxi: Retry power on if it fails. [GH-1334]
   533    * builder/vmware-vmx: Fix issue with order of boot command support [GH-1492]
   534    * builder/amazon: Extend timeout and allow user override [GH-1533]
   535    * builder/parallels: Ignore 'The fdd0 device does not exist' [GH-1501]
   536    * builder/parallels: Rely on Cleanup functions to detach devices [GH-1502]
   537    * builder/parallels: Create VM without hdd and then add it later [GH-1548]
   538    * builder/parallels: Disconnect cdrom0 [GH-1605]
   539    * builder/qemu: Don't use `-redir` flag anymore, replace with
   540        `hostfwd` options. [GH-1561]
   541    * builder/qemu: Use `pc` as default machine type instead of `pc-1.0`.
   542    * providers/aws: Ignore transient network errors. [GH-1579]
   543    * provisioner/ansible: Don't buffer output so output streams in. [GH-1585]
   544    * provisioner/ansible: Use inventory file always to avoid potentially
   545        deprecated feature. [GH-1562]
   546    * provisioner/shell: Quote environmental variables. [GH-1568]
   547    * provisioner/salt: Bootstrap over SSL. [GH-1608]
   548    * post-processors/docker-push: Work with docker-tag artifacts. [GH-1526]
   549    * post-processors/vsphere: Append "/" to object address. [GH-1615]
   550  
   551  ## 0.7.1 (September 10, 2014)
   552  
   553  FEATURES:
   554  
   555    * builder/vmware: VMware Fusion Pro 7 is now supported. [GH-1478]
   556  
   557  BUG FIXES:
   558  
   559    * core: SSH will connect slightly faster if it is ready immediately.
   560    * provisioner/file: directory uploads no longer hang. [GH-1484]
   561    * provisioner/file: fixed crash on large files. [GH-1473]
   562    * scripts: Windows executable renamed to packer.exe. [GH-1483]
   563  
   564  ## 0.7.0 (September 8, 2014)
   565  
   566  BACKWARDS INCOMPATIBILITIES:
   567  
   568    * The authentication configuration for Google Compute Engine has changed.
   569        The new method is much simpler, but is not backwards compatible.
   570        `packer fix` will _not_ fix this. Please read the updated GCE docs.
   571  
   572  FEATURES:
   573  
   574    * **New Post-Processor: `compress`** - Gzip compresses artifacts with files.
   575    * **New Post-Processor: `docker-save`** - Save an image. This is similar to
   576        export, but preserves the image hierarchy.
   577    * **New Post-Processor: `docker-tag`** - Tag a created image.
   578    * **New Template Functions: `upper`, `lower`** - See documentation for
   579        more details.
   580    * core: Plugins are automatically discovered if they're named properly.
   581        Packer will look in the PWD and the directory with `packer` for
   582        binaries named `packer-TYPE-NAME`.
   583    * core: Plugins placed in `~/.packer.d/plugins` are now automatically
   584        discovered.
   585    * builder/amazon: Spot instances can now be used to build EBS backed and
   586        instance store images. [GH-1139]
   587    * builder/docker: Images can now be committed instead of exported. [GH-1198]
   588    * builder/virtualbox-ovf: New `import_flags` setting can be used to add
   589        new command line flags to `VBoxManage import` to allow things such
   590        as EULAs to be accepted. [GH-1383]
   591    * builder/virtualbox-ovf: Boot commands and the HTTP server are supported.
   592        [GH-1169]
   593    * builder/vmware: VMware Player 6 is now supported. [GH-1168]
   594    * builder/vmware-vmx: Boot commands and the HTTP server are supported.
   595        [GH-1169]
   596  
   597  IMPROVEMENTS:
   598  
   599    * core: `isotime` function can take a format. [GH-1126]
   600    * builder/amazon/all: `AWS_SECURITY_TOKEN` is read and can also be
   601        set with the `token` configuration. [GH-1236]
   602    * builder/amazon/all: Can force SSH on the private IP address with
   603        `ssh_private_ip`. [GH-1229]
   604    * builder/amazon/all: String fields in device mappings can use variables. [GH-1090]
   605    * builder/amazon-instance: EBS AMIs can be used as a source. [GH-1453]
   606    * builder/digitalocean: Can set API URL endpoint. [GH-1448]
   607    * builder/digitalocean: Region supports variables. [GH-1452]
   608    * builder/docker: Can now specify login credentials to pull images.
   609    * builder/docker: Support mounting additional volumes. [GH-1430]
   610    * builder/parallels/all: Path to tools ISO is calculated automatically. [GH-1455]
   611    * builder/parallels-pvm: `reassign_mac` option to choose wehther or not
   612        to generate a new MAC address. [GH-1461]
   613    * builder/qemu: Can specify "none" acceleration type. [GH-1395]
   614    * builder/qemu: Can specify "tcg" acceleration type. [GH-1395]
   615    * builder/virtualbox/all: `iso_interface` option to mount ISO with SATA. [GH-1200]
   616    * builder/vmware-vmx: Proper `floppy_files` support. [GH-1057]
   617    * command/build: Add `-color=false` flag to disable color. [GH-1433]
   618    * post-processor/docker-push: Can now specify login credentials. [GH-1243]
   619    * provisioner/chef-client: Support `chef_environment`. [GH-1190]
   620  
   621  BUG FIXES:
   622  
   623    * core: nicer error message if an encrypted private key is used for
   624        SSH. [GH-1445]
   625    * core: Fix crash that could happen with a well timed double Ctrl-C.
   626        [GH-1328] [GH-1314]
   627    * core: SSH TCP keepalive period is now 5 seconds (shorter). [GH-1232]
   628    * builder/amazon-chroot: Can properly build HVM images now. [GH-1360]
   629    * builder/amazon-chroot: Fix crash in root device check. [GH-1360]
   630    * builder/amazon-chroot: Add description that Packer made the snapshot
   631        with a time. [GH-1388]
   632    * builder/amazon-ebs: AMI is deregistered if an error. [GH-1186]
   633    * builder/amazon-instance: Fix deprecation warning for `ec2-bundle-vol`
   634        [GH-1424]
   635    * builder/amazon-instance: Add `--no-filter` to the `ec2-bundle-vol`
   636        command by default to avoid corrupting data by removing package
   637        manager certs. [GH-1137]
   638    * builder/amazon/all: `delete_on_termination` set to false will work.
   639    * builder/amazon/all: Fix race condition on setting tags. [GH-1367]
   640    * builder/amazon/all: More desctriptive error messages if Amazon only
   641        sends an error code. [GH-1189]
   642    * builder/docker: Error if `DOCKER_HOST` is set.
   643    * builder/docker: Remove the container during cleanup. [GH-1206]
   644    * builder/docker: Fix case where not all output would show up from
   645        provisioners.
   646    * builder/googlecompute: add `disk_size` option. [GH-1397]
   647    * builder/googlecompute: Auth works with latest formats on Google Cloud
   648        Console. [GH-1344]
   649    * builder/openstack: Region is not required. [GH-1418]
   650    * builder/parallels-iso: ISO not removed from VM after install [GH-1338]
   651    * builder/parallels/all: Add support for Parallels Desktop 10 [GH-1438]
   652    * builder/parallels/all: Added some navigation keys [GH-1442]
   653    * builder/qemu: If headless, sdl display won't be used. [GH-1395]
   654    * builder/qemu: Use `512M` as `-m` default. [GH-1444]
   655    * builder/virtualbox/all: Search `VBOX_MSI_INSTALL_PATH` for path to
   656        `VBoxManage` on Windows. [GH-1337]
   657    * builder/virtualbox/all: Seed RNG to avoid same ports. [GH-1386]
   658    * builder/virtualbox/all: Better error if guest additions URL couldn't be
   659        detected. [GH-1439]
   660    * builder/virtualbox/all: Detect errors even when `VBoxManage` exits
   661        with a zero exit code. [GH-1119]
   662    * builder/virtualbox/iso: Append timestamp to default name for parallel
   663        builds. [GH-1365]
   664    * builder/vmware/all: No more error when Packer stops an already-stopped
   665        VM. [GH-1300]
   666    * builder/vmware/all: `ssh_host` accepts templates. [GH-1396]
   667    * builder/vmware/all: Don't remount floppy in VMX post step. [GH-1239]
   668    * builder/vmware/vmx: Do not re-add floppy disk files to VMX [GH-1361]
   669    * builder/vmware-iso: Fix crash when `vnc_port_min` and max were the
   670        same value. [GH-1288]
   671    * builder/vmware-iso: Finding an available VNC port on Windows works. [GH-1372]
   672    * builder/vmware-vmx: Nice error if Clone is not supported (not VMware
   673        Fusion Pro). [GH-787]
   674    * post-processor/vagrant: Can supply your own metadata.json. [GH-1143]
   675    * provisioner/ansible-local: Use proper path on Windows. [GH-1375]
   676    * provisioner/file: Mode will now be preserved. [GH-1064]
   677  
   678  ## 0.6.1 (July 20, 2014)
   679  
   680  FEATURES:
   681  
   682    * **New post processor:** `vagrant-cloud` - Push box files generated by
   683      vagrant post processor to Vagrant Cloud. [GH-1289]
   684    * Vagrant post-processor can now packer Hyper-V boxes.
   685  
   686  IMPROVEMENTS:
   687  
   688    * builder/amazon: Support for enhanced networking on HVM images. [GH-1228]
   689    * builder/amazon-ebs: Support encrypted EBS volumes [GH-1194]
   690    * builder/ansible: Add `playbook_dir` option. [GH-1000]
   691    * builder/openstack: Add ability to configure networks. [GH-1261]
   692    * builder/openstack: Skip certificate verification. [GH-1121]
   693    * builder/parallels/all: Add ability to select interface to connect to.
   694    * builder/parallels/pvm: Support `boot_command`. [GH-1082]
   695    * builder/virtualbox/all: Attempt to use local guest additions ISO
   696        before downloading from internet. [GH-1123]
   697    * builder/virtualbox/ovf: Supports `guest_additions_mode` [GH-1035]
   698    * builder/vmware/all: Increase cleanup timeout to 120 seconds [GH-1167]
   699    * builder/vmware/all: Add `vmx_data_post` for modifying VMX data
   700        after shutdown. [GH-1149]
   701    * builder/vmware/vmx: Supports tools uploading. [GH-1154]
   702  
   703  BUG FIXES:
   704  
   705    * core: `isotime` is the same time during the entire build. [GH-1153]
   706    * builder/amazon-common: Sort AMI strings before outputting [GH-1305]
   707    * builder/amazon: User data can use templates/variables. [GH-1343]
   708    * builder/amazon: Can now build AMIs in GovCloud.
   709    * builder/null: SSH info can use templates/variables. [GH-1343]
   710    * builder/openstack: Workaround for gophercloud.ServerById crashing [GH-1257]
   711    * builder/openstack: Force IPv4 addresses from address pools [GH-1258]
   712    * builder/parallels: Do not delete entire CDROM device. [GH-1115]
   713    * builder/parallels: Errors while creating floppy disk. [GH-1225]
   714    * builder/parallels: Errors while removing floppy drive. [GH-1226]
   715    * builder/virtualbox-ovf: Supports guest additions options. [GH-1120]
   716    * builder/vmware-iso: Fix esx5 path separator in windows. [GH-1316]
   717    * builder/vmware: Remote ESXi builder now uploads floppy. [GH-1106]
   718    * builder/vmware: Remote ESXi builder no longer re-uploads ISO every
   719        time. [GH-1244]
   720    * post-processor/vsphere: Accept DOMAIN\account usernames [GH-1178]
   721    * provisioner/chef-*: Fix remotePaths for Windows [GH-394]
   722  
   723  ## 0.6.0 (May 2, 2014)
   724  
   725  FEATURES:
   726  
   727    * **New builder:** `null` - The null builder does not produce any
   728      artifacts, but is useful for debugging provisioning scripts. [GH-970]
   729    * **New builder:** `parallels-iso` and `parallels-pvm` - These can be
   730      used to build Parallels virtual machines. [GH-1101]
   731    * **New provisioner:** `chef-client` - Provision using a the `chef-client`
   732      command, which talks to a Chef Server. [GH-855]
   733    * **New provisioner:** `puppet-server` - Provision using Puppet by
   734      communicating to a Puppet master. [GH-796]
   735    * `min_packer_version` can be specified in a Packer template to force
   736      a minimum version. [GH-487]
   737  
   738  IMPROVEMENTS:
   739  
   740    * core: RPC transport between plugins switched to MessagePack
   741    * core: Templates array values can now be comma separated strings.
   742        Most importantly, this allows for user variables to fill
   743        array configurations. [GH-950]
   744    * builder/amazon: Added `ssh_private_key_file` option [GH-971]
   745    * builder/amazon: Added `ami_virtualization_type` option [GH-1021]
   746    * builder/digitalocean: Regions, image names, and sizes can be
   747        names that are looked up for their valid ID. [GH-960]
   748    * builder/googlecompute: Configurable instance name. [GH-1065]
   749    * builder/openstack: Support for conventional OpenStack environmental
   750        variables such as `OS_USERNAME`, `OS_PASSWORD`, etc. [GH-768]
   751    * builder/openstack: Support `openstack_provider` option to automatically
   752        fill defaults for different OpenStack variants. [GH-912]
   753    * builder/openstack: Support security groups. [GH-848]
   754    * builder/qemu: User variable expansion in `ssh_key_path` [GH-918]
   755    * builder/qemu: Floppy disk files list can also include globs
   756        and directories. [GH-1086]
   757    * builder/virtualbox: Support an `export_opts` option which allows
   758        specifying arbitrary arguments when exporting the VM. [GH-945]
   759    * builder/virtualbox: Added `vboxmanage_post` option to run vboxmanage
   760        commands just before exporting [GH-664]
   761    * builder/virtualbox: Floppy disk files list can also include globs
   762        and directories. [GH-1086]
   763    * builder/vmware: Workstation 10 support for Linux. [GH-900]
   764    * builder/vmware: add cloning support on Windows [GH-824]
   765    * builder/vmware: Floppy disk files list can also include globs
   766        and directories. [GH-1086]
   767    * command/build: Added `-parallel` flag so you can disable parallelization
   768      with `-no-parallel`. [GH-924]
   769    * post-processors/vsphere: `disk_mode` option. [GH-778]
   770    * provisioner/ansible: Add `inventory_file` option [GH-1006]
   771    * provisioner/chef-client: Add `validation_client_name` option. [GH-1056]
   772  
   773  BUG FIXES:
   774  
   775    * core: Errors are properly shown when adding bad floppy files. [GH-1043]
   776    * core: Fix some URL parsing issues on Windows.
   777    * core: Create Cache directory only when it is needed. [GH-367]
   778    * builder/amazon-instance: Use S3Endpoint for ec2-upload-bundle arg,
   779        which works for every region. [GH-904]
   780    * builder/digitalocean: updated default image_id [GH-1032]
   781    * builder/googlecompute: Create persistent disk as boot disk via
   782        API v1 [GH-1001]
   783    * builder/openstack: Return proper error on invalid instance states [GH-1018]
   784    * builder/virtualbox-iso: Retry unregister a few times to deal with
   785        VBoxManage randomness. [GH-915]
   786    * provisioner/ansible: Fix paths when provisioning Linux from
   787        Windows [GH-963]
   788    * provisioner/ansible: set cwd to staging directory [GH-1016]
   789    * provisioners/chef-client: Don't chown directory with Ubuntu. [GH-939]
   790    * provisioners/chef-solo: Deeply nested JSON works properly. [GH-1076]
   791    * provisioners/shell: Env var values can have equal signs. [GH-1045]
   792    * provisioners/shell: chmod the uploaded script file to 0777. [GH-994]
   793    * post-processor/docker-push: Allow repositories with ports. [GH-923]
   794    * post-processor/vagrant: Create parent directories for `output` path [GH-1059]
   795    * post-processor/vsphere: datastore, network, and folder are no longer
   796        required. [GH-1091]
   797  
   798  ## 0.5.2 (02/21/2014)
   799  
   800  FEATURES:
   801  
   802  * **New post-processor:** `docker-import` - Import a Docker image
   803    and give it a specific repository/tag.
   804  * **New post-processor:** `docker-push` - Push an imported image to
   805    a registry.
   806  
   807  IMPROVEMENTS:
   808  
   809  * core: Most downloads made by Packer now use a custom user agent. [GH-803]
   810  * builder/googlecompute: SSH private key will be saved to disk if `-debug`
   811    is specified. [GH-867]
   812  * builder/qemu: Can specify the name of the qemu binary. [GH-854]
   813  * builder/virtualbox-ovf: Can specify import options such as "keepallmacs".
   814    [GH-883]
   815  
   816  BUG FIXES:
   817  
   818  * core: Fix crash case if blank parameters are given to Packer. [GH-832]
   819  * core: Fix crash if big file uploads are done. [GH-897]
   820  * core: Fix crash if machine-readable output is going to a closed
   821    pipe. [GH-875]
   822  * builder/docker: user variables work properly. [GH-777]
   823  * builder/qemu: reboots are now possible in provisioners. [GH-864]
   824  * builder/virtualbox,vmware: iso\_checksum is not required if the
   825    checksum type is "none"
   826  * builder/virtualbox,vmware/qemu: Support for additional scancodes for
   827    `boot_command` such as `<up>`, `<left>`, `<insert>`, etc. [GH-808]
   828  * communicator/ssh: Send TCP keep-alives on connections. [GH-872]
   829  * post-processor/vagrant: AWS/DigitalOcean keep input artifacts by
   830    default. [GH-55]
   831  * provisioners/ansible-local: Properly upload custom playbooks. [GH-829]
   832  * provisioners/ansible-local: Better error if ansible isn't installed.
   833    [GH-836]
   834  
   835  ## 0.5.1 (01/02/2014)
   836  
   837  BUG FIXES:
   838  
   839  * core: If a stream ID loops around, don't let it use stream ID 0 [GH-767]
   840  * core: Fix issue where large writes to plugins would result in stream
   841    corruption. [GH-727]
   842  * builders/virtualbox-ovf: `shutdown_timeout` config works. [GH-772]
   843  * builders/vmware-iso: Remote driver works properly again. [GH-773]
   844  
   845  ## 0.5.0 (12/30/2013)
   846  
   847  BACKWARDS INCOMPATIBILITIES:
   848  
   849  * "virtualbox" builder has been renamed to "virtualbox-iso". Running your
   850     template through `packer fix` will resolve this.
   851  * "vmware" builder has been renamed to "vmware-iso". Running your template
   852    through `packer fix` will resolve this.
   853  * post-processor/vagrant: Syntax for overriding by provider has changed.
   854    See the documentation for more information. Running your template
   855    through `packer fix` should resolve this.
   856  * post-processor/vsphere: Some available configuration options were
   857    changed. Running your template through `packer fix` should resolve
   858    this.
   859  * provisioner/puppet-masterless: The `execute_command` no longer has
   860    the `Has*` variables, since the templating language now supports
   861    comparison operations. See the Go documentation for more info:
   862    http://golang.org/pkg/text/template/
   863  
   864  FEATURES:
   865  
   866  * **New builder:** Google Compute Engine. You can now build images for
   867    use in Google Compute Engine. See the documentation for more information.
   868    [GH-715]
   869  * **New builder:** "virtualbox-ovf" can build VirtualBox images from
   870    an existing OVF or OVA. [GH-201]
   871  * **New builder:** "vmware-vmx" can build VMware images from an existing
   872    VMX. [GH-201]
   873  * Environmental variables can now be accessed as default values for
   874    user variables using the "env" function. See the documentation for more
   875    information.
   876  * "description" field in templates: write a human-readable description
   877    of what a template does. This will be shown in `packer inspect`.
   878  * Vagrant post-processor now accepts a list of files to include in the
   879    box.
   880  * All provisioners can now have a "pause\_before" parameter to wait
   881    some period of time before running that provisioner. This is useful
   882    for reboots. [GH-737]
   883  
   884  IMPROVEMENTS:
   885  
   886  * core: Plugins communicate over a single TCP connection per plugin now,
   887    instead of sometimes dozens. Performance around plugin communication
   888    dramatically increased.
   889  * core: Build names are now template processed so you can use things
   890    like user variables in them. [GH-744]
   891  * core: New "pwd" function available globally that returns the working
   892    directory. [GH-762]
   893  * builder/amazon/all: Launched EC2 instances now have a name of
   894    "Packer Builder" so that they are easily recognizable. [GH-642]
   895  * builder/amazon/all: Copying AMIs to multiple regions now happens
   896    in parallel. [GH-495]
   897  * builder/amazon/all: Ability to specify "run\_tags" to tag the instance
   898    while running. [GH-722]
   899  * builder/digitalocean: Private networking support. [GH-698]
   900  * builder/docker: A "run\_command" can be specified, configuring how
   901    the container is started. [GH-648]
   902  * builder/openstack: In debug mode, the generated SSH keypair is saved
   903    so you can SSH into the machine. [GH-746]
   904  * builder/qemu: Floppy files are supported. [GH-686]
   905  * builder/qemu: Next `run_once` option tells Qemu to run only once,
   906    which is useful for Windows installs that handle reboots for you.
   907    [GH-687]
   908  * builder/virtualbox: Nice errors if Packer can't write to
   909    the output directory.
   910  * builder/virtualbox: ISO is ejected prior to export.
   911  * builder/virtualbox: Checksum type can be "none" [GH-471]
   912  * builder/vmware: Can now specify path to the Fusion application. [GH-677]
   913  * builder/vmware: Checksum type can be "none" [GH-471]
   914  * provisioner/puppet-masterless: Can now specify a `manifest_dir` to
   915    upload manifests to the remote machine for imports. [GH-655]
   916  
   917  BUG FIXES:
   918  
   919  * core: No colored output in machine-readable output. [GH-684]
   920  * core: User variables can now be used for non-string fields. [GH-598]
   921  * core: Fix bad download paths if the download URL contained a "."
   922    before a "/" [GH-716]
   923  * core: "{{timestamp}}" values will always be the same for the entire
   924    duration of a build. [GH-744]
   925  * builder/amazon: Handle cases where security group isn't instantly
   926    available. [GH-494]
   927  * builder/virtualbox: don't download guest additions if disabled. [GH-731]
   928  * post-processor/vsphere: Uploads VM properly. [GH-694]
   929  * post-processor/vsphere: Process user variables.
   930  * provisioner/ansible-local: all configurations are processed as templates
   931    [GH-749]
   932  * provisioner/ansible-local: playbook paths are properly validated
   933    as directories, not files. [GH-710]
   934  * provisioner/chef-solo: Environments are recognized. [GH-726]
   935  
   936  ## 0.4.1 (December 7, 2013)
   937  
   938  IMPROVEMENTS:
   939  
   940  * builder/amazon/ebs: New option allows associating a public IP with
   941    non-default VPC instances. [GH-660]
   942  * builder/openstack: A "proxy\_url" setting was added to define an HTTP
   943    proxy to use when building with this builder. [GH-637]
   944  
   945  BUG FIXES:
   946  
   947  * core: Don't change background color on CLI anymore, making things look
   948    a tad nicer in some terminals.
   949  * core: multiple ISO URLs works properly in all builders. [GH-683]
   950  * builder/amazon/chroot: Block when obtaining file lock to allow
   951    parallel builds. [GH-689]
   952  * builder/amazon/instance: Add location flag to upload bundle command
   953    so that building AMIs works out of us-east-1 [GH-679]
   954  * builder/qemu: Qemu arguments are templated. [GH-688]
   955  * builder/vmware: Cleanup of VMX keys works properly so cd-rom won't
   956    get stuck with ISO. [GH-685]
   957  * builder/vmware: File cleanup is more resilient to file delete races
   958    with the operating system. [GH-675]
   959  * provisioner/puppet-masterless: Check for hiera config path existence
   960    properly. [GH-656]
   961  
   962  ## 0.4.0 (November 19, 2013)
   963  
   964  FEATURES:
   965  
   966  * Docker builder: build and export Docker containers, easily provisioned
   967    with any of the Packer built-in provisioners.
   968  * QEMU builder: builds a new VM compatible with KVM or Xen using QEMU.
   969  * Remote ESXi builder: builds a VMware VM using ESXi remotely using only
   970    SSH to an ESXi machine directly.
   971  * vSphere post-processor: Can upload VMware artifacts to vSphere
   972  * Vagrant post-processor can now make DigitalOcean provider boxes. [GH-504]
   973  
   974  IMPROVEMENTS:
   975  
   976  * builder/amazon/all: Can now specify a list of multiple security group
   977    IDs to apply. [GH-499]
   978  * builder/amazon/all: AWS API requests are now retried when a temporary
   979    network error occurs as well as 500 errors. [GH-559]
   980  * builder/virtualbox: Use VBOX\_INSTALL\_PATH env var on Windows to find
   981    VBoxManage. [GH-628]
   982  * post-processor/vagrant: skips gzip compression when compression_level=0
   983  * provisioner/chef-solo: Encrypted data bag support [GH-625]
   984  
   985  BUG FIXES:
   986  
   987  * builder/amazon/chroot: Copying empty directories works. [GH-588]
   988  * builder/amazon/chroot: Chroot commands work with shell provisioners. [GH-581]
   989  * builder/amazon/chroot: Don't choose a mount point that is a partition of
   990    an already mounted device. [GH-635]
   991  * builder/virtualbox: Ctrl-C interrupts during waiting for boot. [GH-618]
   992  * builder/vmware: VMX modifications are now case-insensitive. [GH-608]
   993  * builder/vmware: VMware Fusion won't ask for VM upgrade.
   994  * builder/vmware: Ctrl-C interrupts during waiting for boot. [GH-618]
   995  * provisioner/chef-solo: Output is slightly prettier and more informative.
   996  
   997  ## 0.3.11 (November 4, 2013)
   998  
   999  FEATURES:
  1000  
  1001  * builder/amazon/ebs: Ability to specify which availability zone to create
  1002    instance in. [GH-536]
  1003  
  1004  IMPROVEMENTS:
  1005  
  1006  * core: builders can now give warnings during validation. warnings won't
  1007    fail the build but may hint at potential future problems.
  1008  * builder/digitalocean: Can now specify a droplet name
  1009  * builder/virtualbox: Can now disable guest addition download entirely
  1010    by setting "guest_additions_mode" to "disable" [GH-580]
  1011  * builder/virtualbox,vmware: ISO urls can now be https [GH-587]
  1012  * builder/virtualbox,vmware: Warning if shutdown command is not specified,
  1013    since it is a common case of data loss.
  1014  
  1015  BUG FIXES:
  1016  
  1017  * core: Won't panic when writing to a bad pipe. [GH-560]
  1018  * builder/amazon/all: Properly scrub access key and secret key from logs.
  1019    [GH-554]
  1020  * builder/openstack: Properly scrub password from logs [GH-554]
  1021  * builder/virtualbox: No panic if SSH host port min/max is the same. [GH-594]
  1022  * builder/vmware: checks if `ifconfig` is in `/sbin` [GH-591]
  1023  * builder/vmware: Host IP lookup works for non-C locales. [GH-592]
  1024  * common/uuid: Use cryptographically secure PRNG when generating
  1025    UUIDs. [GH-552]
  1026  * communicator/ssh: File uploads that exceed the size of memory no longer
  1027    cause crashes. [GH-561]
  1028  
  1029  ## 0.3.10 (October 20, 2013)
  1030  
  1031  FEATURES:
  1032  
  1033  * Ansible provisioner
  1034  
  1035  IMPROVEMENTS:
  1036  
  1037  * post-processor/vagrant: support instance-store AMIs built by Packer. [GH-502]
  1038  * post-processor/vagrant: can now specify compression level to use
  1039    when creating the box. [GH-506]
  1040  
  1041  BUG FIXES:
  1042  
  1043  * builder/all: timeout waiting for SSH connection is a failure. [GH-491]
  1044  * builder/amazon: Scrub sensitive data from the logs. [GH-521]
  1045  * builder/amazon: Handle the situation where an EC2 instance might not
  1046    be immediately available. [GH-522]
  1047  * builder/amazon/chroot: Files copied into the chroot remove destination
  1048    before copy, fixing issues with dangling symlinks. [GH-500]
  1049  * builder/digitalocean: don't panic if erroneous API response doesn't
  1050    contain error message. [GH-492]
  1051  * builder/digitalocean: scrub API keys from config debug output [GH-516]
  1052  * builder/virtualbox: error if VirtualBox version cant be detected. [GH-488]
  1053  * builder/virtualbox: detect if vboxdrv isn't properly setup. [GH-488]
  1054  * builder/virtualbox: sleep a bit before export to ensure the sesssion
  1055    is unlocked. [GH-512]
  1056  * builder/virtualbox: create SATA drives properly on VirtualBox 4.3 [GH-547]
  1057  * builder/virtualbox: support user templates in SSH key path. [GH-539]
  1058  * builder/vmware: support user templates in SSH key path. [GH-539]
  1059  * communicator/ssh: Fix issue where a panic could arise from a nil
  1060    dereference. [GH-525]
  1061  * post-processor/vagrant: Fix issue with VirtualBox OVA. [GH-548]
  1062  * provisioner/salt: Move salt states to correct remote directory. [GH-513]
  1063  * provisioner/shell: Won't block on certain scripts on Windows anymore.
  1064    [GH-507]
  1065  
  1066  ## 0.3.9 (October 2, 2013)
  1067  
  1068  FEATURES:
  1069  
  1070  * The Amazon chroot builder is now able to run without any `sudo` privileges
  1071    by using the "command_wrapper" configuration. [GH-430]
  1072  * Chef provisioner supports environments. [GH-483]
  1073  
  1074  BUG FIXES:
  1075  
  1076  * core: default user variable values don't need to be strings. [GH-456]
  1077  * builder/amazon-chroot: Fix errors with waitin for state change. [GH-459]
  1078  * builder/digitalocean: Use proper error message JSON key (DO API change).
  1079  * communicator/ssh: SCP uploads now work properly when directories
  1080    contain symlinks. [GH-449]
  1081  * provisioner/chef-solo: Data bags and roles path are now properly
  1082    populated when set. [GH-470]
  1083  * provisioner/shell: Windows line endings are actually properly changed
  1084    to Unix line endings. [GH-477]
  1085  
  1086  ## 0.3.8 (September 22, 2013)
  1087  
  1088  FEATURES:
  1089  
  1090  * core: You can now specify `only` and `except` configurations on any
  1091    provisioner or post-processor to specify a list of builds that they
  1092    are valid for. [GH-438]
  1093  * builders/virtualbox: Guest additions can be attached rather than uploaded,
  1094    easier to handle for Windows guests. [GH-405]
  1095  * provisioner/chef-solo: Ability to specify a custom Chef configuration
  1096    template.
  1097  * provisioner/chef-solo: Roles and data bags support. [GH-348]
  1098  
  1099  IMPROVEMENTS:
  1100  
  1101  * core: User variables can now be used for integer, boolean, etc.
  1102    values. [GH-418]
  1103  * core: Plugins made with incompatible versions will no longer load.
  1104  * builder/amazon/all: Interrupts work while waiting for AMI to be ready.
  1105  * provisioner/shell: Script line-endings are automatically converted to
  1106    Unix-style line-endings. Can be disabled by setting "binary" to "true".
  1107    [GH-277]
  1108  
  1109  BUG FIXES:
  1110  
  1111  * core: Set TCP KeepAlives on internally created RPC connections so that
  1112    they don't die. [GH-416]
  1113  * builder/amazon/all: While waiting for AMI, will detect "failed" state.
  1114  * builder/amazon/all: Waiting for state will detect if the resource (AMI,
  1115    instance, etc.) disappears from under it.
  1116  * builder/amazon/instance: Exclude only contents of /tmp, not /tmp
  1117    itself. [GH-437]
  1118  * builder/amazon/instance: Make AccessKey/SecretKey available to bundle
  1119    command even when they come from the environment. [GH-434]
  1120  * builder/virtualbox: F1-F12 and delete scancodes now work. [GH-425]
  1121  * post-processor/vagrant: Override configurations properly work. [GH-426]
  1122  * provisioner/puppet-masterless: Fix failure case when both facter vars
  1123    are used and prevent_sudo. [GH-415]
  1124  * provisioner/puppet-masterless: User variables now work properly in
  1125    manifest file and hiera path. [GH-448]
  1126  
  1127  ## 0.3.7 (September 9, 2013)
  1128  
  1129  BACKWARDS INCOMPATIBILITIES:
  1130  
  1131  * The "event_delay" option for the DigitalOcean builder is now gone.
  1132    The builder automatically waits for events to go away. Run your templates
  1133    through `packer fix` to get rid of these.
  1134  
  1135  FEATURES:
  1136  
  1137  * **NEW PROVISIONER:** `puppet-masterless`. You can now provision with
  1138    a masterless Puppet setup. [GH-234]
  1139  * New globally available template function: `uuid`. Generates a new random
  1140    UUID.
  1141  * New globally available template function: `isotime`. Generates the
  1142    current time in ISO standard format.
  1143  * New Amazon template function: `clean_ami_name`. Substitutes '-' for
  1144    characters that are illegal to use in an AMI name.
  1145  
  1146  IMPROVEMENTS:
  1147  
  1148  * builder/amazon/all: Ability to specify the format of the temporary
  1149    keypair created. [GH-389]
  1150  * builder/amazon/all: Support the NoDevice flag for block mappings. [GH-396]
  1151  * builder/digitalocean: Retry on any pending event errors.
  1152  * builder/openstack: Can now specify a project. [GH-382]
  1153  * builder/virtualbox: Can now attach hard drive over SATA. [GH-391]
  1154  * provisioner/file: Can now upload directories. [GH-251]
  1155  
  1156  BUG FIXES:
  1157  
  1158  * core: Detect if SCP is not enabled on the other side. [GH-386]
  1159  * builder/amazon/all: When copying AMI to multiple regions, copy
  1160    the metadata (tags and attributes) as well. [GH-388]
  1161  * builder/amazon/all: Fix panic case where eventually consistent
  1162    instance state caused an index out of bounds.
  1163  * builder/virtualbox: The `vm_name` setting now properly sets the OVF
  1164    name of the output. [GH-401]
  1165  * builder/vmware: Autoanswer VMware dialogs. [GH-393]
  1166  * command/inspect: Fix weird output for default values for optional vars.
  1167  
  1168  ## 0.3.6 (September 2, 2013)
  1169  
  1170  FEATURES:
  1171  
  1172  * User variables can now be specified as "required", meaning the user
  1173    MUST specify a value. Just set the default value to "null". [GH-374]
  1174  
  1175  IMPROVEMENTS:
  1176  
  1177  * core: Much improved interrupt handling. For example, interrupts now
  1178    cancel much more quickly within provisioners.
  1179  * builder/amazon: In `-debug` mode, the keypair used will be saved to
  1180    the current directory so you can access the machine. [GH-373]
  1181  * builder/amazon: In `-debug` mode, the DNS is outputted.
  1182  * builder/openstack: IPv6 addresses supported for SSH. [GH-379]
  1183  * communicator/ssh: Support for private keys encrypted using PKCS8. [GH-376]
  1184  * provisioner/chef-solo: You can now use user variables in the `json`
  1185    configuration for Chef. [GH-362]
  1186  
  1187  BUG FIXES:
  1188  
  1189  * core: Concurrent map access is completely gone, fixing rare issues
  1190    with runtime memory corruption. [GH-307]
  1191  * core: Fix possible panic when ctrl-C during provisioner run.
  1192  * builder/digitalocean: Retry destroy a few times because DO sometimes
  1193    gives false errors.
  1194  * builder/openstack: Properly handle the case no image is made. [GH-375]
  1195  * builder/openstack: Specifying a region is now required in a template.
  1196  * provisioners/salt-masterless: Use filepath join to properly join paths.
  1197  
  1198  ## 0.3.5 (August 28, 2013)
  1199  
  1200  FEATURES:
  1201  
  1202  * **NEW BUILDER:** `openstack`. You can now build on OpenStack. [GH-155]
  1203  * **NEW PROVISIONER:** `chef-solo`. You can now provision with Chef
  1204    using `chef-solo` from local cookbooks.
  1205  * builder/amazon: Copy AMI to multiple regions with `ami_regions`. [GH-322]
  1206  * builder/virtualbox,vmware: Can now use SSH keys as an auth mechanism for
  1207    SSH using `ssh_key_path`. [GH-70]
  1208  * builder/virtualbox,vmware: Support SHA512 as a checksum type. [GH-356]
  1209  * builder/vmware: The root hard drive type can now be specified with
  1210    "disk_type_id" for advanced users. [GH-328]
  1211  * provisioner/salt-masterless: Ability to specfy a minion config. [GH-264]
  1212  * provisioner/salt-masterless: Ability to upload pillars. [GH-353]
  1213  
  1214  IMPROVEMENTS:
  1215  
  1216  * core: Output message when Ctrl-C received that we're cleaning up. [GH-338]
  1217  * builder/amazon: Tagging now works with all amazon builder types.
  1218  * builder/vmware: Option `ssh_skip_request_pty` for not requesting a PTY
  1219    for the SSH connection. [GH-270]
  1220  * builder/vmware: Specify a `vmx_template_path` in order to customize
  1221    the generated VMX. [GH-270]
  1222  * command/build: Machine-readable output now contains build errors, if any.
  1223  * command/build: An "end" sentinel is outputted in machine-readable output
  1224    for artifact listing so it is easier to know when it is over.
  1225  
  1226  BUG FIXES:
  1227  
  1228  * core: Fixed a couple cases where a double ctrl-C could panic.
  1229  * core: Template validation fails if an override is specified for a
  1230    non-existent builder. [GH-336]
  1231  * core: The SSH connection is heartbeated so that drops can be
  1232    detected. [GH-200]
  1233  * builder/amazon/instance: Remove check for ec2-ami-tools because it
  1234    didn't allow absolute paths to work properly. [GH-330]
  1235  * builder/digitalocean: Send a soft shutdown request so that files
  1236    are properly synced before shutdown. [GH-332]
  1237  * command/build,command/validate: If a non-existent build is specified to
  1238    '-only' or '-except', it is now an error. [GH-326]
  1239  * post-processor/vagrant: Setting OutputPath with a timestamp now
  1240    always works properly. [GH-324]
  1241  * post-processor/vagrant: VirtualBox OVA formats now turn into
  1242    Vagrant boxes properly. [GH-331]
  1243  * provisioner/shell: Retry upload if start command fails, making reboot
  1244    handling much more robust.
  1245  
  1246  ## 0.3.4 (August 21, 2013)
  1247  
  1248  IMPROVEMENTS:
  1249  
  1250  * post-processor/vagrant: the file being compressed will be shown
  1251    in the UI [GH-314]
  1252  
  1253  BUG FIXES:
  1254  
  1255  * core: Avoid panics when double-interrupting Packer.
  1256  * provisioner/shell: Retry shell script uploads, making reboots more
  1257    robust if they happen to fail in this stage. [GH-282]
  1258  
  1259  ## 0.3.3 (August 19, 2013)
  1260  
  1261  FEATURES:
  1262  
  1263  * builder/virtualbox: support exporting in OVA format. [GH-309]
  1264  
  1265  IMPROVEMENTS:
  1266  
  1267  * core: All HTTP downloads across Packer now support the standard
  1268    proxy environmental variables (`HTTP_PROXY`, `NO_PROXY`, etc.) [GH-252]
  1269  * builder/amazon: API requests will use HTTP proxy if specified by
  1270    enviromental variables.
  1271  * builder/digitalocean: API requests will use HTTP proxy if specified
  1272    by environmental variables.
  1273  
  1274  BUG FIXES:
  1275  
  1276  * core: TCP connection between plugin processes will keep-alive. [GH-312]
  1277  * core: No more "unused key keep_input_artifact" for post processors [GH-310]
  1278  * post-processor/vagrant: `output_path` templates now work again.
  1279  
  1280  ## 0.3.2 (August 18, 2013)
  1281  
  1282  FEATURES:
  1283  
  1284  * New command: `packer inspect`. This command tells you the components of
  1285    a template. It respects the `-machine-readable` flag as well so you can
  1286    parse out components of a template.
  1287  * Packer will detect its own crashes (always a bug) and save a "crash.log"
  1288    file.
  1289  * builder/virtualbox: You may now specify multiple URLs for an ISO
  1290    using "iso_url" in a template. The URLs will be tried in order.
  1291  * builder/vmware: You may now specify multiple URLs for an ISO
  1292    using "iso_url" in a template. The URLs will be tried in order.
  1293  
  1294  IMPROVEMENTS:
  1295  
  1296  * core: built with Go 1.1.2
  1297  * core: packer help output now loads much faster.
  1298  * builder/virtualbox: guest_additions_url can now use the `Version`
  1299    variable to get the VirtualBox version. [GH-272]
  1300  * builder/virtualbox: Do not check for VirtualBox as part of template
  1301    validation; only check at execution.
  1302  * builder/vmware: Do not check for VMware as part of template validation;
  1303    only check at execution.
  1304  * command/build: A path of "-" will read the template from stdin.
  1305  * builder/amazon: add block device mappings [GH-90]
  1306  
  1307  BUG FIXES:
  1308  
  1309  * windows: file URLs are easier to get right as Packer
  1310    has better parsing and error handling for Windows file paths. [GH-284]
  1311  * builder/amazon/all: Modifying more than one AMI attribute type no longer
  1312    crashes.
  1313  * builder/amazon-instance: send IAM instance profile data. [GH-294]
  1314  * builder/digitalocean: API request parameters are properly URL
  1315    encoded. [GH-281]
  1316  * builder/virtualbox: dowload progress won't be shown until download
  1317    actually starts. [GH-288]
  1318  * builder/virtualbox: floppy files names of 13 characters are now properly
  1319    written to the FAT12 filesystem. [GH-285]
  1320  * builder/vmware: dowload progress won't be shown until download
  1321    actually starts. [GH-288]
  1322  * builder/vmware: interrupt works while typing commands over VNC.
  1323  * builder/virtualbox: floppy files names of 13 characters are now properly
  1324    written to the FAT12 filesystem. [GH-285]
  1325  * post-processor/vagrant: Process user variables. [GH-295]
  1326  
  1327  ## 0.3.1 (August 12, 2013)
  1328  
  1329  IMPROVEMENTS:
  1330  
  1331  * provisioner/shell: New setting `start_retry_timeout` which is the timeout
  1332    for the provisioner to attempt to _start_ the remote process. This allows
  1333    the shell provisioner to work properly with reboots. [GH-260]
  1334  
  1335  BUG FIXES:
  1336  
  1337  * core: Remote command output containing '\r' now looks much better
  1338    within the Packer output.
  1339  * builder/vmware: Fix issue with finding driver files. [GH-279]
  1340  * provisioner/salt-masterless: Uploads work properly from Windows. [GH-276]
  1341  
  1342  ## 0.3.0 (August 12, 2013)
  1343  
  1344  BACKWARDS INCOMPATIBILITIES:
  1345  
  1346  * All `{{.CreateTime}}` variables within templates (such as for AMI names)
  1347    are now replaced with `{{timestamp}}`. Run `packer fix` to fix your
  1348    templates.
  1349  
  1350  FEATURES:
  1351  
  1352  * **User Variables** allow you to specify variables within your templates
  1353    that can be replaced using the command-line, files, or environmental
  1354    variables. This dramatically improves the portability of packer templates.
  1355    See the documentation for more information.
  1356  * **Machine-readable output** can be enabled by passing the
  1357    `-machine-readable` flag to _any_ Packer command.
  1358  * All strings in a template are now processed for variables/functions,
  1359    so things like `{{timestamp}}` can be used everywhere. More features will
  1360    be added in the future.
  1361  * The `amazon` builders (all of them) can now have attributes of their
  1362    resulting AMIs modified, such as access permissions and product codes.
  1363  
  1364  IMPROVEMENTS:
  1365  
  1366  * builder/amazon/all: User data can be passed to start the instances. [GH-253]
  1367  * provisioner/salt-masterless: `local_state_tree` is no longer required,
  1368    allowing you to use shell provisioner (or others) to bring this down.
  1369    [GH-269]
  1370  
  1371  BUG FIXES:
  1372  
  1373  * builder/amazon/ebs,instance: Retry deleing security group a few times.
  1374    [GH-278]
  1375  * builder/vmware: Workstation works on Windows XP now. [GH-238]
  1376  * builder/vmware: Look for files on Windows in multiple locations
  1377    using multiple environmental variables. [GH-263]
  1378  * provisioner/salt-masterless: states aren't deleted after the run
  1379    anymore. [GH-265]
  1380  * provisioner/salt-masterless: error if any commands exit with a non-zero
  1381    exit status. [GH-266]
  1382  
  1383  ## 0.2.3 (August 7, 2013)
  1384  
  1385  IMPROVEMENTS:
  1386  
  1387  * builder/amazon/all: Added Amazon AMI tag support [GH-233]
  1388  
  1389  BUG FIXES:
  1390  
  1391  * core: Absolute/relative filepaths on Windows now work for iso_url
  1392    and other settings. [GH-240]
  1393  * builder/amazon/all: instance info is refreshed while waiting for SSH,
  1394    allowing Packer to see updated IP/DNS info. [GH-243]
  1395  
  1396  ## 0.2.2 (August 1, 2013)
  1397  
  1398  FEATURES:
  1399  
  1400  * New builder: `amazon-chroot` can create EBS-backed AMIs without launching
  1401    a new EC2 instance. This can shave minutes off of the AMI creation process.
  1402    See the docs for more info.
  1403  * New provisioner: `salt-masterless` will provision the node using Salt
  1404    without a master.
  1405  * The `vmware` builder now works with Workstation 9 on Windows. [GH-222]
  1406  * The `vmware` builder now works with Player 5 on Linux. [GH-190]
  1407  
  1408  IMPROVEMENTS:
  1409  
  1410  * core: Colors won't be outputted on Windows unless in Cygwin.
  1411  * builder/amazon/all: Added `iam_instance_profile` to launch the source
  1412    image with a given IAM profile. [GH-226]
  1413  
  1414  BUG FIXES:
  1415  
  1416  * builder/virtualbox,vmware: relative paths work properly as URL
  1417    configurations. [GH-215]
  1418  * builder/virtualbox,vmware: fix race condition in deleting the output
  1419    directory on Windows by retrying.
  1420  
  1421  ## 0.2.1 (July 26, 2013)
  1422  
  1423  FEATURES:
  1424  
  1425  * New builder: `amazon-instance` can create instance-storage backed
  1426    AMIs.
  1427  * VMware builder now works with Workstation 9 on Linux.
  1428  
  1429  IMPROVEMENTS:
  1430  
  1431  * builder/amazon/all: Ctrl-C while waiting for state change works
  1432  * builder/amazon/ebs: Can now launch instances into a VPC for added protection [GH-210]
  1433  * builder/virtualbox,vmware: Add backspace, delete, and F1-F12 keys to the boot
  1434    command.
  1435  * builder/virtualbox: massive performance improvements with big ISO files because
  1436    an expensive copy is avoided. [GH-202]
  1437  * builder/vmware: CD is removed prior to exporting final machine. [GH-198]
  1438  
  1439  BUG FIXES:
  1440  
  1441  * builder/amazon/all: Gracefully handle when AMI appears to not exist
  1442    while AWS state is propogating. [GH-207]
  1443  * builder/virtualbox: Trim carriage returns for Windows to properly
  1444    detect VM state on Windows. [GH-218]
  1445  * core: build names no longer cause invalid config errors. [GH-197]
  1446  * command/build: If any builds fail, exit with non-zero exit status.
  1447  * communicator/ssh: SCP exit codes are tested and errors are reported. [GH-195]
  1448  * communicator/ssh: Properly change slash direction for Windows hosts. [GH-218]
  1449  
  1450  ## 0.2.0 (July 16, 2013)
  1451  
  1452  BACKWARDS INCOMPATIBILITIES:
  1453  
  1454  * "iso_md5" in the virtualbox and vmware builders is replaced with
  1455    "iso_checksum" and "iso_checksum_type" (with the latter set to "md5").
  1456    See the announce below on `packer fix` to automatically fix your templates.
  1457  
  1458  FEATURES:
  1459  
  1460  * **NEW COMMAND:** `packer fix` will attempt to fix templates from older
  1461    versions of Packer that are now broken due to backwards incompatibilities.
  1462    This command will fix the backwards incompatibilities introduced in this
  1463    version.
  1464  * Amazon EBS builder can now optionally use a pre-made security group
  1465    instead of randomly generating one.
  1466  * DigitalOcean API key and client IDs can now be passed in as
  1467    environmental variables. See the documentatin for more details.
  1468  * VirtualBox and VMware can now have `floppy_files` specified to attach
  1469    floppy disks when booting. This allows for unattended Windows installs.
  1470  * `packer build` has a new `-force` flag that forces the removal of
  1471    existing artifacts if they exist. [GH-173]
  1472  * You can now log to a file (instead of just stderr) by setting the
  1473    `PACKER_LOG_FILE` environmental variable. [GH-168]
  1474  * Checksums other than MD5 can now be used. SHA1 and SHA256 can also
  1475    be used. See the documentation on `iso_checksum_type` for more info. [GH-175]
  1476  
  1477  IMPROVEMENTS:
  1478  
  1479  * core: invalid keys in configuration are now considered validation
  1480    errors. [GH-104]
  1481  * core: all builders now share a common SSH connection core, improving
  1482    SSH reliability over all the builders.
  1483  * amazon-ebs: Credentials will come from IAM role if available. [GH-160]
  1484  * amazon-ebs: Verify the source AMI is EBS-backed before launching. [GH-169]
  1485  * shell provisioner: the build name and builder type are available in
  1486    the `PACKER_BUILD_NAME` and `PACKER_BUILDER_TYPE` env vars by default,
  1487    respectively. [GH-154]
  1488  * vmware: error if shutdown command has non-zero exit status.
  1489  
  1490  BUG FIXES:
  1491  
  1492  * core: UI messages are now properly prefixed with spaces again.
  1493  * core: If SSH connection ends, re-connection attempts will take
  1494    place. [GH-152]
  1495  * virtualbox: "paused" doesn't mean the VM is stopped, improving
  1496    shutdown detection.
  1497  * vmware: error if guest IP could not be detected. [GH-189]
  1498  
  1499  ## 0.1.5 (July 7, 2013)
  1500  
  1501  FEATURES:
  1502  
  1503  * "file" uploader will upload files from the machine running Packer to the
  1504    remote machine.
  1505  * VirtualBox guest additions URL and checksum can now be specified, allowing
  1506    the VirtualBox builder to have the ability to be used completely offline.
  1507  
  1508  IMPROVEMENTS:
  1509  
  1510  * core: If SCP is not available, a more descriptive error message
  1511    is shown telling the user. [GH-127]
  1512  * shell: Scripts are now executed by default according to their shebang,
  1513    not with `/bin/sh`. [GH-105]
  1514  * shell: You can specify what interpreter you want inline scripts to
  1515    run with `inline_shebang`.
  1516  * virtualbox: Delete the packer-made SSH port forwarding prior to
  1517    exporting the VM.
  1518  
  1519  BUG FIXES:
  1520  
  1521  * core: Non-200 response codes on downloads now show proper errors.
  1522    [GH-141]
  1523  * amazon-ebs: SSH handshake is retried. [GH-130]
  1524  * vagrant: The `BuildName` template propery works properly in
  1525    the output path.
  1526  * vagrant: Properly configure the provider-specific post-processors so
  1527    things like `vagrantfile_template` work. [GH-129]
  1528  * vagrant: Close filehandles when copying files so Windows can
  1529    rename files. [GH-100]
  1530  
  1531  ## 0.1.4 (July 2, 2013)
  1532  
  1533  FEATURES:
  1534  
  1535  * virtualbox: Can now be built headless with the "Headless" option. [GH-99]
  1536  * virtualbox: <wait5> and <wait10> codes for waiting 5 and 10 seconds
  1537    during the boot sequence, respectively. [GH-97]
  1538  * vmware: Can now be built headless with the "Headless" option. [GH-99]
  1539  * vmware: <wait5> and <wait10> codes for waiting 5 and 10 seconds
  1540    during the boot sequence, respectively. [GH-97]
  1541  * vmware: Disks are defragmented and compacted at the end of the build.
  1542    This can be disabled using "skip_compaction"
  1543  
  1544  IMPROVEMENTS:
  1545  
  1546  * core: Template syntax errors now show line and character number. [GH-56]
  1547  * amazon-ebs: Access key and secret access key default to
  1548    environmental variables. [GH-40]
  1549  * virtualbox: Send password for keyboard-interactive auth [GH-121]
  1550  * vmware: Send password for keyboard-interactive auth [GH-121]
  1551  
  1552  BUG FIXES:
  1553  
  1554  * vmware: Wait until shut down cleans up properly to avoid corrupt
  1555    disk files [GH-111]
  1556  
  1557  ## 0.1.3 (July 1, 2013)
  1558  
  1559  FEATURES:
  1560  
  1561  * The VMware builder can now upload the VMware tools for you into
  1562    the VM. This is opt-in, you must specify the `tools_upload_flavor`
  1563    option. See the website for more documentation.
  1564  
  1565  IMPROVEMENTS:
  1566  
  1567  * digitalocean: Errors contain human-friendly error messages. [GH-85]
  1568  
  1569  BUG FIXES:
  1570  
  1571  * core: More plugin server fixes that avoid hangs on OS X 10.7 [GH-87]
  1572  * vagrant: AWS boxes will keep the AMI artifact around [GH-55]
  1573  * virtualbox: More robust version parsing for uploading guest additions. [GH-69]
  1574  * virtualbox: Output dir and VM name defaults depend on build name,
  1575    avoiding collisions. [GH-91]
  1576  * vmware: Output dir and VM name defaults depend on build name,
  1577    avoiding collisions. [GH-91]
  1578  
  1579  ## 0.1.2 (June 29, 2013)
  1580  
  1581  IMPROVEMENTS:
  1582  
  1583  * core: Template doesn't validate if there are no builders.
  1584  * vmware: Delete any VMware files in the VM that aren't necessary for
  1585    it to function.
  1586  
  1587  BUG FIXES:
  1588  
  1589  * core: Plugin servers consider a port in use if there is any
  1590    error listening to it. This fixes I18n issues and Windows. [GH-58]
  1591  * amazon-ebs: Sleep between checking instance state to avoid
  1592    RequestLimitExceeded [GH-50]
  1593  * vagrant: Rename VirtualBox ovf to "box.ovf" [GH-64]
  1594  * vagrant: VMware boxes have the correct provider type.
  1595  * vmware: Properly populate files in artifact so that the Vagrant
  1596    post-processor works. [GH-63]
  1597  
  1598  ## 0.1.1 (June 28, 2013)
  1599  
  1600  BUG FIXES:
  1601  
  1602  * core: plugins listen explicitly on 127.0.0.1, fixing odd hangs. [GH-37]
  1603  * core: fix race condition on verifying checksum of large ISOs which
  1604    could cause panics [GH-52]
  1605  * virtualbox: `boot_wait` defaults to "10s" rather than 0. [GH-44]
  1606  * virtualbox: if `http_port_min` and max are the same, it will no longer
  1607    panic [GH-53]
  1608  * vmware: `boot_wait` defaults to "10s" rather than 0. [GH-44]
  1609  * vmware: if `http_port_min` and max are the same, it will no longer
  1610    panic [GH-53]
  1611  
  1612  ## 0.1.0 (June 28, 2013)
  1613  
  1614  * Initial release