github.com/Hashicorp/packer@v1.3.2/CHANGELOG.md (about)

     1  
     2  ## 1.3.2 (October 26, 2018)
     3  ### IMPROVEMENTS:
     4  * builder/alicloud: Add new `disable_stop_instance` option. [GH-6764]
     5  * builder/alicloud: Support adding tags to image. [GH-6719]
     6  * builder/alicloud: Support ssh with private ip address. [GH-6688]
     7  * builder/amazon: Add support to explicitly control ENA support [GH-6872]
     8  * builder/amazon: Add suppport for `vpc_filter`, `subnet_filter`, and
     9      `security_group_filter`. [GH-6374]
    10  * builder/amazon: Add validation for required `device_name` parameter in
    11      `block_device_mappings`. [GH-6845]
    12  * builder/amazon: Clean up security group wait code. [GH-6843]
    13  * builder/amazon: Update aws-sdk-go to v1.15.54, adding support for
    14      `credential_source`. [GH-6849]
    15  * builder/amazon: Use DescribeRegions for aws region validation. [GH-6512],
    16      [GH-6904]
    17  * builder/azure: Add new `shared_image_gallery` option. [GH-6798]
    18  * builder/googlecompute: Return an error if `startup_script_file` is specified,
    19      but file does not exist. [GH-6848]
    20  * builder/hcloud: Add Hetzner Cloud builder. [GH-6871]
    21  * builder/openstack: Add new `disk_format` option. [GH-6702]
    22  * builder/openstack: Fix bug where `source_image_name` wasn't being used to
    23      properly find a UUID. [GH-6751]
    24  * builder/openstack: Wait for volume availability when cleaning up [GH-6703]
    25  * builder/qemu: Add `disk_detect_zeroes` option. [GH-6827]
    26  * builder/scaleway: Add `boottype` parameter to config. [GH-6772]
    27  * builder/scaleway: Update scaleway-cli vendor. [GH-6771]
    28  * core: New option to add timestamps to UI output. [GH-6784]
    29  * post-processor/vagrant-cloud: Validate vagrant cloud auth token doing an auth
    30      request [GH-6914]
    31  * provisioner/file: Improve error messaging when file destination is a
    32      directory with no trailing slash. [GH-6756]
    33  * provisioner/powershell: Provide better error when Packer can't find
    34      Powershell executable. [GH-6817]
    35  * provisioner/shell-local: Add ability to specify OSs where shell-local can run
    36      [GH-6878]
    37  
    38  ### BUG FIXES:
    39  * builder/alicloud: Fix ssh configuration pointer issues that could cause a bug
    40      [GH-6720]
    41  * builder/alicloud: Fix type error in step_create_tags [GH-6763]
    42  * builder/amazon: Error validating credentials is no longer obscured by a
    43      region validation error. and some region validation refactors and
    44      improvements [GH-6865]
    45  * builder/amazon: Fix error calculating defaults in AWS waiters. [GH-6727]
    46  * builder/amazon: Increase default wait for image import to one hour. [GH-6818]
    47  * builder/amazon: Waiter now fails rather than hanging for extra time when an
    48      image import fails. [GH-6747]
    49  * builder/azure: Updated Azure/go-ntlmssp dependency to resolve an issue with
    50      the winrm communicator not connecting to Windows machines requiring NTLMv2
    51      session security
    52  * builder/digitalocean: Fix ssh configuration pointer issues that could cause a
    53      panic [GH-6729]
    54  * builder/hyperv/vmcx: Allow to set generation from buildfile [GH-6909]
    55  * builder/scaleway: Fix issues with ssh keys. [GH-6768]
    56  * core: Fix error where logging was always enabled when Packer was run from
    57      inside Terraform. [GH-6758]
    58  * core: Fix issue with with names containing spaces in ESX5Driver and in ssh
    59      communicator [GH-6891], [GH-6823]
    60  * core: Fix logger so it doesn't accidentally try to format unescaped strings.
    61      [GH-6824]
    62  * core: Fix race conditions in progress bar code [GH-6858], [GH-6788],
    63      [GH-6851]
    64  * core: Fix various places in multiple builders where config was not being
    65      passed as a pointer. [GH-6739]
    66  * post-processor/manifest: No longer provides an empty ID string for Azure's
    67      managed image artifact [GH-6822]
    68  * provisioner/powershell: Fix a bug in the way we set the ProgressPreference
    69      variable in the default `execute_command` [GH-6838]
    70  * provisioner/windows-restart: Fix extraneous break which forced early exit
    71      from our wait loop. [GH-6792]
    72  
    73  ## 1.3.1 (September 13, 2018)
    74  
    75  ### IMPROVEMENTS:
    76  * builder/amazon: automatically decode encoded authorization messages if
    77      possible [GH-5415]
    78  * builder:amazon: Optional cleanup of the authorized keys file [GH-6713]
    79  * builder/qemu: Fixed bug where a -device in the qemuargs would override the default network settings, resulting in no network [GH-6807]
    80  
    81  ### BUG FIXES:
    82  * builder/amazon: fix bugs relating to spot instances provisioning [GH-6697]
    83      [GH-6693]
    84  * builder/openstack: fix ssh keypair not attached [GH-6701]
    85  * core: progressbar: fix deadlock locking builds afer first display [GH-6698]
    86  
    87  ## 1.3.0 (September 11, 2018)
    88  
    89  ### IMPROVEMENTS:
    90  * azure/arm: Retry cleanup of individual resources on error [GH-6644]
    91  * builder/alicloud: Support source image coming from marketplace [GH-6588]
    92  * builder/amazon-chroot: Add new `root_volume_type` option. [GH-6669]
    93  * builder/amazon-chroot: If you have a PV source AMI, with the Amazon Chroot
    94      builder, and the destination AMI is type HVM, you can now enable
    95      ena_support, example: [GH-6670]
    96  * builder/amazon-chroot: New feature `root_volume_tags` to tag the created
    97      volumes. [GH-6504]
    98  * builder/amazon: Create a random interim AMI name when encrypt_boot is true so
    99      that ami name is not searchable. [GH-6657]
   100  * builder/azure: Implement clean_image_name template engine. [GH-6558]
   101  * builder/cloudstack: Add option to use a fixed port via public_port. [GH-6532]
   102  * builder/digitalocean: Add support for tagging to instances [GH-6546]
   103  * builder/googlecompute: Add new `min_cpu_platform` feature [GH-6607]
   104  * builder/googlecompute: Update the list of public image projects that we
   105      search, based on GCE documentation. [GH-6648]
   106  * builder/lxc: Allow unplivileged LXC containers. [GH-6279]
   107  * builder/oci: Add `metadata` feature to Packer config. [GH-6498]
   108  * builder/openstack: Add support for getting config from clouds-public.yaml.
   109      [GH-6595]
   110  * builder/openstack: Add support for ports. [GH-6570]
   111  * builder/openstack: Add support for source_image_filter. [GH-6490]
   112  * builder/openstack: Migrate floating IP usage to Network v2 API from Compute
   113      API. [GH-6373]
   114  * builder/openstack: Support Block Storage volumes as boot volume. [GH-6596]
   115  * builder/oracle-oci: Add support for freeform tagging of OCI images [GH-6338]
   116  * builder/qemu: add ssh agent support. [GH-6541]
   117  * builder/qemu: New `use_backing_file` feature [GH-6249]
   118  * builder/vmware-iso: Add support for disk compaction [GH-6411]
   119  * builder/vmware-iso: Try to use ISO files uploaded to the datastore when
   120      building remotely instead of uploading them freshly every time [GH-5165]
   121  * command/validate: Warn users if config needs fixing. [GH-6423]
   122  * core: Add a 'split' function to parse template variables. [GH-6357]
   123  * core: Add a template function allowing users to read keys from consul
   124      [GH-6577]
   125  * core: Add a template function allowing users to read keys from vault
   126      [GH-6533]
   127  * core: Add progress-bar to download step. [GH-5851]
   128  * core: Create a new root-level Packer template option, "sensitive-variables"
   129      which allows users to list which variables they would like to have scrubbed
   130      from the Packer logs. [GH-6610]
   131  * core: Create new config options, "boot_keygroup_interval" and
   132      "boot_key_interval" that can be set at the builder-level to supercede
   133      PACKER_KEY_INTERVAL for the bootcommand. [GH-6616]
   134  * core: Deduplicate ui and log lines that stream to terminal [GH-6611]
   135  * core: Refactor and deduplicate ssh code across builders. This should be a no-
   136      op but is a big win for maintainability. [GH-6621] [GH-6613]
   137  * post-processor/compress: Add support for xz compression [GH-6534]
   138  * post-processor/vagrant: Support for Docker images. [GH-6494]
   139  * post-processor/vsphere: Add new `esxi_host` option. [GH-5366]
   140  * postprocessor/vagrant: Add support for Azure. [GH-6576]
   141  * provisioner/ansible: Add new "extra var", packer_http_addr. [GH-6501]
   142  * provisioner/ansible: Enable {{.WinRMPassword}} template engine. [GH-6450]
   143  * provisioner/shell-local: Create PACKER_HTTP_ADDR environment variable
   144      [GH-6503]
   145  
   146  
   147  ### BUG FIXES:
   148  * builder/amazon-ebssurrogate: Clean up volumes at end of build. [GH-6514]
   149  * builder/amazon: Increase default waiter timeout for AWS
   150      WaitUntilImageAvailable command [GH-6601]
   151  * builder/amazon: Increase the MaxRetries in the Amazon client from the default
   152      to 20, to work around users who regularly reach their requestlimit and are
   153      being throttled. [GH-6641]
   154  * builder/amazon: Properly apply environment overrides to our custom-written
   155      waiters. [GH-6649]
   156  * builder/azure: Generated password satisfies Azure password requirements
   157      [GH-6480]
   158  * builder/hyper-v: Buider no longer errors if skip_compaction isn't true when
   159      skip_export is true, and compaction efficiency is improved [GH-6393]
   160  * builder/lxc: Correctly pass "config" option to "lxc launch". [GH-6563]
   161  * builder/lxc: Determine lxc root according to the running user [GH-6543]
   162  * builder/lxc: Fix file copying for unprivileged LXC containers [GH-6544]
   163  * builder/oracle-oci: Update OCI sdk, fixing validation bug that occurred when
   164      RSA key was encrypted. [GH-6492]
   165  * builder/vmware-iso: Fix crash caused by invalid datacenter url. [GH-6529]
   166  * builder/vmware: Maintain original boot order during CreateVMX step for
   167      vmware-iso builder [GH-6204]
   168  * communicator/chroot: Fix quote escaping so that ansible provisioner works
   169      properly. [GH-6635]
   170  * core: Better error handling in downloader when connection error occurs.
   171      [GH-6557]
   172  * core: Fix broken pathing checks in checksum files. [GH-6525]
   173  * provisioner/shell Create new template option allowing users to choose to
   174      source env vars from a file rather than declaring them inline. This
   175      resolves a bug that occurred when users had complex quoting in their
   176      `execute_command`s [GH-6636]
   177  * provisioner/shell-local: Windows inline scripts now default to being appended
   178      with ".cmd", fixing a backwards incompatibility in v1.2.5 [GH-6626]
   179  * provisioner/windows-restart: Provisioner now works when used in conjuction
   180      with SSH communicator [GH-6606]
   181  
   182  ### BACKWARDS INCOMPATIBILITIES:
   183  * builder/amazon: "owners" field on source_ami_filter is now required for
   184      secuirty reasons. [GH-6585]
   185  * builder/vmware-iso: validation will fail for templates using esxi that have the "disk_type_id" set to something other than "thin" or "" and that do not have "skip_compaction": true also set. Use `packer fix` to fix this. [GH-6411]
   186  
   187  ## 1.2.5 (July 16, 2018)
   188  
   189  ### BUG FIXES:
   190  * builder/alickoud: Fix issue where internet_max_bandwidth_out template option
   191      was not being passed to builder. [GH-6416]
   192  * builder/alicloud: Fix an issue with VPC cleanup. [GH-6418]
   193  * builder/amazon-chroot: Fix communicator bug that broke chroot builds.
   194      [GH-6363]
   195  * builder/amazon: Replace packer's waiters with those from the AWS sdk, solving
   196      several timeout bugs. [GH-6332]
   197  * builder/azure: update azure-sdk-for-go, fixing 32-bit build errors. [GH-6479]
   198  * builder/azure: update the max length of managed_image_resource_group to match
   199      new increased length of 90 characters. [GH-6477]
   200  * builder/hyper-v: Fix secure boot template feature so that it properly passes
   201      the temolate for MicrosoftUEFICertificateAuthority. [GH-6415]
   202  * builder/hyperv: Fix bug in HyperV IP lookups that was causing breakages in
   203      FreeBSD/OpenBSD builds. [GH-6416]
   204  * builder/qemu: Fix error race condition in qemu builder that caused convert to
   205      fail on ubuntu 18.x [GH-6437]
   206  * builder/qemu: vnc_bind_address was not being passed to qemu. [GH-6467]
   207  * builder/virtualbox: Allow iso_url to be a symlink. [GH-6370]
   208  * builder/vmware: Don't fail on DHCP lease files that cannot be read, fixing
   209      bug where builder failed on NAT networks that don't serve DHCP. [GH-6415]
   210  * builder/vmware: Fix bug where we couldn't discover IP if vm_name differed
   211      from the vmx displayName. [GH-6448]
   212  * builder/vmware: Fix validation to prevent hang when remopte_password is not
   213      sent but vmware is building on esxi. [GH-6424]
   214  * builder/vmware:Correctly default the vm export format to ovf; this is what
   215      the docs claimed we already did, but we didn't. [GH-4538]
   216  * communicator/winrm: Revert an attempt to determine whether remote upload
   217      destinations were files or directories, as this broke uploads on systems
   218      without Powershell installed. [GH-6481]
   219  * core: Fix bug in parsing of iso checksum files that arose when setting
   220      iso_url to a relative filepath. [GH-6488]
   221  * core: Fix Packer crash caused by improper error handling in the downloader.
   222      [GH-6381]
   223  * fix: Fix bug where fixer for ssh_private_ip that failed when boolean values
   224      are passed as strings. [GH-6458]
   225  * provisioner/powershell: Make upload of powershell variables retryable, in
   226      case of system restarts. [GH-6388]
   227  
   228  ### IMPROVEMENTS:
   229  * builder/amazon: Add the ap-northeast-3 region. [GH-6385]
   230  * builder/amazon: Spot requests may now have tags applied using the `spot_tags`
   231      option [GH-5452]
   232  * builder/cloudstack: Add support for Projectid and new config option
   233      prevent_firewall_changes. [GH-6487]
   234  * builder/openstack: Add support for token authorization and cloud.yaml.
   235      [GH-6362]
   236  * builder/oracle-oci: Add new "instance_name" template option. [GH-6408]
   237  * builder/scaleway: Add new "bootscript" parameter, allowing the user to not
   238      use the default local bootscript [GH-6439]
   239  * builder/vmware: Add support for linked clones to vmware-vmx. [GH-6394]
   240  * debug: The -debug flag will now cause Packer to pause between provisioner
   241      scripts in addition to Packer steps. [GH-4663]
   242  * post-processor/googlecompute-import: Added new googlecompute-import post-
   243      processor [GH-6451]
   244  * provisioner/ansible: Add new "playbook_files" option to execute multiple
   245      playbooks within one provisioner call. [GH-5086]
   246  
   247  ## 1.2.4 (May 29, 2018)
   248  
   249  ### BUG FIXES:
   250  
   251  * builder/amazon: Can now force the chroot builder to mount an entire block
   252      device instead of a partition [GH-6194]
   253  * builder/azure: windows-sql-cloud is now in the default list of projects to
   254      check for provided images. [GH-6210]
   255  * builder/chroot: A new template option, `nvme_device_path` has been added to
   256      provide a workaround for users who need the amazon-chroot builder to mount
   257      a NVMe volume on their instances. [GH-6295]
   258  * builder/hyper-v: Fix command for mounting multiple disks [GH-6267]
   259  * builder/hyperv: Enable IP retrieval for Server 2008 R2 hosts. [GH-6219]
   260  * builder/hyperv: Fix bug in MAC address specification on Hyper-V. [GH-6187]
   261  * builder/parallels-pvm: Add missing disk compaction step. [GH-6202]
   262  * builder/vmware-esxi: Remove floppy files from the remote server on cleanup.
   263      [GH-6206]
   264  * communicator/winrm: Updated dependencies to fix a race condition [GH-6261]
   265  * core: When using `-on-error=[abort|ask]`, output the error to the user.
   266      [GH-6252]
   267  * provisioner/puppet: Extra-Arguments are no longer prematurely
   268      interpolated.[GH-6215]
   269  * provisioner/shell: Remove file stat that was causing problems uploading files
   270      [GH-6239]
   271  
   272  ### IMPROVEMENTS:
   273  
   274  * builder/amazon: Amazon builders other than `chroot` now support T2 unlimited
   275      instances [GH-6265]
   276  * builder/azure: Allow device login for US government cloud. [GH-6105]
   277  * builder/azure: Devicelogin Support for Windows [GH-6285]
   278  * builder/azure: Enable simultaneous builds within one resource group.
   279      [GH-6231]
   280  * builder/azure: Faster deletion of Azure Resource Groups. [GH-6269]
   281  * builder/azure: Updated Azure SDK to v15.0.0 [GH-6224]
   282  * builder/hyper-v: Hyper-V builds now connect to vnc display by default when
   283      building [GH-6243]
   284  * builder/hyper-v: New `use_fixed_vhd_format` allows vm export in an Azure-
   285      compatible format [GH-6101]
   286  * builder/hyperv: New config option for specifying what secure boot template to
   287      use, allowing secure boot of linux vms. [GH-5883]
   288  * builder/qemu: Add support for hvf accelerator. [GH-6193]
   289  * builder/scaleway: Fix SSH communicator connection issue. [GH-6238]
   290  * core: Add opt-in Packer top-level command autocomplete [GH-5454]
   291  * post-processor/shell-local: New options have been added to create feature
   292      parity with the shell-local provisioner. This feature now works on Windows
   293      hosts. [GH-5956]
   294  * provisioner/chef: New config option allows user to skip cleanup of chef
   295      client staging directory. [GH-4300]
   296  * provisioner/shell-local: Can now access automatically-generated WinRM
   297      password as variable [GH-6251]
   298  * provisoner/shell-local: New options have been added to create feature parity
   299      with the shell-local post-processor. This feature now works on Windows
   300      hosts. [GH-5956]
   301  * builder/virtualbox: Use HTTPS to download guest editions, now that it's
   302      available. [GH-6406]
   303  
   304  ## 1.2.3 (April 25, 2018)
   305  
   306  ### BUG FIXES:
   307  
   308  * builder/azure: Azure CLI may now be logged into several accounts. [GH-6087]
   309  * builder/ebssurrogate: Snapshot all launch devices. [GH-6056]
   310  * builder/hyper-v: Fix CopyExportedVirtualMachine script so it works with
   311      links. [GH-6082]
   312  * builder/oracle-classic: Fix panics when cleaning up resources that haven't
   313      been created. [GH-6095]
   314  * builder/parallels: Allow user to cancel build while the OS is starting up.
   315      [GH-6166]
   316  * builder/qemu: Avoid warning when using raw format. [GH-6080]
   317  * builder/scaleway: Fix compilation issues on solaris/amd64. [GH-6069]
   318  * builder/virtualbox: Fix broken scancodes in boot_command. [GH-6067]
   319  * builder/vmware-iso: Fail in validation if user gives wrong remote_type value.
   320      [GH-4563]
   321  * builder/vmware: Fixed a case-sensitivity issue when determing the network
   322      type during the cloning step in the vmware-vmx builder. [GH-6057]
   323  * builder/vmware: Fixes the DHCP lease and configuration pathfinders for VMware
   324      Player. [GH-6096]
   325  * builder/vmware: Multi-disk VM's can be properly handled by the compacting
   326      stage. [GH-6074]
   327  * common/bootcommand: Fix numerous bugs in the boot command code, and make
   328      supported features consistent across builders. [GH-6129]
   329  * communicator/ssh: Stop trying to discover whether destination is a directory
   330      from uploader. [GH-6124]
   331  * post-processor/vagrant: Large VMDKs should no longer show a 0-byte size on OS
   332      X. [GH-6084]
   333  * post-processor/vsphere: Fix encoding of spaces in passwords for upload.
   334      [GH-6110]
   335  * provisioner/ansible: Pass the inventory_directory configuration option to
   336      ansible -i when it is set. [GH-6065]
   337  * provisioner/powershell: fix bug with SSH communicator + cygwin. [GH-6160]
   338  * provisioner/powershell: The {{.WinRMPassword}} template variable now works
   339      with parallel builders. [GH-6144]
   340  
   341  ### IMPROVEMENTS:
   342  
   343  * builder/alicloud: Update aliyungo common package. [GH-6157]
   344  * builder/amazon: Expose more source ami data as template variables. [GH-6088]
   345  * builder/amazon: Setting `force_delete` will only delete AMIs owned by the
   346      user. This should prevent failures where we try to delete an AMI with a
   347      matching name, but owned by someone else. [GH-6111]
   348  * builder/azure: Users of Powershell provisioner may access the randomly-
   349      generated winrm password using the template variable {{.WinRMPassword}}.
   350      [GH-6113]
   351  * builder/google: Users of Powershell provisioner may access the randomly-
   352      generated winrm password using the template variable {{.WinRMPassword}}.
   353      [GH-6141]
   354  * builder/hyper-v: User can now configure hyper-v disk block size. [GH-5941]
   355  * builder/openstack: Add configuration option for `instance_name`. [GH-6041]
   356  * builder/oracle-classic: Better validation of destination image name.
   357      [GH-6089]
   358  * builder/oracle-oci: New config options for user data and user data file.
   359      [GH-6079]
   360  * builder/oracle-oci: use the official OCI sdk instead of handcrafted client.
   361      [GH-6142]
   362  * builder/triton: Add support to Skip TLS Verification of Triton Certificate.
   363      [GH-6039]
   364  * provisioner/ansible: Ansible users may provide a custom inventory file.
   365      [GH-6107]
   366  * provisioner/file: New `generated` tag allows users to upload files created
   367      during Packer run. [GH-3891]
   368  
   369  ## 1.2.2 (March 26, 2018)
   370  
   371  ### BUG FIXES:
   372  
   373  * builder/amazon: Fix AWS credential defaulting [GH-6019]
   374  * builder/LXC: make sleep timeout easily configurable [GH-6038]
   375  * builder/virtualbox: Correctly send multi-byte scancodes when typing boot
   376      command. [GH-5987]
   377  * builder/virtualbox: Special boot-commands no longer overwrite previous
   378      commands [GH-6002]
   379  * builder/vmware: Default to disabling XHCI bus for USB on the vmware-iso
   380      builder. [GH-5975]
   381  * builder/vmware: Handle multiple devices per VMware network type [GH-5985]
   382  * communicator/ssh: Handle errors uploading files more gracefully [GH-6033]
   383  * provisioner/powershell: Fix environment variable file escaping. [GH-5973]
   384  
   385  
   386  ### IMPROVEMENTS:
   387  
   388  * builder/amazon: Added new region `cn-northwest-1`. [GH-5960]
   389  * builder/amazon: Users may now access the amazon-generated administrator
   390      password [GH-5998]
   391  * builder/azure: Add support concurrent deployments in the same resource group.
   392      [GH-6005]
   393  * builder/azure: Add support for building with additional disks. [GH-5944]
   394  * builder/azure: Add support for marketplace plan information. [GH-5970]
   395  * builder/azure: Make all command output human readable. [GH-5967]
   396  * builder/azure: Respect `-force` for managed image deletion. [GH-6003]
   397  * builder/google: Add option to specify a service account, or to run without
   398      one. [GH-5991] [GH-5928]
   399  * builder/oracle-oci: Add new "use_private_ip" option. [GH-5893]
   400  * post-processor/vagrant: Add LXC support. [GH-5980]
   401  * provisioner/salt-masterless: Added Windows support. [GH-5702]
   402  * provisioner/salt: Add windows support to salt provisioner [GH-6012] [GH-6012]
   403  
   404  
   405  ## 1.2.1 (February 23, 2018)
   406  
   407  ### BUG FIXES:
   408  
   409  * builder/amazon: Fix authorization using assume role. [GH-5914]
   410  * builder/hyper-v: Fix command collisions with VMWare PowerCLI. [GH-5861]
   411  * builder/vmware-iso: Fix panic when building on esx5 remotes. [GH-5931]
   412  * builder/vmware: Fix issue detecting host IP. [GH-5898] [GH-5900]
   413  * provisioner/ansible-local: Fix conflicting escaping schemes for vars provided
   414      via `--extra-vars`. [GH-5888]
   415  
   416  ### IMPROVEMENTS:
   417  
   418  * builder/oracle-classic: Add `snapshot_timeout` option to control how long we
   419      wait for the snapshot to be created. [GH-5932]
   420  * builder/oracle-classic: Add support for WinRM connections. [GH-5929]
   421  
   422  
   423  ## 1.2.0 (February 9, 2018)
   424  
   425  ### BACKWARDS INCOMPATIBILITIES:
   426  
   427  * 3rd party plugins: We have moved internal dependencies, meaning your 3rd
   428      party plugins will no longer compile (however existing builds will still
   429      work fine); the work to fix them is minimal and documented in GH-5810.
   430      [GH-5810]
   431  * builder/amazon: The `ssh_private_ip` option has been removed. Instead, please
   432      use `"ssh_interface": "private"`. A fixer has been written for this, which
   433      can be invoked with `packer fix`. [GH-5876]
   434  * builder/openstack: Extension support has been removed. To use OpenStack
   435      builder with the OpenStack Newton (Oct 2016) or earlier, we recommend you
   436      use Packer v1.1.2 or earlier version.
   437  * core: Affects Windows guests: User variables containing Powershell special
   438      characters no longer need to be escaped.[GH-5376]
   439  * provisioner/file: We've made destination semantics more consistent across the
   440      various communicators. In general, if the destination is a directory, files
   441      will be uploaded into the directory instead of failing. This mirrors the
   442      behavior of `rsync`. There's a chance some users might be depending on the
   443      previous buggy behavior, so it's worth ensuring your configuration is
   444      correct. [GH-5426]
   445  * provisioner/powershell: Regression from v1.1.1 forcing extra escaping of
   446      environment variables in the non-elevated provisioner has been fixed.
   447      [GH-5515] [GH-5872]
   448  
   449  ### IMPROVEMENTS:
   450  
   451  * **New builder:** `ncloud` for building server images using the NAVER Cloud
   452      Platform. [GH-5791]
   453  * **New builder:** `oci-classic` for building new custom images for use with
   454      Oracle Cloud Infrastructure Classic Compute. [GH-5819]
   455  * **New builder:** `scaleway` - The Scaleway Packer builder is able to create
   456      new images for use with Scaleway BareMetal and Virtual cloud server.
   457      [GH-4770]
   458  * builder/amazon: Add `kms_key_id` option to block device mappings. [GH-5774]
   459  * builder/amazon: Add `skip_metadata_api_check` option to skip consulting the
   460      amazon metadata service. [GH-5764]
   461  * builder/amazon: Add Paris region (eu-west-3) [GH-5718]
   462  * builder/amazon: Give better error messages if we have trouble during
   463      authentication. [GH-5764]
   464  * builder/amazon: Remove Session Token (STS) from being shown in the log.
   465      [GH-5665]
   466  * builder/amazon: Replace `InstanceStatusOK` check with `InstanceReady`. This
   467      reduces build times universally while still working for all instance types.
   468      [GH-5678]
   469  * builder/amazon: Report which authentication provider we're using. [GH-5764]
   470  * builder/amazon: Timeout early if metadata service can't be reached. [GH-5764]
   471  * builder/amazon: Warn during prepare if we didn't get both an access key and a
   472      secret key when we were expecting one. [GH-5762]
   473  * builder/azure: Add validation for incorrect VHD URLs [GH-5695]
   474  * builder/docker: Remove credentials from being shown in the log. [GH-5666]
   475  * builder/google: Support specifying licenses for images. [GH-5842]
   476  * builder/hyper-v: Allow MAC address specification. [GH-5709]
   477  * builder/hyper-v: New option to use differential disks and Inline disk
   478      creation to improve build time and reduce disk usage [GH-5631]
   479  * builder/qemu: Add Intel HAXM support to QEMU builder [GH-5738]
   480  * builder/triton: Triton RBAC is now supported. [GH-5741]
   481  * builder/triton: Updated triton-go dependencies, allowing better error
   482      handling. [GH-5795]
   483  * builder/vmware-iso: Add support for cdrom and disk adapter types. [GH-3417]
   484  * builder/vmware-iso: Add support for setting network type and network adapter
   485      type. [GH-3417]
   486  * builder/vmware-iso: Add support for usb/serial/parallel ports. [GH-3417]
   487  * builder/vmware-iso: Add support for virtual soundcards. [GH-3417]
   488  * builder/vmware-iso: More reliably retrieve the guest networking
   489      configuration. [GH-3417]
   490  * builder/vmware: Add support for "super" key in `boot_command`. [GH-5681]
   491  * communicator/ssh: Add session-level keep-alives [GH-5830]
   492  * communicator/ssh: Detect dead connections. [GH-4709]
   493  * core: Gracefully clean up resources on SIGTERM. [GH-5318]
   494  * core: Improved error logging in floppy file handling. [GH-5802]
   495  * core: Improved support for downloading and validating a uri containing a
   496      Windows UNC path or a relative file:// scheme. [GH-2906]
   497  * post-processor/amazon-import: Allow user to specify role name in amazon-
   498      import [GH-5817]
   499  * post-processor/docker: Remove credentials from being shown in the log.
   500      [GH-5666]
   501  * post-processor/google-export: Synchronize credential semantics with the
   502      Google builder. [GH-4148]
   503  * post-processor/vagrant: Add vagrant post-processor support for Google
   504      [GH-5732]
   505  * post-processor/vsphere-template: Now accepts artifacts from the vSphere post-
   506      processor. [GH-5380]
   507  * provisioner/amazon: Use Amazon SDK's InstanceRunning waiter instead of
   508      InstanceStatusOK waiter [GH-5773]
   509  * provisioner/ansible: Improve user retrieval. [GH-5758]
   510  * provisioner/chef: Add support for 'trusted_certs_dir' chef-client
   511      configuration option [GH-5790]
   512  * provisioner/chef: Added Policyfile support to chef-client provisioner.
   513      [GH-5831]
   514  
   515  ### BUG FIXES:
   516  
   517  * builder/alicloud-ecs: Attach keypair before starting instance in alicloud
   518      builder [GH-5739]
   519  * builder/amazon: Fix tagging support when building in us-gov/china. [GH-5841]
   520  * builder/amazon: NewSession now inherits MaxRetries and other settings.
   521      [GH-5719]
   522  * builder/virtualbox: Fix interpolation ordering so that edge cases around
   523      guest_additions_url are handled correctly [GH-5757]
   524  * builder/virtualbox: Fix regression affecting users running Packer on a
   525      Windows host that kept Packer from finding Virtualbox guest additions if
   526      Packer ran on a different drive from the one where the guest additions were
   527      stored. [GH-5761]
   528  * builder/vmware: Fix case where artifacts might not be cleaned up correctly.
   529      [GH-5835]
   530  * builder/vmware: Fixed file handle leak that may have caused race conditions
   531      in vmware builder [GH-5767]
   532  * communicator/ssh: Add deadline to SSH connection to prevent Packer hangs
   533      after script provisioner reboots vm [GH-4684]
   534  * communicator/winrm: Fix issue copying empty directories. [GH-5763]
   535  * provisioner/ansible-local: Fix support for `--extra-vars` in
   536      `extra_arguments`. [GH-5703]
   537  * provisioner/ansible-remote: Fixes an error where Packer's private key can be
   538      overridden by inherited `ansible_ssh_private_key` options. [GH-5869]
   539  * provisioner/ansible: The "default extra variables" feature added in Packer
   540      v1.0.1 caused the ansible-local provisioner to fail when an --extra-vars
   541      argument was specified in the extra_arguments configuration option; this
   542      has been fixed. [GH-5335]
   543  * provisioner/powershell: Regression from v1.1.1 forcing extra escaping of
   544      environment variables in the non-elevated provisioner has been fixed.
   545      [GH-5515] [GH-5872]
   546  
   547  
   548  ## 1.1.3 (December 8, 2017)
   549  
   550  ### IMPROVEMENTS:
   551  
   552  * builder/alicloud-ecs: Add security token support and set TLS handshake
   553      timeout through environment variable. [GH-5641]
   554  * builder/amazon: Add a new parameter `ssh_interface`. Valid values include
   555      `public_ip`, `private_ip`, `public_dns` or `private_dns`. [GH-5630]
   556  * builder/azure: Add sanity checks for resource group names [GH-5599]
   557  * builder/azure: Allow users to specify an existing resource group to use,
   558      instead of creating a new one for every run. [GH-5548]
   559  * builder/hyper-v: Add support for differencing disk. [GH-5458]
   560  * builder/vmware-iso: Improve logging of network errors. [GH-5456]
   561  * core: Add new `packer_version` template engine. [GH-5619]
   562  * core: Improve logic checking for downloaded ISOs in case where user has
   563      provided more than one URL in `iso_urls` [GH-5632]
   564  * provisioner/ansible-local: Add ability to clean staging directory. [GH-5618]
   565  
   566  ### BUG FIXES:
   567  
   568  * builder/amazon: Allow `region` to appear in `ami_regions`. [GH-5660]
   569  * builder/amazon: `C5` instance types now build more reliably. [GH-5678]
   570  * builder/amazon: Correctly set AWS region if given in template along with a
   571      profile. [GH-5676]
   572  * builder/amazon: Prevent `sriov_support` and `ena_support` from being used
   573      with spot instances, which would cause a build failure. [GH-5679]
   574  * builder/hyper-v: Fix interpolation context for user variables in
   575      `boot_command` [GH-5547]
   576  * builder/qemu: Set default disk size to 40960 MB to prevent boot failures.
   577      [GH-5588]
   578  * builder/vmware: Correctly detect Windows boot on vmware workstation.
   579      [GH-5672]
   580  * core: Fix windows path regression when downloading ISOs. [GH-5591]
   581  * provisioner/chef: Fix chef installs on Windows. [GH-5649]
   582  
   583  ## 1.1.2 (November 15, 2017)
   584  
   585  ### IMPROVEMENTS:
   586  
   587  * builder/amazon: Correctly deregister AMIs when `force_deregister` is set.
   588      [GH-5525]
   589  * builder/digitalocean: Add `ipv6` option to enable on droplet. [GH-5534]
   590  * builder/docker: Add `aws_profile` option to control the aws profile for ECR.
   591      [GH-5470]
   592  * builder/google: Add `clean_image_name` template engine. [GH-5463]
   593  * builder/google: Allow selecting container optimized images. [GH-5576]
   594  * builder/google: Interpolate network and subnetwork values, rather than
   595      relying on an API call that packer may not have permission for. [GH-5343]
   596  * builder/hyper-v: Add `disk_additional_size` option to allow for up to 64
   597      additional disks. [GH-5491]
   598  * builder/hyper-v: Also disable automatic checkpoints for gen 2 VMs. [GH-5517]
   599  * builder/lxc: Add new `publish_properties` field to set image properties.
   600      [GH-5475]
   601  * builder/lxc: Add three new configuration option categories to LXC builder:
   602      `create_options`, `start_options`, and `attach_options`. [GH-5530]
   603  * builder/triton: Add `source_machine_image_filter` option to select an image
   604      ID based on a variety of parameters. [GH-5538]
   605  * builder/virtualbox-ovf: Error during prepare if source path doesn't exist.
   606      [GH-5573]
   607  * builder/virtualbox-ovf: Retry while removing VM to solve for transient
   608      errors. [GH-5512]
   609  * communicator/ssh: Add socks 5 proxy support. [GH-5439]
   610  * core/iso_config: Support relative paths in checksum file. [GH-5578]
   611  * core: Rewrite vagrantfile code to make cross-platform development easier.
   612      [GH-5539]
   613  * post-processor/docker-push: Add `aws_profile` option to control the aws
   614      profile for ECR. [GH-5470]
   615  * post-processor/vsphere: Properly capture `ovftool` output. [GH-5499]
   616  
   617  ### BUG FIXES:
   618  
   619  * builder/amazon: Add a delay option to security group waiter. [GH-5536]
   620  * builder/amazon: Fix regressions relating to spot instances and EBS volumes.
   621      [GH-5495]
   622  * builder/amazon: Set region from profile, if profile is set, rather than being
   623      overridden by metadata. [GH-5562]
   624  * builder/docker: Remove `login_email`, which no longer exists in the docker
   625      client. [GH-5511]
   626  * builder/hyperv: Fix admin check that was causing powershell failures.
   627      [GH-5510]
   628  * builder/oracle: Defaulting of OCI builder region will first check the packer
   629      template and the OCI config file. [GH-5407]
   630  * builder/triton: Fix a bug where partially created images can be reported as
   631      complete. [GH-5566]
   632  * post-processor/vsphere: Use the vm disk path information to re-create the vmx
   633      datastore path. [GH-5567]
   634  * provisioner/windows-restart: Wait for restart no longer endlessly loops if
   635      user specifies a custom restart check command. [GH-5563]
   636  
   637  ## 1.1.1 (October 13, 2017)
   638  
   639  ### IMPROVEMENTS:
   640  
   641  * **New builder:** `hyperv-vmcx` for building images from existing VMs.
   642      [GH-4944] [GH-5444]
   643  * builder/amazon-instance: Add `.Token` as a variable in the
   644      `BundleUploadCommand` template. [GH-5288]
   645  * builder/amazon: Add `temporary_security_group_source_cidr` option to control
   646      ingress to source instances. [GH-5384]
   647  * builder/amazon: Output AMI Name during prevalidation. [GH-5389]
   648  * builder/amazon: Support template functions in tag keys. [GH-5381]
   649  * builder/amazon: Tag volumes on creation instead of as a separate step.
   650      [GH-5417]
   651  * builder/docker: Add option to set `--user` flag when running `exec`.
   652      [GH-5406]
   653  * builder/docker: Set file owner to container user when uploading. Can be
   654      disabled by setting `fix_upload_owner` to `false`. [GH-5422]
   655  * builder/googlecompute: Support setting labels on the resulting image.
   656      [GH-5356]
   657  * builder/hyper-v: Add `vhd_temp_path` option to control where the VHD resides
   658      while it's being provisioned. [GH-5206]
   659  * builder/hyper-v: Allow vhd or vhdx source images instead of just ISO.
   660      [GH-4944] [GH-5444]
   661  * builder/hyper-v: Disable automatic checkpoints. [GH-5374]
   662  * builder/virtualbox-ovf: Add `keep_registered` option. [GH-5336]
   663  * builder/vmware: Add `disable_vnc` option to prevent VNC connections from
   664      being made. [GH-5436]
   665  * core: Releases will now be built for ppc64le.
   666  * post-processor/vagrant: When building from a builder/hyper-v artifact, link
   667      instead of copy when available. [GH-5207]
   668  
   669  
   670  ### BUG FIXES:
   671  
   672  * builder/cloudstack: Fix panic if build is aborted. [GH-5388]
   673  * builder/hyper-v: Respect `enable_dynamic_memory` flag. [GH-5363]
   674  * builder/puppet-masterless: Make sure directories created with sudo are
   675      writable by the packer user. [GH-5351]
   676  * provisioner/chef-solo: Fix issue installing chef-solo on Windows. [GH-5357]
   677  * provisioner/powershell: Fix issue setting environment variables by writing
   678      them to a file, instead of the command line. [GH-5345]
   679  * provisioner/powershell: Fix issue where powershell scripts could hang.
   680      [GH-5082]
   681  * provisioner/powershell: Fix Powershell progress stream leak to stderr for
   682      normal and elevated commands. [GH-5365]
   683  * provisioner/puppet-masterless: Fix bug where `puppet_bin_dir` wasn't being
   684      respected. [GH-5340]
   685  * provisioner/puppet: Fix setting facter vars on Windows. [GH-5341]
   686  
   687  
   688  ## 1.1.0 (September 12, 2017)
   689  
   690  ### IMPROVEMENTS:
   691  
   692  * builder/alicloud: Update alicloud go sdk and enable multi sites support for
   693      alicloud [GH-5219]
   694  * builder/amazon: Upgrade aws-sdk-go to 1.10.14, add tags at instance run time.
   695      [GH-5196]
   696  * builder/azure: Add object_id to windows_custom_image.json. [GH-5285]
   697  * builder/azure: Add support for storage account for managed images. [GH-5244]
   698  * builder/azure: Update pkcs12 package. [GH-5301]
   699  * builder/cloudstack: Add support for Security Groups. [GH-5175]
   700  * builder/docker: Uploading files and directories now use docker cp. [GH-5273]
   701      [GH-5333]
   702  * builder/googlecompute: Add `labels` option for labeling launched instances.
   703      [GH-5308]
   704  * builder/googlecompute: Add support for accelerator api. [GH-5137]
   705  * builder/profitbricks: added support for Cloud API v4. [GH-5233]
   706  * builder/vmware-esxi: Remote builds now respect `output_directory` [GH-4592]
   707  * builder/vmware: Set artifact ID to `VMName`. [GH-5187]
   708  * core: Build solaris binary by default. [GH-5268] [GH-5248]
   709  * core: Remove LGPL dependencies. [GH-5262]
   710  * provisioner/puppet: Add `guest_os_type` option to add support for Windows.
   711      [GH-5252]
   712  * provisioner/salt-masterless: Also use sudo to clean up if we used sudo to
   713      install. [GH-5240]
   714  
   715  ### BACKWARDS INCOMPATIBILITIES:
   716  
   717  * builder/amazon: Changes way that AMI artifacts are printed out after build,
   718      aligning them to builder. Could affect output parsing. [GH-5281]
   719  * builder/amazon: Split `enhanced_networking` into `sriov_support` and
   720      `ena_support` to support finer grained control. Use `packer fix
   721      <template.json>` to automatically update your template to use `ena_support`
   722      where previously there was only `enhanced_networking`. Make sure to also
   723      add `sriov_support` if you need that feature, and to ensure `ena_support`
   724      is what you intended to be in your template. [GH-5284]
   725  * builder/cloudstack: Setup temporary SSH keypair; backwards incompatible in
   726      the uncommon case that the source image allowed SSH auth with password but
   727      not with keypair. [GH-5174]
   728  * communicator/ssh: Renamed `ssh_disable_agent` to
   729      `ssh_disable_agent_forwarding`. Need to run fixer on packer configs that
   730      use `ssh_disable_agent`. [GH-5024]
   731  * communicator: Preserve left-sided white-space in remote command output. Make
   732      sure any scripts that parse this output can handle the new whitespace
   733      before upgrading. [GH-5167]
   734  * provisioner/shell: Set default for `ExpectDisconnect` to `false`. If your
   735      script causes the connection to be reset, you should set this to `true` to
   736      prevent errors. [GH-5283]
   737  
   738  ### BUG FIXES:
   739  
   740  * builder/amazon: `force_deregister` works in all regions, not just original
   741      region. [GH-5250]
   742  * builder/docker: Directory uploads now use the same semantics as the rest of
   743      the communicators. [GH-5333]
   744  * builder/vmware: Fix timestamp in default VMName. [GH-5274]
   745  * builder/winrm: WinRM now waits to make sure commands can run successfully
   746      before considering itself connected. [GH-5300]
   747  * core: Fix issue where some builders wouldn't respect `-on-error` behavior.
   748      [GH-5297]
   749  * provisioner/windows-restart: The first powershell provisioner after a restart
   750      now works. [GH-5272]
   751  
   752  ### FEATURES:
   753  
   754  * **New builder**: Oracle Cloud Infrastructure (OCI) builder for creating
   755      custom images. [GH-4554]
   756  * **New builder:** `lxc` for building lxc images. [GH-3523]
   757  * **New builder:** `lxd` for building lxd images. [GH-3625]
   758  * **New post-processor**: vSphere Template post-processor to be used with
   759      vmware-iso builder enabling user to mark a VM as a template. [GH-5114]
   760  
   761  ## 1.0.4 (August 11, 2017)
   762  
   763  ### IMPROVEMENTS:
   764  
   765  * builder/alicloud: Increase polling timeout. [GH-5148]
   766  * builder/azure: Add `private_virtual_network_with_public_ip` option to
   767      optionally obtain a public IP. [GH-5222]
   768  * builder/googlecompute: use a more portable method of obtaining zone.
   769      [GH-5192]
   770  * builder/hyperv: Properly interpolate user variables in template. [GH-5184]
   771  * builder/parallels: Remove soon to be removed --vmtype flag in createvm.
   772      [GH-5172]
   773  * contrib: add json files to zsh completion. [GH-5195]
   774  
   775  ### BUG FIXES:
   776  
   777  * builder/amazon: Don't delete snapshots we didn't create. [GH-5211]
   778  * builder/amazon: fix builds when using the null communicator. [GH-5217]
   779  * builder/docker: Correctly handle case when uploading an empty directory.
   780      [GH-5234]
   781  * command/push: Don't push variables if they are unspecified. Reverts to
   782      behavior in 1.0.1. [GH-5235]
   783  * command/push: fix handling of symlinks. [GH-5226]
   784  * core: Strip query parameters from ISO URLs when checking against a checksum
   785      file. [GH-5181]
   786  * provisioner/ansible-remote: Fix issue where packer could hang communicating
   787      with ansible-remote. [GH-5146]
   788  
   789  ## 1.0.3 (July 17, 2017)
   790  
   791  ### IMPROVEMENTS:
   792  * builder/azure: Update to latest Azure SDK, enabling support for managed
   793      disks. [GH-4511]
   794  * builder/cloudstack: Add default cidr_list [ 0.0.0.0/0 ]. [GH-5125]
   795  * builder/cloudstack: Add support for ssh_agent_auth. [GH-5130]
   796  * builder/cloudstack: Add support for using a HTTP server. [GH-5017]
   797  * builder/cloudstack: Allow reading api_url, api_key, and secret_key from env
   798      vars. [GH-5124]
   799  * builder/cloudstack: Make expunge optional and improve logging output.
   800      [GH-5099]
   801  * builder/googlecompute: Allow using URL's for network and subnetwork.
   802      [GH-5035]
   803  * builder/hyperv: Add support for floppy_dirs with hyperv-iso builder.
   804  * builder/hyperv: Add support for override of system %temp% path.
   805  * core: Experimental Android ARM support. [GH-5111]
   806  * post-processor/atlas: Disallow packer push of vagrant.box artifacts to atlas.
   807      [GH-4780]
   808  * postprocessor/atlas: Disallow pushing vagrant.box artifacts now that Vagrant
   809      cloud is live. [GH-4780]
   810  
   811  ### BUG FIXES:
   812  * builder/amazon: Fix panic that happens if ami_block_device_mappings is empty.
   813      [GH-5059]
   814  * builder/azure: Write private SSH to file in debug mode. [GH-5070] [GH-5074]
   815  * builder/cloudstack: Properly report back errors. [GH-5103] [GH-5123]
   816  * builder/docker: Fix windows filepath in docker-toolbox call [GH-4887]
   817  * builder/docker: Fix windows filepath in docker-toolbox call. [GH-4887]
   818  * builder/hyperv: Use SID to verify membership in Admin group, fixing for non-
   819      english users. [GH-5022]
   820  * builder/hyperv: Verify membership in the group Hyper-V Administrators by SID
   821      not name. [GH-5022]
   822  * builder/openstack: Update gophercloud version, fixing builds  > 1 hr long.
   823      [GH-5046]
   824  * builder/parallels: Skip missing paths when looking for unnecessary files.
   825      [GH-5058]
   826  * builder/vmware-esxi: Fix VNC port discovery default timeout. [GH-5051]
   827  * communicator/ssh: Add ProvisionerTypes to communicator tests, resolving panic
   828      [GH-5116]
   829  * communicator/ssh: Resolve race condition that sometimes truncates ssh
   830      provisioner stdout [GH-4719]
   831  * post-processor/checksum: Fix interpolation of "output". [GH-5112]
   832  * push: Push vars in packer config, not just those set from command line and in
   833      var-file. [GH-5101]
   834  
   835  ## 1.0.2 (June 21, 2017)
   836  
   837  ### BUG FIXES:
   838  * communicator/ssh: Fix truncated stdout from remote ssh provisioner. [GH-5050]
   839  * builder/amazon: Fix bugs related to stop instance command. [GH-4719]
   840  * communicator/ssh: Fix ssh connection errors. [GH-5038]
   841  * core: Remove logging that shouldn't be there when running commands. [GH-5042]
   842  * provisioner/shell: Fix bug where scripts were being run under `sh`. [GH-5043]
   843  
   844  ### IMPROVEMENTS:
   845  
   846  * provisioner/windows-restart: make it clear that timeouts come from the
   847      provisioner, not winrm. [GH-5040]
   848  
   849  ## 1.0.1 (June 19, 2017)
   850  
   851  ### IMPROVEMENTS:
   852  
   853  * builder/amazon: Allow amis to be copied to other regions, encrypted with
   854      custom KMS keys. [GH-4948]
   855  * builder/amazon: Allow configuration of api endpoint to support api-compatible
   856      cloud providers. [GH-4896]
   857  * builder/amazon: Fix regex used for ami name validation [GH-4902]
   858  * builder/amazon: Look up vpc from subnet id if no vpc was specified. [GH-4879]
   859  * builder/amazon: Print temporary security group name to the UI. [GH-4997]
   860  * builder/amazon: Support Assume Role with MFA and ECS Task Roles. Also updates
   861      to a newer version of aws-sdk-go. [GH-4996]
   862  * builder/amazon: Use retry logic when creating instance tags. [GH-4876]
   863  * builder/amazon: Validate ami name. [GH-4762]
   864  * builder/azure: Add build output to artifact. [GH-4953]
   865  * builder/azure: Use disk URI as artifact ID. [GH-4981]
   866  * builder/digitalocean: Added support for monitoring. [GH-4782]
   867  * builder/digitalocean: Support for copying snapshot to other regions.
   868      [GH-4893]
   869  * builder/hyper-v: Remove the check for administrator rights when sending key
   870      strokes to Hyper-V. [GH-4687] # builder/openstack: Fix private key error
   871      message to match documentation [GH-4898]
   872  * builder/null: Support SSH agent auth [GH-4956]
   873  * builder/openstack: Add ssh agent support. [GH-4655]
   874  * builder/openstack: Support client x509 certificates. [GH-4921]
   875  * builder/parallels-iso: Configuration of disk type, plain or expanding.
   876      [GH-4621]
   877  * builder/triton: An SSH agent can be used to authenticate requests, making
   878      `triton_key_material` optional. [GH-4838]
   879  * builder/triton: If no source machine networks are specified, instances are
   880      started on the default public and internal networks. [GH-4838]
   881  * builder/virtualbox: Add sata port count configuration option. [GH-4699]
   882  * builder/virtualbox: Don't add port forwarding when using "none" communicator.
   883      [GH-4960]
   884  * builder/vmware: Add option to remove interfaces from the vmx. [GH-4927]
   885  * builder/vmware: Properly remove mounted CDs on OS X. [GH-4810]
   886  * builder/vmware: VNC probe timeout is configurable. [GH-4919]
   887  * command/push: add `-sensitive` flag to mark pushed vars are sensitive.
   888      [GH-4970]
   889  * command/push: Vagrant support in Terraform Enterprise is deprecated.
   890      [GH-4950]
   891  * communicator/ssh: Add ssh agent support for bastion connections. [GH-4940]
   892  * communicator/winrm: Add NTLM authentication support. [GH-4979]
   893  * communicator/winrm: Add support for file downloads. [GH-4748]
   894  * core: add telemetry for better product support. [GH-5015]
   895  * core: Build binaries for arm64 [GH-4892]
   896  * post-processor/amazon-import: Add support for `license_type`. [GH-4634]
   897  * post-processor/vagrant-cloud: Get vagrant cloud token from environment.
   898      [GH-4982]
   899  * provisioner/ansible-local: Add extra-vars `packer_build_name`,
   900      `packer_builder_type`, and `packer_http_addr`. [GH-4821]
   901  * provisioner/ansible: Add `inventory_directory` option to control where to
   902      place the generated inventory file. [GH-4760]
   903  * provisioner/ansible: Add `skip_version_check` flag for when ansible will be
   904      installed from a prior provisioner. [GH-4983]
   905  * provisioner/ansible: Add extra-vars `packer_build_name` and
   906      `packer_builder_type`. [GH-4821]
   907  * provisioner/chef-solo: Add option to select Chef version. [GH-4791]
   908  * provisioner/salt: Add salt bin directory configuration. [GH-5009]
   909  * provisioner/salt: Add support for grains. [GH-4961]
   910  * provisioner/shell: Use `env` to set environment variables to support freebsd
   911      out of the box. [GH-4909]
   912  * website/docs: Clarify language, improve formatting. [GH-4866]
   913  * website/docs: Update docker metadata fields that can be changed. [GH-4867]
   914  
   915  
   916  ### BUG FIXES:
   917  
   918  * builder/amazon-ebssurrogate: Use ami device settings when creating the AMI.
   919      [GH-4972]
   920  * builder/amazon: don't try to delete extra volumes during clean up. [GH-4930]
   921  * builder/amazon: fix `force_delete_snapshot` when the launch instance has
   922      extra volumes. [GH-4931]
   923  * builder/amazon: Only delete temporary key if we created one. [GH-4850]
   924  * builder/azure: Replace calls to panic with error returns. [GH-4846]
   925  * communicator/winrm: Use KeepAlive to keep long-running connections open.
   926      [GH-4952]
   927  * core: Correctly reject config files which have junk after valid json.
   928      [GH-4906]
   929  * post-processor/checksum: fix crash when invalid checksum is used. [GH-4812]
   930  * post-processor/vagrant-cloud: don't read files to upload in to memory first.
   931      [GH-5005]
   932  * post-processor/vagrant-cloud: only upload once under normal conditions.
   933      [GH-5008]
   934  * provisioner/ansible-local: Correctly set the default staging directory under
   935      Windows. [GH-4792]
   936  
   937  ### FEATURES:
   938  
   939  * **New builder:** `alicloud-ecs` for building Alicloud ECS images. [GH-4619]
   940  
   941  
   942  ## 1.0.0 (April 4, 2017)
   943  
   944  ### BUG FIXES:
   945  
   946  * builder/amazon: Fix b/c issue by reporting again the tags we create.
   947      [GH-4704]
   948  * builder/amazon: Fix crash in `step_region_copy`. [GH-4642]
   949  * builder/googlecompute: Correct values for `on_host_maintenance`. [GH-4643]
   950  * builder/googlecompute: Use "default" service account. [GH-4749]
   951  * builder/hyper-v: Don't wait for shutdown_command to return. [GH-4691]
   952  * builder/virtualbox: fix `none` communicator by allowing skipping upload of
   953      version file. [GH-4678]
   954  * builder/virtualbox: retry removing floppy controller. [GH-4705]
   955  * communicator/ssh: don't return error if we can't close connection. [GH-4741]
   956  * communicator/ssh: fix nil pointer error. [GH-4690]
   957  * core: fix version number
   958  * core: Invoking packer `--help` or `--version` now exits with status 0.
   959      [GH-4723]
   960  * core: show correct step name when debugging. [GH-4672]
   961  * communicator/winrm: Directory uploads behave more like scp. [GH-4438]
   962  
   963  ### IMPROVEMENTS:
   964  
   965  * builder/amazon-chroot: Ability to give an empty list in `copy_files` to
   966      prevent the default `/etc/resolv.conf` file from being copied. If
   967      `copy_files` isn't given at all, the default behavior remains. [GH-4708]
   968  * builder/amazon: set force_deregister to true on -force. [GH-4649]
   969  * builder/amazon: validate ssh key name/file. [GH-4665]
   970  * builder/ansible: Clearer error message when we have problems getting the
   971      ansible version. [GH-4694]
   972  * builder/hyper-v: validate output dir in step, not in config. [GH-4645]
   973  * More diligently try to complete azure-setup.sh. [GH-4752]
   974  * website: fix display on ios devices. [GH-4618]
   975  
   976  ## 0.12.3 (March 1, 2017)
   977  
   978  ### BACKWARDS INCOMPATIBILITIES:
   979  
   980  * provisioner/ansible: by default, the staging dir will be randomized. [GH-4472]
   981  
   982  ### FEATURES:
   983  
   984  * **New builder:** `ebs-surrogate` for building AMIs from EBS volumes. [GH-4351]
   985  
   986  ### IMPROVEMENTS:
   987  
   988  * builder/amazon-chroot: support encrypted boot volume. [GH-4584]
   989  * builder/amazon: Add BuildRegion and SourceAMI template variables. [GH-4399]
   990  * builder/amazon: Change EC2 Windows password timeout to 20 minutes. [GH-4590]
   991  * builder/amazon: enable ena when `enhanced_networking` is set. [GH-4578]
   992  * builder/azure:: add two new config variables for temp_compute_name and
   993      temp_resource_group_name. [GH-4468]
   994  * builder/docker: create export dir if needed. [GH-4439]
   995  * builder/googlecompute: Add `on_host_maintenance` option. [GH-4544]
   996  * builder/openstack: add reuse_ips option to try to re-use existing IPs.
   997      [GH-4564]
   998  * builder/vmware-esxi: try for longer to connect to vnc port. [GH-4480]
   999      [GH-4610]
  1000  * builder/vmware: allow extra options for ovftool. [GH-4536]
  1001  * builder/vmware: don't cache ip address so we know if it changes. [GH-4532]
  1002  * communicator/docker: preserve file mode. [GH-4443]
  1003  * communicator/ssh: Use SSH agent when enabled for bastion step. [GH-4598]
  1004  * communicator/winrm: support ProxyFromEnvironment. [GH-4463]
  1005  * core: don't show ui color if we're not colorized. [GH-4525]
  1006  * core: make VNC links clickable in terminal. [GH-4497] [GH-4498]
  1007  * docs: add community page. [GH-4550]
  1008  * post-processor/amazon-import: support AMI attributes on import [GH-4216]
  1009  * post-processor/docker-import: print stderr on docker import failure.
  1010      [GH-4529]
  1011  
  1012  ### BUG FIXES:
  1013  
  1014  * builder/amazon-ebsvolume: Fix interpolation of block_device. [GH-4464]
  1015  * builder/amazon: Fix ssh agent authentication. [GH-4597]
  1016  * builder/docker: Don't force tag if using a docker version that doesn't
  1017      support it. [GH-4560]
  1018  * builder/googlecompute: fix bug when creating image from custom image_family.
  1019      [GH-4518]
  1020  * builder/virtualbox: remove guest additions before saving image. [GH-4496]
  1021  * core: always check for an error first when walking a path. [GH-4467]
  1022  * core: update crypto/ssh lib to fix large file uploads. [GH-4546]
  1023  * provisioner/chef-client: only upload knife config if we're cleaning.
  1024      [GH-4534]
  1025  
  1026  ## 0.12.2 (January 20, 2017)
  1027  
  1028  ### FEATURES:
  1029  
  1030  * **New builder:** `triton` for building images for Joyent Triton. [GH-4325]
  1031  * **New provisioner:** `converge` for provisioning with converge.sh. [GH-4326]
  1032  
  1033  ### IMPROVEMENTS:
  1034  
  1035  * builder/hyperv-iso: add `iso_target_extension` option. [GH-4294]
  1036  * builder/openstack: Add support for instance metadata. [GH-4361]
  1037  * builder/openstack: Attempt to use existing floating IPs before allocating a
  1038      new one. [GH-4357]
  1039  * builder/parallels-iso: add `iso_target_extension` option. [GH-4294]
  1040  * builder/qemu: add `iso_target_extension` option. [GH-4294]
  1041  * builder/qemu: add `use_default_display` option for osx compatibility.
  1042      [GH-4293]
  1043  * builder/qemu: Detect input disk image format during copy/convert. [GH-4343]
  1044  * builder/virtualbox-iso: add `iso_target_extension` option. [GH-4294]
  1045  * builder/virtualbox: add `skip_export` option to skip exporting the VM after
  1046      build completes. [GH-4339]
  1047  * builder/vmware & builder/qemu: Allow configurable delay between keystrokes
  1048      when typing boot command. [GH-4403]
  1049  * builder/vmware-iso: add `iso_target_extension` option. [GH-4294]
  1050  * builder/vmware-iso: add `skip_export` option to skip exporting the VM after
  1051      build completes. [GH-4378]
  1052  * builder/vmware: Try to use `ip address` to find host IP. [GH-4411]
  1053  * common/step_http\_server: set `PACKER_HTTP_ADDR` env var for accessing http
  1054      server from inside builder. [GH-4409]
  1055  * provisioner/powershell: Allow equals sign in value of environment variables.
  1056      [GH-4328]
  1057  * provisioner/puppet-server: Add default facts.  [GH-4286]
  1058  
  1059  ### BUG FIXES:
  1060  
  1061  * builder/amazon-chroot: Panic in AMI region copy step. [GH-4341]
  1062  * builder/amazon: Crashes when new EBS vols are used. [GH-4308]
  1063  * builder/amazon: Fix crash in amazon-instance. [GH-4372]
  1064  * builder/amazon: fix run volume tagging [GH-4420]
  1065  * builder/amazon: fix when using non-existent security\_group\_id. [GH-4425]
  1066  * builder/amazon: Properly error if we don't have the
  1067      ec2:DescribeSecurityGroups permission. [GH-4304]
  1068  * builder/amazon: Properly wait for security group to exist. [GH-4369]
  1069  * builder/docker: Fix crash when performing log in to ECR with an invalid URL.
  1070      [GH-4385]
  1071  * builder/openstack: fix for finding resource by ID. [GH-4301]
  1072  * builder/qemu: Explicitly set WinRMPort for StepConnect. [GH-4321]
  1073  * builder/virtualbox: Explicitly set WinRMPort for StepConnect. [GH-4321]
  1074  * builder/virtualbox: Pause between each boot command element in -debug.
  1075      [GH-4346]
  1076  * builder/vmware builder/parallels: Fix hang when shutting down windows in
  1077      certain cases. [GH-4436]
  1078  * command/push: Don't interpolate variables when pushing. [GH-4389]
  1079  * common/step_http_server: make port range inclusive. [GH-4398]
  1080  * communicator/winrm: update winrm client, resolving `MaxMemoryPerShellMB`
  1081      errors and properly error logging instead of panicking. [GH-4412] [GH-4424]
  1082  * provider/windows-shell: Allows equals sign in env var value. [GH-4423]
  1083  
  1084  ## 0.12.1 (December 15, 2016)
  1085  
  1086  ### BACKWARDS INCOMPATIBILITIES:
  1087  
  1088  * `ssh_username` is now required if using communicator ssh. [GH-4172]
  1089  * builder/amazon: Change `shutdown_behaviour` to `shutdown_behavior`.  Run
  1090      "packer fix template.json" to migrate a template. [GH-4285]
  1091  * builder/openstack: No long supports the `api_key` option for rackspace.
  1092      [GH-4283]
  1093  * post-processor/manifest: Changed `filename` field to be `output`, to be more
  1094      consistent with other post-processors. `packer fix` will fix this for you.
  1095      [GH-4192]
  1096  * post-processor/shell-local: Now runs per-builder instead of per-file. The
  1097      filename is no longer passed in as an argument to the script, but instead
  1098      needs to be gleaned from the manifest post-processor. [GH-4189]
  1099  
  1100  ### FEATURES:
  1101  
  1102  * **New builder:** "Hyper-V" Added new builder for Hyper-V on Windows.
  1103      [GH-2576]
  1104  * **New builder:** "1&1" Added new builder for [1&1](https://www.1and1.com/).
  1105      [GH-4163]
  1106  
  1107  ### IMPROVEMENTS:
  1108  
  1109  * builder/amazon-ebs: Support specifying KMS key for encryption. [GH-4023]
  1110  * builder/amazon-ebsvolume: Add artifact output. [GH-4141]
  1111  * builder/amazon: Add `snapshot_tag` overrides. [GH-4015]
  1112  * builder/amazon: Added new region London - eu-west-2. [GH-4284]
  1113  * builder/amazon: Added ca-central-1 to list of known aws regions. [GH-4274]
  1114  * builder/amazon: Adds `force_delete_snapshot` flag to also cleanup snapshots
  1115      if we're removing a preexisting image, as with `force_deregister_image`.
  1116      [GH-4223]
  1117  * builder/amazon: Support `snapshot_users` and `snapshot_groups` for sharing
  1118      ebs snapshots. [GH-4243]
  1119  * builder/cloudstack: Support reusing an already associated public IP.
  1120      [GH-4149]
  1121  * builder/docker: Introduce docker commit changes, author, and message.
  1122      [GH-4202]
  1123  * builder/googlecompute: Support `source_image_family`. [GH-4162]
  1124  * builder/googlecompute: enable support for Google Compute XPN. [GH-4288]
  1125  * builder/openstack: Added `image_members` to add new members to image after
  1126      it's created. [GH-4283]
  1127  * builder/openstack: Added `image_visibility` field to specify visibility of
  1128      created image. [GH-4283]
  1129  * builder/openstack: Automatically reauth as needed. [GH-4262]
  1130  * builder/virtualbox-ovf: Can now give a URL to an ova file. [GH-3982]
  1131  * communicator/ssh: adds ability to download download directories and
  1132      wildcards, fix destination file mode (not hardcoded anymore). [GH-4210]
  1133  * post-processor/shell-local: support spaces in script path. [GH-4144]
  1134  * provisioner/ansible: Allow `winrm` communicator. [GH-4209]
  1135  * provisioner/salt: Bootstrap fallback on wget if curl failed. [GH-4244]
  1136  
  1137  ### BUG FIXES:
  1138  
  1139  * builder/amazon: Correctly assign key from `ssh_keypair_name` to source
  1140      instance. [GH-4222]
  1141  * builder/amazon: Fix `source_ami_filter` ignores `owners`. [GH-4235]
  1142  * builder/amazon: Fix launching spot instances in EC2 Classic [GH-4204]
  1143  * builder/qemu: Fix issue where multiple <waitXX> commands on a single line
  1144      in boot_command wouldn't be parsed correctly. [GH-4269]
  1145  * core: Unbreak glob patterns in `floppy_files`. [GH-3890]
  1146  * post-processor/checksum: cleanup, and fix output to specified file with
  1147      more than one artifacts. [GH-4210]
  1148  * post-processor/checksum: reset hash after each artifact file. [GH-4210]
  1149  * provisioner/file: fix for directory download. [GH-4210]
  1150  * provisioner/file: fix issue uploading multiple files to a directory,
  1151      mentioned in [GH-4049]. [GH-4210]
  1152  * provisioner/shell: Treat disconnects as retryable when running cleanup. If
  1153      you have a reboot in your script, we'll now wait until the host is
  1154      available before attempting to cleanup the script. [GH-4197]
  1155  
  1156  ## 0.12.0 (November 15, 2016)
  1157  
  1158  ### FEATURES:
  1159  
  1160  * **New builder:** "cloudstack" Can create new templates for use with
  1161      CloudStack taking either an ISO or existing template as input. [GH-3909]
  1162  * **New builder:** "profitbricks" Builder for creating images in the
  1163      ProfitBricks cloud. [GH-3660]
  1164  * **New builder:** "amazon-ebsvolume" Can create Amazon EBS volumes which are
  1165      preinitialized with a filesystem and data. [GH-4088]
  1166  
  1167  
  1168  ### IMPROVEMENTS:
  1169  
  1170  * builder/amazon: Allow polling delay override with `AWS_POLL_DELAY_SECONDS`.
  1171      [GH-4083]
  1172  * builder/amazon: Allow use of local SSH Agent. [GH-4050]
  1173  * builder/amazon: Dynamic source AMI [GH-3817]
  1174  * builder/amazon: Show AMI ID found when using `source_ami_filter`. [GH-4096]
  1175  * builder/googlecompute: Support `ssh_private_key_file` in communicator.
  1176      [GH-4101]
  1177  * builder/googlecompute: Support custom scopes. [GH-4043]
  1178  * command/push: Fix variable pushes to Atlas. Still needs Atlas server to be
  1179      updated before the issue will be fixed completely. [GH-4089]
  1180  * communicator/ssh: Improved SSH upload performance. [GH-3940]
  1181  * contrib/azure-setup.sh: Support for azure-cli 0.10.7. [GH-4133]
  1182  * docs: Fix command line variable docs. [GH-4143]
  1183  * post-processor/vagrant: Fixed inconsistency between vagrant-libvirt driver
  1184      and packer QEMU accelerator. [GH-4104]
  1185  * provisioner/ansible: Move info messages to log [GH-4123]
  1186  * provisioner/puppet: Add `puppet_bin_dir` option. [GH-4014]
  1187  * provisioner/salt: Add `salt_call_args` option. [GH-4158]
  1188  
  1189  ### BUG FIXES:
  1190  
  1191  * builder/amazon: Fixed an error where we wouldn't fail the build even if we
  1192      timed out waiting for the temporary security group to become available.
  1193      [GH-4099]
  1194  * builder/amazon: Properly cleanup temporary key pairs. [GH-4080]
  1195  * builder/google: Fix issue where we'd hang waiting for a startup script
  1196      which doesn't exist. [GH-4102]
  1197  * builder/qemu: Fix keycodes for ctrl, shift and alt keys. [GH-4115]
  1198  * builder/vmware: Fix keycodes for ctrl, shift and alt keys. [GH-4115]
  1199  * builder/vmware: Fixed build error when shutting down. [GH-4041]
  1200  * common/step_create_floppy: Fixed support for 1.44MB floppies on Windows.
  1201      [GH-4135]
  1202  * post-processor/googlecompute-export: Fixes scopes. [GH-4147]
  1203  * provisioner/powershell: Reverted [GH-3371] fixes quoting issue. [GH-4069]
  1204  * scripts: Fix build under Windows for go 1.5. [GH-4142]
  1205  
  1206  ## 0.11.0 (October 21, 2016)
  1207  
  1208  ### BACKWARDS INCOMPATIBILITIES:
  1209  
  1210  * VNC and VRDP-like features in VirtualBox, VMware, and QEMU now configurable
  1211      but bind to 127.0.0.1 by default to improve security. See the relevant
  1212      builder docs for more info.
  1213  * Docker builder requires Docker > 1.3
  1214  * provisioner/chef-solo: default staging directory renamed to
  1215      `packer-chef-solo`. [GH-3971]
  1216  
  1217  ### FEATURES:
  1218  
  1219  * **New Checksum post-processor**: Create a checksum file from your build
  1220      artifacts as part of your build. [GH-3492] [GH-3790]
  1221  * **New build flag** `-on-error` to allow inspection and keeping artifacts on
  1222      builder errors. [GH-3885]
  1223  * **New Google Compute Export post-processor**: exports an image from a Packer
  1224      googlecompute builder run and uploads it to Google Cloud Storage.
  1225      [GH-3760]
  1226  * **New Manifest post-processor**: writes metadata about packer's output
  1227      artifacts data to a JSON file. [GH-3651]
  1228  
  1229  
  1230  ### IMPROVEMENTS:
  1231  
  1232  * builder/amazon: Added `disable_stop_instance` option to prevent automatic
  1233      shutdown when the build is complete. [GH-3352]
  1234  * builder/amazon: Added `shutdown_behavior` option to support `stop` or
  1235      `terminate` at the end of the build. [GH-3556]
  1236  * builder/amazon: Added `skip_region_validation` option to allow newer or
  1237      custom AWS regions. [GH-3598]
  1238  * builder/amazon: Added `us-east-2` and `ap-south-1` regions. [GH-4021]
  1239      [GH-3663]
  1240  * builder/amazon: Support building from scratch with amazon-chroot builder.
  1241      [GH-3855] [GH-3895]
  1242  * builder/amazon: Support create an AMI with an `encrypt_boot` volume.
  1243      [GH-3382]
  1244  * builder/azure: Add `os_disk_size_gb`. [GH-3995]
  1245  * builder/azure: Add location to setup script. [GH-3803]
  1246  * builder/azure: Allow user to set custom data. [GH-3996]
  1247  * builder/azure: Made `tenant_id` optional. [GH-3643]
  1248  * builder/azure: Now pre-validates `capture_container_name` and
  1249      `capture_name_prefix` [GH-3537]
  1250  * builder/azure: Removed superfluous polling code for deployments. [GH-3638]
  1251  * builder/azure: Support for a user defined VNET. [GH-3683]
  1252  * builder/azure: Support for custom images. [GH-3575]
  1253  * builder/azure: tag all resources. [GH-3764]
  1254  * builder/digitalocean: Added `user_data_file` support. [GH-3933]
  1255  * builder/digitalocean: Fixes timeout waiting for snapshot. [GH-3868]
  1256  * builder/digitalocean: Use `state_timeout` for unlock and off transitions.
  1257      [GH-3444]
  1258  * builder/docker: Improved support for Docker pull from Amazon ECR. [GH-3856]
  1259  * builder/google: Add `-force` option to delete old image before creating new
  1260      one. [GH-3918]
  1261  * builder/google: Add image license metadata. [GH-3873]
  1262  * builder/google: Added support for `image_family` [GH-3531]
  1263  * builder/google: Added support for startup scripts. [GH-3639]
  1264  * builder/google: Create passwords for Windows instances. [GH-3932]
  1265  * builder/google: Enable to select NVMe images. [GH-3338]
  1266  * builder/google: Signal that startup script fished via metadata. [GH-3873]
  1267  * builder/google: Use gcloud application default credentials. [GH-3655]
  1268  * builder/google: provision VM without external IP address. [GH-3774]
  1269  * builder/null: Can now be used with WinRM. [GH-2525]
  1270  * builder/openstack: Added support for `ssh_password` instead of generating
  1271      ssh keys. [GH-3976]
  1272  * builder/parallels: Add support for ctrl, shift and alt keys in
  1273      `boot_command`.  [GH-3767]
  1274  * builder/parallels: Copy directories recursively with `floppy_dirs`.
  1275      [GH-2919]
  1276  * builder/parallels: Now pauses between `boot_command` entries when running
  1277      with `-debug` [GH-3547]
  1278  * builder/parallels: Support future versions of Parallels by using the latest
  1279      driver. [GH-3673]
  1280  * builder/qemu: Add support for ctrl, shift and alt keys in `boot_command`.
  1281      [GH-3767]
  1282  * builder/qemu: Added `vnc_bind_address` option. [GH-3574]
  1283  * builder/qemu: Copy directories recursively with `floppy_dirs`. [GH-2919]
  1284  * builder/qemu: Now pauses between `boot_command` entries when running with
  1285      `-debug` [GH-3547]
  1286  * builder/qemu: Specify disk format when starting qemu. [GH-3888]
  1287  * builder/virtualbox-iso: Added `hard_drive_nonrotational` and
  1288      `hard_drive_discard` options to enable trim/discard. [GH-4013]
  1289  * builder/virtualbox-iso: Added `keep_registered` option to skip cleaning up
  1290      the image. [GH-3954]
  1291  * builder/virtualbox: Add support for ctrl, shift and alt keys in
  1292      `boot_command`.  [GH-3767]
  1293  * builder/virtualbox: Added `post_shutdown_delay` option to wait after
  1294      shutting down to prevent issues removing floppy drive. [GH-3952]
  1295  * builder/virtualbox: Added `vrdp_bind_address` option. [GH-3566]
  1296  * builder/virtualbox: Copy directories recursively with `floppy_dirs`.
  1297      [GH-2919]
  1298  * builder/virtualbox: Now pauses between `boot_command` entries when running
  1299      with `-debug` [GH-3542]
  1300  * builder/vmware-vmx: Added `tools_upload_flavor` and `tools_upload_path` to
  1301      docs.
  1302  * builder/vmware: Add support for ctrl, shift and alt keys in `boot_command`.
  1303      [GH-3767]
  1304  * builder/vmware: Added `vnc_bind_address` option. [GH-3565]
  1305  * builder/vmware: Adds passwords for VNC. [GH-2325]
  1306  * builder/vmware: Copy directories recursively with `floppy_dirs`. [GH-2919]
  1307  * builder/vmware: Handle connection to VM with more than one NIC on ESXi
  1308      [GH-3347]
  1309  * builder/vmware: Now paused between `boot_command` entries when running with
  1310      `-debug` [GH-3542]
  1311  * core: Supress plugin discovery from plugins. [GH-4002]
  1312  * core: Test floppy disk files actually exist. [GH-3756]
  1313  * core: setting `PACKER_LOG=0` now disables logging. [GH-3964]
  1314  * post-processor/amazon-import: Support `ami_name` for naming imported AMI.
  1315      [GH-3941]
  1316  * post-processor/compress: Added support for bgzf compression. [GH-3501]
  1317  * post-processor/docker: Improved support for Docker push to Amazon ECR.
  1318      [GH-3856]
  1319  * post-processor/docker: Preserve tags when running docker push. [GH-3631]
  1320  * post-processor/vagrant: Added vsphere-esx hosts to supported machine types.
  1321      [GH-3967]
  1322  * provisioner/ansible-local: Support for ansible-galaxy. [GH-3350] [GH-3836]
  1323  * provisioner/ansible: Improved logging and error handling. [GH-3477]
  1324  * provisioner/ansible: Support scp. [GH-3861]
  1325  * provisioner/chef: Added `knife_command` option and added a correct default
  1326      value for Windows. [GH-3622]
  1327  * provisioner/chef: Installs 64bit chef on Windows if available. [GH-3848]
  1328  * provisioner/file: Now makes destination directory. [GH-3692]
  1329  * provisioner/puppet: Added `execute_command` option. [GH-3614]
  1330  * provisioner/salt: Added `custom_state` to specify state to run instead of
  1331      `highstate`. [GH-3776]
  1332  * provisioner/shell: Added `expect_disconnect` flag to fail if remote
  1333      unexpectedly disconnects. [GH-4034]
  1334  * scripts: Added `help` target to Makefile. [GH-3290]
  1335  * vendor: Moving from Godep to govendor. See `CONTRIBUTING.md` for details.
  1336      [GH-3956]
  1337  * website: code examples now use inconsolata. Improve code font rendering on
  1338      linux.
  1339  
  1340  ### BUG FIXES:
  1341  
  1342  * builder/amazon: Add 0.5 cents to discovered spot price. [GH-3662]
  1343  * builder/amazon: Allow using `ssh_private_key_file` and `ssh_password`.
  1344      [GH-3953]
  1345  * builder/amazon: Fix packer crash when waiting for SSH. [GH-3865]
  1346  * builder/amazon: Honor ssh_private_ip flag in EC2-Classic. [GH-3752]
  1347  * builder/amazon: Properly clean up EBS volumes on failure. [GH-3789]
  1348  * builder/amazon: Use `temporary_key_pair_name` when specified. [GH-3739]
  1349  * builder/amazon: retry creating tags on images since the images might take
  1350      some time to become available. [GH-3938]
  1351  * builder/azure: Fix authorization setup script failing to creating service
  1352      principal. [GH-3812]
  1353  * builder/azure: check for empty resource group. [GH-3606]
  1354  * builder/azure: fix token validity test. [GH-3609]
  1355  * builder/docker: Fix file provisioner dotfile matching. [GH-3800]
  1356  * builder/docker: fix docker builder with ansible provisioner. [GH-3476]
  1357  * builder/qemu: Don't fail on communicator set to `none`. [GH-3681]
  1358  * builder/qemu: Make `ssh_host_port_max` an inclusive bound. [GH-2784]
  1359  * builder/virtualbox: Make `ssh_host_port_max` an inclusive bound. [GH-2784]
  1360  * builder/virtualbox: Respect `ssh_host` [GH-3617]
  1361  * builder/vmware: Do not add remotedisplay.vnc.ip to VMX data on ESXi
  1362      [GH-3740]
  1363  * builder/vmware: Don't check for poweron errors on ESXi. [GH-3195]
  1364  * builder/vmware: Re-introduce case sensitive VMX keys. [GH-2707]
  1365  * builder/vmware: Respect `ssh_host`/`winrm_host` on ESXi. [GH-3738]
  1366  * command/push: Allows dot (`.`) in image names. [GH-3937]
  1367  * common/iso_config: fix potential panic when iso checksum url was given but
  1368      not the iso url. [GH-4004]
  1369  * communicator/ssh: fixed possible panic when reconnecting fails. [GH-4008]
  1370  * communicator/ssh: handle error case where server closes the connection but
  1371      doesn't give us an error code. [GH-3966]
  1372  * post-processor/shell-local: Do not set execute bit on artifact file.
  1373      [GH-3505]
  1374  * post-processor/vsphere: Fix upload failures with vsphere. [GH-3321]
  1375  * provisioner/ansible: Properly set host key checking even when a custom ENV
  1376      is specified. [GH-3568]
  1377  * provisioner/file: Fix directory download. [GH-3899]
  1378  * provisioner/powershell: fixed issue with setting environment variables.
  1379      [GH-2785]
  1380  * website: improved rendering on iPad. [GH-3780]
  1381  
  1382  ## 0.10.2 (September 20, 2016)
  1383  
  1384  ### BUG FIXES:
  1385  
  1386  * Rebuilding with OS X Sierra and go 1.7.1 to fix bug  in Sierra
  1387  
  1388  ## 0.10.1 (May 7, 2016)
  1389  
  1390  ### FEATURES:
  1391  
  1392  * `azure-arm` builder: Can now build Windows images, and supports additional
  1393      configuration. Please refer to the documentation for details.
  1394  
  1395  ### IMPROVEMENTS:
  1396  
  1397  * core: Added support for `ATLAS_CAFILE` and `ATLAS_CAPATH` [GH-3494]
  1398  * builder/azure: Improved build cancellation and cleanup of partially-
  1399      provisioned resources. [GH-3461]
  1400  * builder/azure: Improved logging. [GH-3461]
  1401  * builder/azure: Added support for US Government and China clouds. [GH-3461]
  1402  * builder/azure: Users may now specify an image version. [GH-3461]
  1403  * builder/azure: Added device login. [GH-3461]
  1404  * builder/docker: Added `privileged` build option. [GH-3475]
  1405  * builder/google: Packer now identifies its version to the service. [GH-3465]
  1406  * provisioner/shell: Added `remote_folder` and `remote_file` options
  1407      [GH-3462]
  1408  * post-processor/compress: Added support for `bgzf` format and added
  1409      `format` option. [GH-3501]
  1410  
  1411  ### BUG FIXES:
  1412  
  1413  * core: Fix hang after pressing enter key in `-debug` mode. [GH-3346]
  1414  * provisioner/chef: Use custom values for remote validation key path
  1415      [GH-3468]
  1416  
  1417  ## 0.10.0 (March 14, 2016)
  1418  
  1419  ### BACKWARDS INCOMPATIBILITIES:
  1420  
  1421  * Building Packer now requires go >= 1.5 (>= 1.6 is recommended). If you want
  1422      to continue building with go 1.4 you can remove the `azurearmbuilder` line
  1423      from `command/plugin.go`.
  1424  
  1425  ### FEATURES:
  1426  
  1427  * **New `azure-arm` builder**: Build virtual machines in Azure Resource
  1428      Manager
  1429  
  1430  ### IMPROVEMENTS:
  1431  
  1432  * builder/google: Added support for `disk_type` [GH-2830]
  1433  * builder/openstack: Added support for retrieving the Administrator password
  1434      when using WinRM if no `winrm_password` is set. [GH-3209]
  1435  * provisioner/ansible: Added the `empty_groups` parameter. [GH-3232]
  1436  * provisioner/ansible: Added the `user` parameter. [GH-3276]
  1437  * provisioner/ansible: Don't use deprecated ssh option with Ansible 2.0
  1438      [GH-3291]
  1439  * provisioner/puppet-masterless: Add `ignore_exit_codes` parameter. [GH-3349]
  1440  
  1441  ### BUG FIXES:
  1442  
  1443  * builders/parallels: Handle `output_directory` containing `.` and `..`
  1444      [GH-3239]
  1445  * provisioner/ansible: os.Environ() should always be passed to the ansible
  1446      command. [GH-3274]
  1447  
  1448  ## 0.9.0 (February 19, 2016)
  1449  
  1450  ### BACKWARDS INCOMPATIBILITIES:
  1451  
  1452  * Packer now ships as a single binary, including plugins. If you install packer
  1453      0.9.0 over a previous packer installation, **you must delete all of the
  1454      packer-* plugin files** or packer will load out-of-date plugins from disk.
  1455  * Release binaries are now provided via <https://releases.hashicorp.com>.
  1456  * Packer 0.9.0 is now built with Go 1.6.
  1457  * core: Plugins that implement the Communicator interface must now implement
  1458      a DownloadDir method. [GH-2618]
  1459  * builder/amazon: Inline `user_data` for EC2 is now base64 encoded
  1460      automatically. [GH-2539]
  1461  * builder/parallels: `parallels_tools_host_path` and `guest_os_distribution`
  1462      have been replaced by `guest_os_type`; use `packer fix` to update your
  1463      templates. [GH-2751]
  1464  
  1465  ### FEATURES:
  1466  
  1467  * **Chef on Windows**: The chef provisioner now has native support for
  1468      Windows using Powershell and WinRM. [GH-1215]
  1469  * **New `vmware-esxi` feature**: Packer can now export images from vCloud or
  1470      vSphere during the build. [GH-1921]
  1471  * **New Ansible Provisioner**: `ansible` provisioner supports remote
  1472      provisioning to keep your build image cleaner. [GH-1969]
  1473  * **New Amazon Import post-processor**: `amazon-import` allows you to upload an
  1474      OVA-based VM to Amazon EC2. [GH-2962]
  1475  * **Shell Local post-processor**: `shell-local` allows you to run shell
  1476      commands on the host after a build has completed for custom packaging or
  1477      publishing of your artifacts. [GH-2706]
  1478  * **Artifice post-processor**: Override packer artifacts during post-
  1479      processing. This allows you to extract artifacts from a packer builder and
  1480      use them with other post-processors like compress, docker, and Atlas.
  1481  
  1482  ### IMPROVEMENTS:
  1483  
  1484  * core: Packer plugins are now compiled into the main binary, reducing file
  1485      size and build times, and making packer easier to install. The overall
  1486      plugin architecture has not changed and third-party plugins can still be
  1487      loaded from disk. Please make sure your plugins are up-to-date! [GH-2854]
  1488  * core: Packer now indicates line numbers for template parse errors. [GH-2742]
  1489  * core: Scripts are executed via `/usr/bin/env bash` instead of `/bin/bash`
  1490      for broader compatibility. [GH-2913]
  1491  * core: `target_path` for builder downloads can now be specified. [GH-2600]
  1492  * core: WinRM communicator now supports HTTPS protocol. [GH-3061]
  1493  * core: Template syntax errors now show line, column, offset. [GH-3180]
  1494  * core: SSH communicator now supports downloading directories. [GH-2618]
  1495  * builder/amazon: Add support for `ebs_optimized` [GH-2806]
  1496  * builder/amazon: You can now specify `0` for `spot_price` to switch to on
  1497      demand instances. [GH-2845]
  1498  * builder/amazon: Added `ap-northeast-2` (Seoul) [GH-3056]
  1499  * builder/amazon: packer will try to derive the AZ if only a subnet is
  1500      specified. [GH-3037]
  1501  * builder/digitalocean: doubled instance wait timeouts to power off or
  1502      shutdown (now 4 minutes) and to complete a snapshot (now 20 minutes)
  1503      [GH-2939]
  1504  * builder/google: `account_file` can now be provided as a JSON string
  1505      [GH-2811]
  1506  * builder/google: added support for `preemptible` instances. [GH-2982]
  1507  * builder/google: added support for static external IPs via `address` option
  1508      [GH-3030]
  1509  * builder/openstack: added retry on WaitForImage 404. [GH-3009]
  1510  * builder/openstack: Can specify `source_image_name` instead of the ID
  1511      [GH-2577]
  1512  * builder/openstack: added support for SSH over IPv6. [GH-3197]
  1513  * builder/parallels: Improve support for Parallels 11. [GH-2662]
  1514  * builder/parallels: Parallels disks are now compacted by default. [GH-2731]
  1515  * builder/parallels: Packer will look for Parallels in
  1516      `/Applications/Parallels Desktop.app` if it is not detected automatically
  1517      [GH-2839]
  1518  * builder/qemu: qcow2 images are now compacted by default. [GH-2748]
  1519  * builder/qemu: qcow2 images can now be compressed. [GH-2748]
  1520  * builder/qemu: Now specifies `virtio-scsi` by default. [GH-2422]
  1521  * builder/qemu: Now checks for version-specific options. [GH-2376]
  1522  * builder/qemu: Can now bypass disk cache using `iso_skip_cache` [GH-3105]
  1523  * builder/qemu: `<wait>` in `boot_command` now accepts an arbitrary duration
  1524      like <wait1m30s> [GH-3129]
  1525  * builder/qemu: Expose `{{ .SSHHostPort }}` in templates. [GH-2884]
  1526  * builder/virtualbox: Added VRDP for debugging. [GH-3188]
  1527  * builder/vmware-esxi: Added private key auth for remote builds via
  1528      `remote_private_key_file` [GH-2912]
  1529  * post-processor/atlas: Added support for compile ID. [GH-2775]
  1530  * post-processor/docker-import: Can now import Artifice artifacts. [GH-2718]
  1531  * provisioner/chef: Added `encrypted_data_bag_secret_path` option. [GH-2653]
  1532  * provisioner/puppet: Added the `extra_arguments` parameter. [GH-2635]
  1533  * provisioner/salt: Added `no_exit_on_failure`, `log_level`, and improvements
  1534      to salt command invocation. [GH-2660]
  1535  
  1536  ### BUG FIXES:
  1537  
  1538  * core: Random number generator is now seeded. [GH-2640]
  1539  * core: Packer should now have a lot less race conditions. [GH-2824]
  1540  * builder/amazon: The `no_device` option for block device mappings is now handled correctly. [GH-2398]
  1541  * builder/amazon: AMI name validation now matches Amazon's spec. [GH-2774]
  1542  * builder/amazon: Use snapshot size when volume size is unspecified. [GH-2480]
  1543  * builder/amazon: Pass AccessKey and SecretKey when uploading bundles for
  1544      instance-backed AMIs. [GH-2596]
  1545  * builder/parallels: Added interpolation in `prlctl_post` [GH-2828]
  1546  * builder/vmware: `format` option is now read correctly. [GH-2892]
  1547  * builder/vmware-esxi: Correct endless loop in destroy validation logic
  1548      [GH-2911]
  1549  * provisioner/shell: No longer leaves temp scripts behind. [GH-1536]
  1550  * provisioner/winrm: Now waits for reboot to complete before continuing with provisioning. [GH-2568]
  1551  * post-processor/artifice: Fix truncation of files downloaded from Docker. [GH-2793]
  1552  
  1553  
  1554  ## 0.8.6 (Aug 22, 2015)
  1555  
  1556  ### IMPROVEMENTS:
  1557  
  1558  * builder/docker: Now supports Download so it can be used with the file
  1559      provisioner to download a file from a container. [GH-2585]
  1560  * builder/docker: Now verifies that the artifact will be used before the build
  1561      starts, unless the `discard` option is specified. This prevent failures
  1562      after the build completes. [GH-2626]
  1563  * post-processor/artifice: Now supports glob-like syntax for filenames. [GH-2619]
  1564  * post-processor/vagrant: Like the compress post-processor, vagrant now uses a
  1565      parallel gzip algorithm to compress vagrant boxes. [GH-2590]
  1566  
  1567  ### BUG FIXES:
  1568  
  1569  * core: When `iso_url` is a local file and the checksum is invalid, the local
  1570      file will no longer be deleted. [GH-2603]
  1571  * builder/parallels: Fix interpolation in `parallels_tools_guest_path` [GH-2543]
  1572  
  1573  ## 0.8.5 (Aug 10, 2015)
  1574  
  1575  ### FEATURES:
  1576  
  1577  * **[Beta]** Artifice post-processor: Override packer artifacts during post-
  1578      processing. This allows you to extract artifacts from a packer builder
  1579      and use them with other post-processors like compress, docker, and Atlas.
  1580  
  1581  ### IMPROVEMENTS:
  1582  
  1583  * Many docs have been updated and corrected; big thanks to our contributors!
  1584  * builder/openstack: Add debug logging for IP addresses used for SSH. [GH-2513]
  1585  * builder/openstack: Add option to use existing SSH keypair. [GH-2512]
  1586  * builder/openstack: Add support for Glance metadata. [GH-2434]
  1587  * builder/qemu and builder/vmware: Packer's VNC connection no longer asks for
  1588      an exclusive connection. [GH-2522]
  1589  * provisioner/salt-masterless: Can now customize salt remote directories. [GH-2519]
  1590  
  1591  ### BUG FIXES:
  1592  
  1593  * builder/amazon: Improve instance cleanup by storing id sooner. [GH-2404]
  1594  * builder/amazon: Only fetch windows password when using WinRM communicator. [GH-2538]
  1595  * builder/openstack: Support IPv6 SSH address. [GH-2450]
  1596  * builder/openstack: Track new IP address discovered during RackConnect. [GH-2514]
  1597  * builder/qemu: Add 100ms delay between VNC key events. [GH-2415]
  1598  * post-processor/atlas: atlas_url configuration option works now. [GH-2478]
  1599  * post-processor/compress: Now supports interpolation in output config. [GH-2414]
  1600  * provisioner/powershell: Elevated runs now receive environment variables. [GH-2378]
  1601  * provisioner/salt-masterless: Clarify error messages when we can't create or
  1602      write to the temp directory. [GH-2518]
  1603  * provisioner/salt-masterless: Copy state even if /srv/salt exists already. [GH-1699]
  1604  * provisioner/salt-masterless: Make sure /etc/salt exists before writing to it. [GH-2520]
  1605  * provisioner/winrm: Connect to the correct port when using NAT with
  1606      VirtualBox / VMware. [GH-2399]
  1607  
  1608  ## Note: 0.8.3 was pulled and 0.8.4 was skipped.
  1609  
  1610  ## 0.8.2 (July 17, 2015)
  1611  
  1612  ### IMPROVEMENTS:
  1613  
  1614  * builder/docker: Add option to use a Pty. [GH-2425]
  1615  
  1616  ### BUG FIXES:
  1617  
  1618  * core: Fix crash when `min_packer_version` is specified in a template. [GH-2385]
  1619  * builder/amazon: Fix EC2 devices being included in EBS mappings. [GH-2459]
  1620  * builder/googlecompute: Fix default name for GCE images. [GH-2400]
  1621  * builder/null: Fix error message with missing ssh_host. [GH-2407]
  1622  * builder/virtualbox: Use --portcount on VirtualBox 5.x. [GH-2438]
  1623  * provisioner/puppet: Packer now correctly handles a directory for manifest_file. [GH-2463]
  1624  * provisioner/winrm: Fix potential crash with WinRM. [GH-2416]
  1625  
  1626  ## 0.8.1 (July 2, 2015)
  1627  
  1628  ### IMPROVEMENTS:
  1629  
  1630  * builder/amazon: When debug mode is enabled, the Windows administrator
  1631      password for Windows instances will be shown. [GH-2351]
  1632  
  1633  ### BUG FIXES:
  1634  
  1635  * core: `min_packer_version`  field in configs work. [GH-2356]
  1636  * core: The `build_name` and `build_type` functions work in provisioners. [GH-2367]
  1637  * core: Handle timeout in SSH handshake. [GH-2333]
  1638  * command/build: Fix reading configuration from stdin. [GH-2366]
  1639  * builder/amazon: Fix issue with sharing AMIs when using `ami_users` [GH-2308]
  1640  * builder/amazon: Fix issue when using multiple Security Groups. [GH-2381]
  1641  * builder/amazon: Fix for tag creation when creating new ec2 instance. [GH-2317]
  1642  * builder/amazon: Fix issue with creating AMIs with multiple device mappings. [GH-2320]
  1643  * builder/amazon: Fix failing AMI snapshot tagging when copying to other
  1644      regions. [GH-2316]
  1645  * builder/amazon: Fix setting AMI launch permissions. [GH-2348]
  1646  * builder/amazon: Fix spot instance cleanup to remove the correct request. [GH-2327]
  1647  * builder/amazon: Fix `bundle_prefix` not interpolating `timestamp` [GH-2352]
  1648  * builder/amazon-instance: Fix issue with creating AMIs without specifying a
  1649      virtualization type. [GH-2330]
  1650  * builder/digitalocean: Fix builder using private IP instead of public IP. [GH-2339]
  1651  * builder/google: Set default communicator settings properly. [GH-2353]
  1652  * builder/vmware-iso: Setting `checksum_type` to `none` for ESX builds
  1653      now works. [GH-2323]
  1654  * provisioner/chef: Use knife config file vs command-line params to
  1655      clean up nodes so full set of features can be used. [GH-2306]
  1656  * post-processor/compress: Fixed crash in compress post-processor plugin. [GH-2311]
  1657  
  1658  ## 0.8.0 (June 23, 2015)
  1659  
  1660  ### BACKWARDS INCOMPATIBILITIES:
  1661  
  1662  * core: SSH connection will no longer request a PTY by default. This
  1663      can be enabled per builder.
  1664  * builder/digitalocean: no longer supports the v1 API which has been
  1665      deprecated for some time. Most configurations should continue to
  1666      work as long as you use the `api_token` field for auth.
  1667  * builder/digitalocean: `image`, `region`, and `size` are now required.
  1668  * builder/openstack: auth parameters have been changed to better
  1669      reflect OS terminology. Existing environment variables still work.
  1670  
  1671  ### FEATURES:
  1672  
  1673  * **WinRM:** You can now connect via WinRM with almost every builder.
  1674      See the docs for more info. [GH-2239]
  1675  * **Windows AWS Support:** Windows AMIs can now be built without any
  1676      external plugins: Packer will start a Windows instance, get the
  1677      admin password, and can use WinRM (above) to connect through. [GH-2240]
  1678  * **Disable SSH:** Set `communicator` to "none" in any builder to disable SSH
  1679      connections. Note that provisioners won't work if this is done. [GH-1591]
  1680  * **SSH Agent Forwarding:** SSH Agent Forwarding will now be enabled
  1681      to allow access to remote servers such as private git repos. [GH-1066]
  1682  * **SSH Bastion Hosts:** You can now specify a bastion host for
  1683      SSH access (works with all builders). [GH-387]
  1684  * **OpenStack v3 Identity:** The OpenStack builder now supports the
  1685      v3 identity API.
  1686  * **Docker builder supports SSH**: The Docker builder now supports containers
  1687      with SSH, just set `communicator` to "ssh" [GH-2244]
  1688  * **File provisioner can download**: The file provisioner can now download
  1689      files out of the build process. [GH-1909]
  1690  * **New config function: `build_name`**: The name of the currently running
  1691      build. [GH-2232]
  1692  * **New config function: `build_type`**: The type of the currently running
  1693      builder. This is useful for provisioners. [GH-2232]
  1694  * **New config function: `template_dir`**: The directory to the template
  1695      being built. This should be used for template-relative paths. [GH-54]
  1696  * **New provisioner: shell-local**: Runs a local shell script. [GH-770]
  1697  * **New provisioner: powershell**: Provision Windows machines
  1698      with PowerShell scripts. [GH-2243]
  1699  * **New provisioner: windows-shell**: Provision Windows machines with
  1700      batch files. [GH-2243]
  1701  * **New provisioner: windows-restart**: Restart a Windows machines and
  1702      wait for it to come back online. [GH-2243]
  1703  * **Compress post-processor supports multiple algorithms:** The compress
  1704      post-processor now supports lz4 compression and compresses gzip in
  1705      parallel for much faster throughput.
  1706  
  1707  ### IMPROVEMENTS:
  1708  
  1709  * core: Interrupt handling for SIGTERM signal as well. [GH-1858]
  1710  * core: HTTP downloads support resuming. [GH-2106]
  1711      * builder/*: Add `ssh_handshake_attempts` to configure the number of
  1712      handshake attempts done before failure. [GH-2237]
  1713  * builder/amazon: Add `force_deregister` option for automatic AMI
  1714      deregistration. [GH-2221]
  1715  * builder/amazon: Now applies tags to EBS snapshots. [GH-2212]
  1716  * builder/amazon: Clean up orphaned volumes from Source AMIs. [GH-1783]
  1717  * builder/amazon: Support custom keypairs. [GH-1837]
  1718  * builder/amazon-chroot: Can now resize the root volume of the resulting
  1719      AMI with the `root_volume_size` option. [GH-2289]
  1720  * builder/amazon-chroot: Add `mount_options` configuration option for providing
  1721      options to the `mount` command. [GH-2296]
  1722  * builder/digitalocean: Save SSH key to pwd if debug mode is on. [GH-1829]
  1723  * builder/digitalocean: User data support. [GH-2113]
  1724  * builder/googlecompute: Option to use internal IP for connections. [GH-2152]
  1725  * builder/parallels: Support Parallels Desktop 11. [GH-2199]
  1726  * builder/openstack: Add `rackconnect_wait` for Rackspace customers to wait for
  1727      RackConnect data to appear
  1728  * builder/openstack: Add `ssh_interface` option for rackconnect for users that
  1729      have prohibitive firewalls
  1730  * builder/openstack: Flavor names can be used as well as refs
  1731  * builder/openstack: Add `availability_zone` [GH-2016]
  1732  * builder/openstack: Machine will be stopped prior to imaging if the
  1733      cluster supports the `startstop` extension. [GH-2223]
  1734  * builder/openstack: Support for user data. [GH-2224]
  1735  * builder/qemu: Default accelerator to "tcg" on Windows. [GH-2291]
  1736  * builder/virtualbox: Added option: `ssh_skip_nat_mapping` to skip the
  1737      automatic port forward for SSH and to use the guest port directly. [GH-1078]
  1738  * builder/virtualbox: Added SCSI support
  1739  * builder/vmware: Support for additional disks. [GH-1382]
  1740  * builder/vmware: Can now customize the template used for adding disks. [GH-2254]
  1741  * command/fix: After fixing, the template is validated. [GH-2228]
  1742  * command/push: Add `-name` flag for specifying name from CLI. [GH-2042]
  1743  * command/push: Push configuration in templates supports variables. [GH-1861]
  1744  * post-processor/docker-save: Can be chained. [GH-2179]
  1745  * post-processor/docker-tag: Support `force` option. [GH-2055]
  1746  * post-processor/docker-tag: Can be chained. [GH-2179]
  1747  * post-processor/vsphere: Make more fields optional, support empty
  1748      resource pools. [GH-1868]
  1749  * provisioner/puppet-masterless: `working_directory` option. [GH-1831]
  1750  * provisioner/puppet-masterless: `packer_build_name` and
  1751      `packer_build_type` are default facts. [GH-1878]
  1752  * provisioner/puppet-server: `ignore_exit_codes` option added. [GH-2280]
  1753  
  1754  ### BUG FIXES:
  1755  
  1756  * core: Fix potential panic for post-processor plugin exits. [GH-2098]
  1757  * core: `PACKER_CONFIG` may point to a non-existent file. [GH-2226]
  1758  * builder/amazon: Allow spaces in AMI names when using `clean_ami_name` [GH-2182]
  1759  * builder/amazon: Remove deprecated ec2-upload-bundle parameter. [GH-1931]
  1760  * builder/amazon: Use IAM Profile to upload bundle if provided. [GH-1985]
  1761  * builder/amazon: Use correct exit code after SSH authentication failed. [GH-2004]
  1762  * builder/amazon: Retry finding created instance for eventual
  1763      consistency. [GH-2129]
  1764  * builder/amazon: If no AZ is specified, use AZ chosen automatically by
  1765      AWS for spot instance. [GH-2017]
  1766  * builder/amazon: Private key file (only available in debug mode)
  1767      is deleted on cleanup. [GH-1801]
  1768  * builder/amazon: AMI copy won't copy to the source region. [GH-2123]
  1769  * builder/amazon: Validate AMI doesn't exist with name prior to build. [GH-1774]
  1770  * builder/amazon: Improved retry logic around waiting for instances. [GH-1764]
  1771  * builder/amazon: Fix issues with creating Block Devices. [GH-2195]
  1772  * builder/amazon/chroot: Retry waiting for disk attachments. [GH-2046]
  1773  * builder/amazon/chroot: Only unmount path if it is mounted. [GH-2054]
  1774  * builder/amazon/instance: Use `-i` in sudo commands so PATH is inherited. [GH-1930]
  1775  * builder/amazon/instance: Use `--region` flag for bundle upload command. [GH-1931]
  1776  * builder/digitalocean: Wait for droplet to unlock before changing state,
  1777      should lower the "pending event" errors.
  1778  * builder/digitalocean: Ignore invalid fields from the ever-changing v2 API
  1779  * builder/digitalocean: Private images can be used as a source. [GH-1792]
  1780  * builder/docker: Fixed hang on prompt while copying script
  1781  * builder/docker: Use `docker exec` for newer versions of Docker for
  1782      running scripts. [GH-1993]
  1783  * builder/docker: Fix crash that could occur at certain timed ctrl-c. [GH-1838]
  1784  * builder/docker: validate that `export_path` is not a directory. [GH-2105]
  1785  * builder/google: `ssh_timeout` is respected. [GH-1781]
  1786  * builder/openstack: `ssh_interface` can be used to specify the interface
  1787      to retrieve the SSH IP from. [GH-2220]
  1788  * builder/qemu: Add `disk_discard` option. [GH-2120]
  1789  * builder/qemu: Use proper SSH port, not hardcoded to 22. [GH-2236]
  1790  * builder/qemu: Find unused SSH port if SSH port is taken. [GH-2032]
  1791  * builder/virtualbox: Bind HTTP server to IPv4, which is more compatible with
  1792      OS installers. [GH-1709]
  1793  * builder/virtualbox: Remove the floppy controller in addition to the
  1794      floppy disk. [GH-1879]
  1795  * builder/virtualbox: Fixed regression where downloading ISO without a
  1796      ".iso" extension didn't work. [GH-1839]
  1797  * builder/virtualbox: Output dir is verified at runtime, not template
  1798      validation time. [GH-2233]
  1799  * builder/virtualbox: Find unused SSH port if SSH port is taken. [GH-2032]
  1800  * builder/vmware: Add 100ms delay between keystrokes to avoid subtle
  1801      timing issues in most cases. [GH-1663]
  1802  * builder/vmware: Bind HTTP server to IPv4, which is more compatible with
  1803      OS installers. [GH-1709]
  1804  * builder/vmware: Case-insensitive match of MAC address to find IP. [GH-1989]
  1805  * builder/vmware: More robust IP parsing from ifconfig output. [GH-1999]
  1806  * builder/vmware: Nested output directories for ESXi work. [GH-2174]
  1807  * builder/vmware: Output dir is verified at runtime, not template
  1808      validation time. [GH-2233]
  1809  * command/fix: For the `virtualbox` to `virtualbox-iso` builder rename,
  1810      provisioner overrides are now also fixed. [GH-2231]
  1811  * command/validate: don't crash for invalid builds. [GH-2139]
  1812  * post-processor/atlas: Find common archive prefix for Windows. [GH-1874]
  1813  * post-processor/atlas: Fix index out of range panic. [GH-1959]
  1814  * post-processor/vagrant-cloud: Fixed failing on response
  1815  * post-processor/vagrant-cloud: Don't delete version on error. [GH-2014]
  1816  * post-processor/vagrant-cloud: Retry failed uploads a few times
  1817  * provisioner/chef-client: Fix permissions issues on default dir. [GH-2255]
  1818  * provisioner/chef-client: Node cleanup works now. [GH-2257]
  1819  * provisioner/puppet-masterless: Allow manifest_file to be a directory
  1820  * provisioner/salt-masterless: Add `--retcode-passthrough` to salt-call
  1821  * provisioner/shell: chmod executable script to 0755, not 0777. [GH-1708]
  1822  * provisioner/shell: inline commands failing will fail the provisioner. [GH-2069]
  1823  * provisioner/shell: single quotes in env vars are escaped. [GH-2229]
  1824  * provisioner/shell: Temporary file is deleted after run. [GH-2259]
  1825  * provisioner/shell: Randomize default script name to avoid strange
  1826      race issues from Windows. [GH-2270]
  1827  
  1828  ## 0.7.5 (December 9, 2014)
  1829  
  1830  ### FEATURES:
  1831  
  1832  * **New command: `packer push`**: Push template and files to HashiCorp's
  1833      Atlas for building your templates automatically.
  1834  * **New post-processor: `atlas`**: Send artifact to HashiCorp's Atlas for
  1835      versioning and storing artifacts. These artifacts can then be queried
  1836      using the API, Terraform, etc.
  1837  
  1838  ### IMPROVEMENTS:
  1839  
  1840  * builder/googlecompute: Support for ubuntu-os-cloud project
  1841  * builder/googlecompute: Support for OAuth2 to avoid client secrets file
  1842  * builder/googlecompute: GCE image from persistent disk instead of tarball
  1843  * builder/qemu: Checksum type "none" can be used
  1844  * provisioner/chef: Generate a node name if none available
  1845  * provisioner/chef: Added ssl_verify_mode configuration
  1846  
  1847  ### BUG FIXES:
  1848  
  1849  * builder/parallels: Fixed attachment of ISO to cdrom device
  1850  * builder/parallels: Fixed boot load ordering
  1851  * builder/digitalocean: Fixed decoding of size
  1852  * builder/digitalocean: Fixed missing content-type header in request
  1853  * builder/digitalocean: Fixed use of private IP
  1854  * builder/digitalocean: Fixed the artifact ID generation
  1855  * builder/vsphere: Fixed credential escaping
  1856  * builder/qemu: Fixed use of CDROM with disk_image
  1857  * builder/aws: Fixed IP address for SSH in VPC
  1858  * builder/aws: Fixed issue with multiple block devices
  1859  * builder/vmware: Upload VMX to ESX5 after editing
  1860  * communicator/docker: Fix handling of symlinks during upload
  1861  * provisioner/chef: Fixed use of sudo in some cases
  1862  * core: Fixed build name interpolation
  1863  * postprocessor/vagrant: Fixed check for Vagrantfile template
  1864  
  1865  ## 0.7.2 (October 28, 2014)
  1866  
  1867  ### FEATURES:
  1868  
  1869  * builder/digitalocean: API V2 support. [GH-1463]
  1870  * builder/parallels: Don't depend on _prl-utils_. [GH-1499]
  1871  
  1872  ### IMPROVEMENTS:
  1873  
  1874  * builder/amazon/all: Support new AWS Frankfurt region.
  1875  * builder/docker: Allow remote `DOCKER_HOST`, which works as long as
  1876      volumes work. [GH-1594]
  1877  * builder/qemu: Can set cache mode for main disk. [GH-1558]
  1878  * builder/qemu: Can build from pre-existing disk. [GH-1342]
  1879  * builder/vmware: Can specify path to Fusion installation with environmental
  1880      variable `FUSION_APP_PATH`. [GH-1552]
  1881  * builder/vmware: Can specify the HW version for the VMX. [GH-1530]
  1882  * builder/vmware/esxi: Will now cache ISOs/floppies remotely. [GH-1479]
  1883  * builder/vmware/vmx: Source VMX can have a disk connected via SATA. [GH-1604]
  1884  * post-processors/vagrant: Support Qemu (libvirt) boxes. [GH-1330]
  1885  * post-processors/vagrantcloud: Support self-hosted box URLs.
  1886  
  1887  ### BUG FIXES:
  1888  
  1889  * core: Fix loading plugins from pwd. [GH-1521]
  1890  * builder/amazon: Prefer token in config if given. [GH-1544]
  1891  * builder/amazon/all: Extended timeout for waiting for AMI. [GH-1533]
  1892  * builder/virtualbox: Can read VirtualBox version on FreeBSD. [GH-1570]
  1893  * builder/virtualbox: More robust reading of guest additions URL. [GH-1509]
  1894  * builder/vmware: Always remove floppies/drives. [GH-1504]
  1895  * builder/vmware: Wait some time so that post-VMX update aren't
  1896      overwritten. [GH-1504]
  1897  * builder/vmware/esxi: Retry power on if it fails. [GH-1334]
  1898  * builder/vmware-vmx: Fix issue with order of boot command support. [GH-1492]
  1899  * builder/amazon: Extend timeout and allow user override. [GH-1533]
  1900  * builder/parallels: Ignore 'The fdd0 device does not exist' [GH-1501]
  1901  * builder/parallels: Rely on Cleanup functions to detach devices. [GH-1502]
  1902  * builder/parallels: Create VM without hdd and then add it later. [GH-1548]
  1903  * builder/parallels: Disconnect cdrom0. [GH-1605]
  1904  * builder/qemu: Don't use `-redir` flag anymore, replace with
  1905      `hostfwd` options. [GH-1561]
  1906  * builder/qemu: Use `pc` as default machine type instead of `pc-1.0`.
  1907  * providers/aws: Ignore transient network errors. [GH-1579]
  1908  * provisioner/ansible: Don't buffer output so output streams in. [GH-1585]
  1909  * provisioner/ansible: Use inventory file always to avoid potentially
  1910      deprecated feature. [GH-1562]
  1911  * provisioner/shell: Quote environmental variables. [GH-1568]
  1912  * provisioner/salt: Bootstrap over SSL. [GH-1608]
  1913  * post-processors/docker-push: Work with docker-tag artifacts. [GH-1526]
  1914  * post-processors/vsphere: Append "/" to object address. [GH-1615]
  1915  
  1916  ## 0.7.1 (September 10, 2014)
  1917  
  1918  ### FEATURES:
  1919  
  1920  * builder/vmware: VMware Fusion Pro 7 is now supported. [GH-1478]
  1921  
  1922  ### BUG FIXES:
  1923  
  1924  * core: SSH will connect slightly faster if it is ready immediately.
  1925  * provisioner/file: directory uploads no longer hang. [GH-1484]
  1926  * provisioner/file: fixed crash on large files. [GH-1473]
  1927  * scripts: Windows executable renamed to packer.exe. [GH-1483]
  1928  
  1929  ## 0.7.0 (September 8, 2014)
  1930  
  1931  ### BACKWARDS INCOMPATIBILITIES:
  1932  
  1933  * The authentication configuration for Google Compute Engine has changed.
  1934      The new method is much simpler, but is not backwards compatible.
  1935      `packer fix` will _not_ fix this. Please read the updated GCE docs.
  1936  
  1937  ### FEATURES:
  1938  
  1939  * **New Post-Processor: `compress`** - Gzip compresses artifacts with files.
  1940  * **New Post-Processor: `docker-save`** - Save an image. This is similar to
  1941      export, but preserves the image hierarchy.
  1942  * **New Post-Processor: `docker-tag`** - Tag a created image.
  1943  * **New Template Functions: `upper`, `lower`** - See documentation for
  1944      more details.
  1945  * core: Plugins are automatically discovered if they're named properly.
  1946      Packer will look in the PWD and the directory with `packer` for
  1947      binaries named `packer-TYPE-NAME`.
  1948  * core: Plugins placed in `~/.packer.d/plugins` are now automatically
  1949      discovered.
  1950  * builder/amazon: Spot instances can now be used to build EBS backed and
  1951      instance store images. [GH-1139]
  1952  * builder/docker: Images can now be committed instead of exported. [GH-1198]
  1953  * builder/virtualbox-ovf: New `import_flags` setting can be used to add
  1954      new command line flags to `VBoxManage import` to allow things such
  1955      as EULAs to be accepted. [GH-1383]
  1956  * builder/virtualbox-ovf: Boot commands and the HTTP server are supported.
  1957      [GH-1169]
  1958  * builder/vmware: VMware Player 6 is now supported. [GH-1168]
  1959  * builder/vmware-vmx: Boot commands and the HTTP server are supported.
  1960      [GH-1169]
  1961  
  1962  ### IMPROVEMENTS:
  1963  
  1964  * core: `isotime` function can take a format. [GH-1126]
  1965  * builder/amazon/all: `AWS_SECURITY_TOKEN` is read and can also be
  1966      set with the `token` configuration. [GH-1236]
  1967  * builder/amazon/all: Can force SSH on the private IP address with
  1968      `ssh_private_ip`. [GH-1229]
  1969  * builder/amazon/all: String fields in device mappings can use variables. [GH-1090]
  1970  * builder/amazon-instance: EBS AMIs can be used as a source. [GH-1453]
  1971  * builder/digitalocean: Can set API URL endpoint. [GH-1448]
  1972  * builder/digitalocean: Region supports variables. [GH-1452]
  1973  * builder/docker: Can now specify login credentials to pull images.
  1974  * builder/docker: Support mounting additional volumes. [GH-1430]
  1975  * builder/parallels/all: Path to tools ISO is calculated automatically. [GH-1455]
  1976  * builder/parallels-pvm: `reassign_mac` option to choose whether or not
  1977      to generate a new MAC address. [GH-1461]
  1978  * builder/qemu: Can specify "none" acceleration type. [GH-1395]
  1979  * builder/qemu: Can specify "tcg" acceleration type. [GH-1395]
  1980  * builder/virtualbox/all: `iso_interface` option to mount ISO with SATA. [GH-1200]
  1981  * builder/vmware-vmx: Proper `floppy_files` support. [GH-1057]
  1982  * command/build: Add `-color=false` flag to disable color. [GH-1433]
  1983  * post-processor/docker-push: Can now specify login credentials. [GH-1243]
  1984  * provisioner/chef-client: Support `chef_environment`. [GH-1190]
  1985  
  1986  ### BUG FIXES:
  1987  
  1988  * core: nicer error message if an encrypted private key is used for
  1989      SSH. [GH-1445]
  1990  * core: Fix crash that could happen with a well timed double Ctrl-C.
  1991      [GH-1328] [GH-1314]
  1992  * core: SSH TCP keepalive period is now 5 seconds (shorter). [GH-1232]
  1993  * builder/amazon-chroot: Can properly build HVM images now. [GH-1360]
  1994  * builder/amazon-chroot: Fix crash in root device check. [GH-1360]
  1995  * builder/amazon-chroot: Add description that Packer made the snapshot
  1996      with a time. [GH-1388]
  1997  * builder/amazon-ebs: AMI is deregistered if an error. [GH-1186]
  1998  * builder/amazon-instance: Fix deprecation warning for `ec2-bundle-vol`
  1999      [GH-1424]
  2000  * builder/amazon-instance: Add `--no-filter` to the `ec2-bundle-vol`
  2001      command by default to avoid corrupting data by removing package
  2002      manager certs. [GH-1137]
  2003  * builder/amazon/all: `delete_on_termination` set to false will work.
  2004  * builder/amazon/all: Fix race condition on setting tags. [GH-1367]
  2005  * builder/amazon/all: More descriptive error messages if Amazon only
  2006      sends an error code. [GH-1189]
  2007  * builder/docker: Error if `DOCKER_HOST` is set.
  2008  * builder/docker: Remove the container during cleanup. [GH-1206]
  2009  * builder/docker: Fix case where not all output would show up from
  2010      provisioners.
  2011  * builder/googlecompute: add `disk_size` option. [GH-1397]
  2012  * builder/googlecompute: Auth works with latest formats on Google Cloud
  2013      Console. [GH-1344]
  2014  * builder/openstack: Region is not required. [GH-1418]
  2015  * builder/parallels-iso: ISO not removed from VM after install. [GH-1338]
  2016  * builder/parallels/all: Add support for Parallels Desktop 10. [GH-1438]
  2017  * builder/parallels/all: Added some navigation keys. [GH-1442]
  2018  * builder/qemu: If headless, sdl display won't be used. [GH-1395]
  2019  * builder/qemu: Use `512M` as `-m` default. [GH-1444]
  2020  * builder/virtualbox/all: Search `VBOX_MSI_INSTALL_PATH` for path to
  2021      `VBoxManage` on Windows. [GH-1337]
  2022  * builder/virtualbox/all: Seed RNG to avoid same ports. [GH-1386]
  2023  * builder/virtualbox/all: Better error if guest additions URL couldn't be
  2024      detected. [GH-1439]
  2025  * builder/virtualbox/all: Detect errors even when `VBoxManage` exits
  2026      with a zero exit code. [GH-1119]
  2027  * builder/virtualbox/iso: Append timestamp to default name for parallel
  2028      builds. [GH-1365]
  2029  * builder/vmware/all: No more error when Packer stops an already-stopped
  2030      VM. [GH-1300]
  2031  * builder/vmware/all: `ssh_host` accepts templates. [GH-1396]
  2032  * builder/vmware/all: Don't remount floppy in VMX post step. [GH-1239]
  2033  * builder/vmware/vmx: Do not re-add floppy disk files to VMX. [GH-1361]
  2034  * builder/vmware-iso: Fix crash when `vnc_port_min` and max were the
  2035      same value. [GH-1288]
  2036  * builder/vmware-iso: Finding an available VNC port on Windows works. [GH-1372]
  2037  * builder/vmware-vmx: Nice error if Clone is not supported (not VMware
  2038      Fusion Pro). [GH-787]
  2039  * post-processor/vagrant: Can supply your own metadata.json. [GH-1143]
  2040  * provisioner/ansible-local: Use proper path on Windows. [GH-1375]
  2041  * provisioner/file: Mode will now be preserved. [GH-1064]
  2042  
  2043  ## 0.6.1 (July 20, 2014)
  2044  
  2045  ### FEATURES:
  2046  
  2047  * **New post processor:** `vagrant-cloud` - Push box files generated by
  2048      vagrant post processor to Vagrant Cloud. [GH-1289]
  2049  * Vagrant post-processor can now packer Hyper-V boxes.
  2050  
  2051  ### IMPROVEMENTS:
  2052  
  2053  * builder/amazon: Support for enhanced networking on HVM images. [GH-1228]
  2054  * builder/amazon-ebs: Support encrypted EBS volumes. [GH-1194]
  2055  * builder/ansible: Add `playbook_dir` option. [GH-1000]
  2056  * builder/openstack: Add ability to configure networks. [GH-1261]
  2057  * builder/openstack: Skip certificate verification. [GH-1121]
  2058  * builder/parallels/all: Add ability to select interface to connect to.
  2059  * builder/parallels/pvm: Support `boot_command`. [GH-1082]
  2060  * builder/virtualbox/all: Attempt to use local guest additions ISO
  2061      before downloading from internet. [GH-1123]
  2062  * builder/virtualbox/ovf: Supports `guest_additions_mode` [GH-1035]
  2063  * builder/vmware/all: Increase cleanup timeout to 120 seconds. [GH-1167]
  2064  * builder/vmware/all: Add `vmx_data_post` for modifying VMX data
  2065      after shutdown. [GH-1149]
  2066  * builder/vmware/vmx: Supports tools uploading. [GH-1154]
  2067  
  2068  ### BUG FIXES:
  2069  
  2070  * core: `isotime` is the same time during the entire build. [GH-1153]
  2071  * builder/amazon-common: Sort AMI strings before outputting. [GH-1305]
  2072  * builder/amazon: User data can use templates/variables. [GH-1343]
  2073  * builder/amazon: Can now build AMIs in GovCloud.
  2074  * builder/null: SSH info can use templates/variables. [GH-1343]
  2075  * builder/openstack: Workaround for gophercloud.ServerById crashing. [GH-1257]
  2076  * builder/openstack: Force IPv4 addresses from address pools. [GH-1258]
  2077  * builder/parallels: Do not delete entire CDROM device. [GH-1115]
  2078  * builder/parallels: Errors while creating floppy disk. [GH-1225]
  2079  * builder/parallels: Errors while removing floppy drive. [GH-1226]
  2080  * builder/virtualbox-ovf: Supports guest additions options. [GH-1120]
  2081  * builder/vmware-iso: Fix esx5 path separator in windows. [GH-1316]
  2082  * builder/vmware: Remote ESXi builder now uploads floppy. [GH-1106]
  2083  * builder/vmware: Remote ESXi builder no longer re-uploads ISO every
  2084      time. [GH-1244]
  2085  * post-processor/vsphere: Accept DOMAIN\account usernames. [GH-1178]
  2086      * provisioner/chef-*: Fix remotePaths for Windows. [GH-394]
  2087  
  2088  ## 0.6.0 (May 2, 2014)
  2089  
  2090  ### FEATURES:
  2091  
  2092  * **New builder:** `null` - The null builder does not produce any
  2093      artifacts, but is useful for debugging provisioning scripts. [GH-970]
  2094  * **New builder:** `parallels-iso` and `parallels-pvm` - These can be
  2095      used to build Parallels virtual machines. [GH-1101]
  2096  * **New provisioner:** `chef-client` - Provision using a the `chef-client`
  2097      command, which talks to a Chef Server. [GH-855]
  2098  * **New provisioner:** `puppet-server` - Provision using Puppet by
  2099      communicating to a Puppet master. [GH-796]
  2100  * `min_packer_version` can be specified in a Packer template to force
  2101      a minimum version. [GH-487]
  2102  
  2103  ### IMPROVEMENTS:
  2104  
  2105  * core: RPC transport between plugins switched to MessagePack
  2106  * core: Templates array values can now be comma separated strings.
  2107      Most importantly, this allows for user variables to fill
  2108      array configurations. [GH-950]
  2109  * builder/amazon: Added `ssh_private_key_file` option. [GH-971]
  2110  * builder/amazon: Added `ami_virtualization_type` option. [GH-1021]
  2111  * builder/digitalocean: Regions, image names, and sizes can be
  2112      names that are looked up for their valid ID. [GH-960]
  2113  * builder/googlecompute: Configurable instance name. [GH-1065]
  2114  * builder/openstack: Support for conventional OpenStack environmental
  2115      variables such as `OS_USERNAME`, `OS_PASSWORD`, etc. [GH-768]
  2116  * builder/openstack: Support `openstack_provider` option to automatically
  2117      fill defaults for different OpenStack variants. [GH-912]
  2118  * builder/openstack: Support security groups. [GH-848]
  2119  * builder/qemu: User variable expansion in `ssh_key_path` [GH-918]
  2120  * builder/qemu: Floppy disk files list can also include globs
  2121      and directories. [GH-1086]
  2122  * builder/virtualbox: Support an `export_opts` option which allows
  2123      specifying arbitrary arguments when exporting the VM. [GH-945]
  2124  * builder/virtualbox: Added `vboxmanage_post` option to run vboxmanage
  2125      commands just before exporting. [GH-664]
  2126  * builder/virtualbox: Floppy disk files list can also include globs
  2127      and directories. [GH-1086]
  2128  * builder/vmware: Workstation 10 support for Linux. [GH-900]
  2129  * builder/vmware: add cloning support on Windows. [GH-824]
  2130  * builder/vmware: Floppy disk files list can also include globs
  2131      and directories. [GH-1086]
  2132  * command/build: Added `-parallel` flag so you can disable parallelization
  2133      with `-no-parallel`. [GH-924]
  2134  * post-processors/vsphere: `disk_mode` option. [GH-778]
  2135  * provisioner/ansible: Add `inventory_file` option. [GH-1006]
  2136  * provisioner/chef-client: Add `validation_client_name` option. [GH-1056]
  2137  
  2138  ### BUG FIXES:
  2139  
  2140  * core: Errors are properly shown when adding bad floppy files. [GH-1043]
  2141  * core: Fix some URL parsing issues on Windows.
  2142  * core: Create Cache directory only when it is needed. [GH-367]
  2143  * builder/amazon-instance: Use S3Endpoint for ec2-upload-bundle arg,
  2144      which works for every region. [GH-904]
  2145  * builder/digitalocean: updated default image_id. [GH-1032]
  2146  * builder/googlecompute: Create persistent disk as boot disk via
  2147      API v1. [GH-1001]
  2148  * builder/openstack: Return proper error on invalid instance states. [GH-1018]
  2149  * builder/virtualbox-iso: Retry unregister a few times to deal with
  2150      VBoxManage randomness. [GH-915]
  2151  * provisioner/ansible: Fix paths when provisioning Linux from
  2152      Windows. [GH-963]
  2153  * provisioner/ansible: set cwd to staging directory. [GH-1016]
  2154  * provisioners/chef-client: Don't chown directory with Ubuntu. [GH-939]
  2155  * provisioners/chef-solo: Deeply nested JSON works properly. [GH-1076]
  2156  * provisioners/shell: Env var values can have equal signs. [GH-1045]
  2157  * provisioners/shell: chmod the uploaded script file to 0777. [GH-994]
  2158  * post-processor/docker-push: Allow repositories with ports. [GH-923]
  2159  * post-processor/vagrant: Create parent directories for `output` path. [GH-1059]
  2160  * post-processor/vsphere: datastore, network, and folder are no longer
  2161      required. [GH-1091]
  2162  
  2163  ## 0.5.2 (02/21/2014)
  2164  
  2165  ### FEATURES:
  2166  
  2167  *  **New post-processor:** `docker-import` - Import a Docker image and give it
  2168      a specific repository/tag.
  2169  *  **New post-processor:** `docker-push` - Push an imported image to
  2170      a registry.
  2171  
  2172  ### IMPROVEMENTS:
  2173  
  2174  * core: Most downloads made by Packer now use a custom user agent. [GH-803]
  2175  * builder/googlecompute: SSH private key will be saved to disk if `-debug` is
  2176      specified. [GH-867]
  2177  * builder/qemu: Can specify the name of the qemu binary. [GH-854]
  2178  * builder/virtualbox-ovf: Can specify import options such as "keepallmacs".
  2179      [GH-883]
  2180  
  2181  ### BUG FIXES:
  2182  
  2183  * core: Fix crash case if blank parameters are given to Packer. [GH-832]
  2184  * core: Fix crash if big file uploads are done. [GH-897]
  2185  * core: Fix crash if machine-readable output is going to a closed
  2186      pipe. [GH-875]
  2187  * builder/docker: user variables work properly. [GH-777]
  2188  * builder/qemu: reboots are now possible in provisioners. [GH-864]
  2189  * builder/virtualbox,vmware: iso\_checksum is not required if the
  2190      checksum type is "none"
  2191  * builder/virtualbox,vmware/qemu: Support for additional scancodes for
  2192      `boot_command` such as `<up>`, `<left>`, `<insert>`, etc. [GH-808]
  2193  * communicator/ssh: Send TCP keep-alives on connections. [GH-872]
  2194  * post-processor/vagrant: AWS/DigitalOcean keep input artifacts by
  2195      default. [GH-55]
  2196  * provisioners/ansible-local: Properly upload custom playbooks. [GH-829]
  2197  * provisioners/ansible-local: Better error if ansible isn't installed.
  2198      [GH-836]
  2199  
  2200  ## 0.5.1 (01/02/2014)
  2201  
  2202  ### BUG FIXES:
  2203  
  2204  * core: If a stream ID loops around, don't let it use stream ID 0. [GH-767]
  2205  * core: Fix issue where large writes to plugins would result in stream
  2206      corruption. [GH-727]
  2207  * builders/virtualbox-ovf: `shutdown_timeout` config works. [GH-772]
  2208  * builders/vmware-iso: Remote driver works properly again. [GH-773]
  2209  
  2210  ## 0.5.0 (12/30/2013)
  2211  
  2212  ### BACKWARDS INCOMPATIBILITIES:
  2213  
  2214  * "virtualbox" builder has been renamed to "virtualbox-iso". Running your
  2215      template through `packer fix` will resolve this.
  2216  * "vmware" builder has been renamed to "vmware-iso". Running your template
  2217      through `packer fix` will resolve this.
  2218  * post-processor/vagrant: Syntax for overriding by provider has changed.
  2219      See the documentation for more information. Running your template
  2220      through `packer fix` should resolve this.
  2221  * post-processor/vsphere: Some available configuration options were
  2222      changed. Running your template through `packer fix` should resolve
  2223      this.
  2224  * provisioner/puppet-masterless: The `execute_command` no longer has
  2225      the `Has*` variables, since the templating language now supports
  2226      comparison operations. See the Go documentation for more info:
  2227      http://golang.org/pkg/text/template/
  2228  
  2229  ### FEATURES:
  2230  
  2231  * **New builder:** Google Compute Engine. You can now build images for
  2232      use in Google Compute Engine. See the documentation for more information.
  2233      [GH-715]
  2234  * **New builder:** "virtualbox-ovf" can build VirtualBox images from
  2235      an existing OVF or OVA. [GH-201]
  2236  * **New builder:** "vmware-vmx" can build VMware images from an existing
  2237      VMX. [GH-201]
  2238  * Environmental variables can now be accessed as default values for
  2239      user variables using the "env" function. See the documentation for more
  2240      information.
  2241  * "description" field in templates: write a human-readable description
  2242      of what a template does. This will be shown in `packer inspect`.
  2243  * Vagrant post-processor now accepts a list of files to include in the
  2244      box.
  2245  * All provisioners can now have a "pause\_before" parameter to wait
  2246      some period of time before running that provisioner. This is useful
  2247      for reboots. [GH-737]
  2248  
  2249  ### IMPROVEMENTS:
  2250  
  2251  * core: Plugins communicate over a single TCP connection per plugin now,
  2252      instead of sometimes dozens. Performance around plugin communication
  2253      dramatically increased.
  2254  * core: Build names are now template processed so you can use things
  2255      like user variables in them. [GH-744]
  2256  * core: New "pwd" function available globally that returns the working
  2257      directory. [GH-762]
  2258  * builder/amazon/all: Launched EC2 instances now have a name of
  2259      "Packer Builder" so that they are easily recognizable. [GH-642]
  2260  * builder/amazon/all: Copying AMIs to multiple regions now happens
  2261      in parallel. [GH-495]
  2262  * builder/amazon/all: Ability to specify "run\_tags" to tag the instance
  2263      while running. [GH-722]
  2264  * builder/digitalocean: Private networking support. [GH-698]
  2265  * builder/docker: A "run\_command" can be specified, configuring how
  2266      the container is started. [GH-648]
  2267  * builder/openstack: In debug mode, the generated SSH keypair is saved
  2268      so you can SSH into the machine. [GH-746]
  2269  * builder/qemu: Floppy files are supported. [GH-686]
  2270  * builder/qemu: Next `run_once` option tells Qemu to run only once,
  2271      which is useful for Windows installs that handle reboots for you.
  2272      [GH-687]
  2273  * builder/virtualbox: Nice errors if Packer can't write to
  2274      the output directory.
  2275  * builder/virtualbox: ISO is ejected prior to export.
  2276  * builder/virtualbox: Checksum type can be "none" [GH-471]
  2277  * builder/vmware: Can now specify path to the Fusion application. [GH-677]
  2278  * builder/vmware: Checksum type can be "none" [GH-471]
  2279  * provisioner/puppet-masterless: Can now specify a `manifest_dir` to
  2280      upload manifests to the remote machine for imports. [GH-655]
  2281  
  2282  ### BUG FIXES:
  2283  
  2284  * core: No colored output in machine-readable output. [GH-684]
  2285  * core: User variables can now be used for non-string fields. [GH-598]
  2286  * core: Fix bad download paths if the download URL contained a "."
  2287      before a "/" [GH-716]
  2288  * core: "{{timestamp}}" values will always be the same for the entire
  2289      duration of a build. [GH-744]
  2290  * builder/amazon: Handle cases where security group isn't instantly
  2291      available. [GH-494]
  2292  * builder/virtualbox: don't download guest additions if disabled. [GH-731]
  2293  * post-processor/vsphere: Uploads VM properly. [GH-694]
  2294  * post-processor/vsphere: Process user variables.
  2295  * provisioner/ansible-local: all configurations are processed as templates
  2296      [GH-749]
  2297  * provisioner/ansible-local: playbook paths are properly validated
  2298      as directories, not files. [GH-710]
  2299  * provisioner/chef-solo: Environments are recognized. [GH-726]
  2300  
  2301  ## 0.4.1 (December 7, 2013)
  2302  
  2303  ### IMPROVEMENTS:
  2304  
  2305  * builder/amazon/ebs: New option allows associating a public IP with
  2306      non-default VPC instances. [GH-660]
  2307  * builder/openstack: A "proxy\_url" setting was added to define an HTTP
  2308      proxy to use when building with this builder. [GH-637]
  2309  
  2310  ### BUG FIXES:
  2311  
  2312  * core: Don't change background color on CLI anymore, making things look
  2313      a tad nicer in some terminals.
  2314  * core: multiple ISO URLs works properly in all builders. [GH-683]
  2315  * builder/amazon/chroot: Block when obtaining file lock to allow
  2316      parallel builds. [GH-689]
  2317  * builder/amazon/instance: Add location flag to upload bundle command
  2318      so that building AMIs works out of us-east-1. [GH-679]
  2319  * builder/qemu: Qemu arguments are templated. [GH-688]
  2320  * builder/vmware: Cleanup of VMX keys works properly so cd-rom won't
  2321      get stuck with ISO. [GH-685]
  2322  * builder/vmware: File cleanup is more resilient to file delete races
  2323      with the operating system. [GH-675]
  2324  * provisioner/puppet-masterless: Check for hiera config path existence
  2325      properly. [GH-656]
  2326  
  2327  ## 0.4.0 (November 19, 2013)
  2328  
  2329  ### FEATURES:
  2330  
  2331  * Docker builder: build and export Docker containers, easily provisioned
  2332      with any of the Packer built-in provisioners.
  2333  * QEMU builder: builds a new VM compatible with KVM or Xen using QEMU.
  2334  * Remote ESXi builder: builds a VMware VM using ESXi remotely using only
  2335      SSH to an ESXi machine directly.
  2336  * vSphere post-processor: Can upload VMware artifacts to vSphere
  2337  * Vagrant post-processor can now make DigitalOcean provider boxes. [GH-504]
  2338  
  2339  ### IMPROVEMENTS:
  2340  
  2341  * builder/amazon/all: Can now specify a list of multiple security group
  2342      IDs to apply. [GH-499]
  2343  * builder/amazon/all: AWS API requests are now retried when a temporary
  2344      network error occurs as well as 500 errors. [GH-559]
  2345  * builder/virtualbox: Use VBOX\_INSTALL\_PATH env var on Windows to find
  2346      VBoxManage. [GH-628]
  2347  * post-processor/vagrant: skips gzip compression when compression_level=0
  2348  * provisioner/chef-solo: Encrypted data bag support. [GH-625]
  2349  
  2350  ### BUG FIXES:
  2351  
  2352  * builder/amazon/chroot: Copying empty directories works. [GH-588]
  2353  * builder/amazon/chroot: Chroot commands work with shell provisioners. [GH-581]
  2354  * builder/amazon/chroot: Don't choose a mount point that is a partition of
  2355      an already mounted device. [GH-635]
  2356  * builder/virtualbox: Ctrl-C interrupts during waiting for boot. [GH-618]
  2357  * builder/vmware: VMX modifications are now case-insensitive. [GH-608]
  2358  * builder/vmware: VMware Fusion won't ask for VM upgrade.
  2359  * builder/vmware: Ctrl-C interrupts during waiting for boot. [GH-618]
  2360  * provisioner/chef-solo: Output is slightly prettier and more informative.
  2361  
  2362  ## 0.3.11 (November 4, 2013)
  2363  
  2364  ### FEATURES:
  2365  
  2366  * builder/amazon/ebs: Ability to specify which availability zone to create
  2367      instance in. [GH-536]
  2368  
  2369  ### IMPROVEMENTS:
  2370  
  2371  * core: builders can now give warnings during validation. warnings won't
  2372      fail the build but may hint at potential future problems.
  2373  * builder/digitalocean: Can now specify a droplet name
  2374  * builder/virtualbox: Can now disable guest addition download entirely
  2375      by setting "guest_additions_mode" to "disable" [GH-580]
  2376  * builder/virtualbox,vmware: ISO urls can now be https. [GH-587]
  2377  * builder/virtualbox,vmware: Warning if shutdown command is not specified,
  2378      since it is a common case of data loss.
  2379  
  2380  ### BUG FIXES:
  2381  
  2382  * core: Won't panic when writing to a bad pipe. [GH-560]
  2383  * builder/amazon/all: Properly scrub access key and secret key from logs.
  2384      [GH-554]
  2385  * builder/openstack: Properly scrub password from logs. [GH-554]
  2386  * builder/virtualbox: No panic if SSH host port min/max is the same. [GH-594]
  2387  * builder/vmware: checks if `ifconfig` is in `/sbin` [GH-591]
  2388  * builder/vmware: Host IP lookup works for non-C locales. [GH-592]
  2389  * common/uuid: Use cryptographically secure PRNG when generating
  2390      UUIDs. [GH-552]
  2391  * communicator/ssh: File uploads that exceed the size of memory no longer
  2392      cause crashes. [GH-561]
  2393  
  2394  ## 0.3.10 (October 20, 2013)
  2395  
  2396  ### FEATURES:
  2397  
  2398  * Ansible provisioner
  2399  
  2400  ### IMPROVEMENTS:
  2401  
  2402  * post-processor/vagrant: support instance-store AMIs built by Packer. [GH-502]
  2403  * post-processor/vagrant: can now specify compression level to use
  2404      when creating the box. [GH-506]
  2405  
  2406  ### BUG FIXES:
  2407  
  2408  * builder/all: timeout waiting for SSH connection is a failure. [GH-491]
  2409  * builder/amazon: Scrub sensitive data from the logs. [GH-521]
  2410  * builder/amazon: Handle the situation where an EC2 instance might not
  2411      be immediately available. [GH-522]
  2412  * builder/amazon/chroot: Files copied into the chroot remove destination
  2413      before copy, fixing issues with dangling symlinks. [GH-500]
  2414  * builder/digitalocean: don't panic if erroneous API response doesn't
  2415      contain error message. [GH-492]
  2416  * builder/digitalocean: scrub API keys from config debug output. [GH-516]
  2417  * builder/virtualbox: error if VirtualBox version cant be detected. [GH-488]
  2418  * builder/virtualbox: detect if vboxdrv isn't properly setup. [GH-488]
  2419  * builder/virtualbox: sleep a bit before export to ensure the session
  2420      is unlocked. [GH-512]
  2421  * builder/virtualbox: create SATA drives properly on VirtualBox 4.3. [GH-547]
  2422  * builder/virtualbox: support user templates in SSH key path. [GH-539]
  2423  * builder/vmware: support user templates in SSH key path. [GH-539]
  2424  * communicator/ssh: Fix issue where a panic could arise from a nil
  2425      dereference. [GH-525]
  2426  * post-processor/vagrant: Fix issue with VirtualBox OVA. [GH-548]
  2427  * provisioner/salt: Move salt states to correct remote directory. [GH-513]
  2428  * provisioner/shell: Won't block on certain scripts on Windows anymore.
  2429      [GH-507]
  2430  
  2431  ## 0.3.9 (October 2, 2013)
  2432  
  2433  ### FEATURES:
  2434  
  2435  * The Amazon chroot builder is now able to run without any `sudo` privileges
  2436      by using the "command_wrapper" configuration. [GH-430]
  2437  * Chef provisioner supports environments. [GH-483]
  2438  
  2439  ### BUG FIXES:
  2440  
  2441  * core: default user variable values don't need to be strings. [GH-456]
  2442  * builder/amazon-chroot: Fix errors with waitin for state change. [GH-459]
  2443  * builder/digitalocean: Use proper error message JSON key (DO API change).
  2444  * communicator/ssh: SCP uploads now work properly when directories
  2445      contain symlinks. [GH-449]
  2446  * provisioner/chef-solo: Data bags and roles path are now properly
  2447      populated when set. [GH-470]
  2448  * provisioner/shell: Windows line endings are actually properly changed
  2449      to Unix line endings. [GH-477]
  2450  
  2451  ## 0.3.8 (September 22, 2013)
  2452  
  2453  ### FEATURES:
  2454  
  2455  * core: You can now specify `only` and `except` configurations on any
  2456      provisioner or post-processor to specify a list of builds that they
  2457      are valid for. [GH-438]
  2458  * builders/virtualbox: Guest additions can be attached rather than uploaded,
  2459      easier to handle for Windows guests. [GH-405]
  2460  * provisioner/chef-solo: Ability to specify a custom Chef configuration
  2461      template.
  2462  * provisioner/chef-solo: Roles and data bags support. [GH-348]
  2463  
  2464  ### IMPROVEMENTS:
  2465  
  2466  * core: User variables can now be used for integer, boolean, etc.
  2467      values. [GH-418]
  2468  * core: Plugins made with incompatible versions will no longer load.
  2469  * builder/amazon/all: Interrupts work while waiting for AMI to be ready.
  2470  * provisioner/shell: Script line-endings are automatically converted to
  2471      Unix-style line-endings. Can be disabled by setting "binary" to "true".
  2472      [GH-277]
  2473  
  2474  ### BUG FIXES:
  2475  
  2476  * core: Set TCP KeepAlives on internally created RPC connections so that
  2477      they don't die. [GH-416]
  2478  * builder/amazon/all: While waiting for AMI, will detect "failed" state.
  2479  * builder/amazon/all: Waiting for state will detect if the resource (AMI,
  2480      instance, etc.) disappears from under it.
  2481  * builder/amazon/instance: Exclude only contents of /tmp, not /tmp
  2482      itself. [GH-437]
  2483  * builder/amazon/instance: Make AccessKey/SecretKey available to bundle
  2484      command even when they come from the environment. [GH-434]
  2485  * builder/virtualbox: F1-F12 and delete scancodes now work. [GH-425]
  2486  * post-processor/vagrant: Override configurations properly work. [GH-426]
  2487  * provisioner/puppet-masterless: Fix failure case when both facter vars
  2488      are used and prevent_sudo. [GH-415]
  2489  * provisioner/puppet-masterless: User variables now work properly in
  2490      manifest file and hiera path. [GH-448]
  2491  
  2492  ## 0.3.7 (September 9, 2013)
  2493  
  2494  ### BACKWARDS INCOMPATIBILITIES:
  2495  
  2496  * The "event_delay" option for the DigitalOcean builder is now gone.
  2497      The builder automatically waits for events to go away. Run your templates
  2498      through `packer fix` to get rid of these.
  2499  
  2500  ### FEATURES:
  2501  
  2502  * **NEW PROVISIONER:** `puppet-masterless`. You can now provision with
  2503      a masterless Puppet setup. [GH-234]
  2504  * New globally available template function: `uuid`. Generates a new random
  2505      UUID.
  2506  * New globally available template function: `isotime`. Generates the
  2507      current time in ISO standard format.
  2508  * New Amazon template function: `clean_ami_name`. Substitutes '-' for
  2509      characters that are illegal to use in an AMI name.
  2510  
  2511  ### IMPROVEMENTS:
  2512  
  2513  * builder/amazon/all: Ability to specify the format of the temporary
  2514      keypair created. [GH-389]
  2515  * builder/amazon/all: Support the NoDevice flag for block mappings. [GH-396]
  2516  * builder/digitalocean: Retry on any pending event errors.
  2517  * builder/openstack: Can now specify a project. [GH-382]
  2518  * builder/virtualbox: Can now attach hard drive over SATA. [GH-391]
  2519  * provisioner/file: Can now upload directories. [GH-251]
  2520  
  2521  ### BUG FIXES:
  2522  
  2523  * core: Detect if SCP is not enabled on the other side. [GH-386]
  2524  * builder/amazon/all: When copying AMI to multiple regions, copy
  2525      the metadata (tags and attributes) as well. [GH-388]
  2526  * builder/amazon/all: Fix panic case where eventually consistent
  2527      instance state caused an index out of bounds.
  2528  * builder/virtualbox: The `vm_name` setting now properly sets the OVF
  2529      name of the output. [GH-401]
  2530  * builder/vmware: Autoanswer VMware dialogs. [GH-393]
  2531  * command/inspect: Fix weird output for default values for optional vars.
  2532  
  2533  ## 0.3.6 (September 2, 2013)
  2534  
  2535  ### FEATURES:
  2536  
  2537  * User variables can now be specified as "required", meaning the user
  2538      MUST specify a value. Just set the default value to "null". [GH-374]
  2539  
  2540  ### IMPROVEMENTS:
  2541  
  2542  * core: Much improved interrupt handling. For example, interrupts now
  2543      cancel much more quickly within provisioners.
  2544  * builder/amazon: In `-debug` mode, the keypair used will be saved to
  2545      the current directory so you can access the machine. [GH-373]
  2546  * builder/amazon: In `-debug` mode, the DNS is outputted.
  2547  * builder/openstack: IPv6 addresses supported for SSH. [GH-379]
  2548  * communicator/ssh: Support for private keys encrypted using PKCS8. [GH-376]
  2549  * provisioner/chef-solo: You can now use user variables in the `json`
  2550      configuration for Chef. [GH-362]
  2551  
  2552  ### BUG FIXES:
  2553  
  2554  * core: Concurrent map access is completely gone, fixing rare issues
  2555      with runtime memory corruption. [GH-307]
  2556  * core: Fix possible panic when ctrl-C during provisioner run.
  2557  * builder/digitalocean: Retry destroy a few times because DO sometimes
  2558      gives false errors.
  2559  * builder/openstack: Properly handle the case no image is made. [GH-375]
  2560  * builder/openstack: Specifying a region is now required in a template.
  2561  * provisioners/salt-masterless: Use filepath join to properly join paths.
  2562  
  2563  ## 0.3.5 (August 28, 2013)
  2564  
  2565  ### FEATURES:
  2566  
  2567  * **NEW BUILDER:** `openstack`. You can now build on OpenStack. [GH-155]
  2568  * **NEW PROVISIONER:** `chef-solo`. You can now provision with Chef
  2569      using `chef-solo` from local cookbooks.
  2570  * builder/amazon: Copy AMI to multiple regions with `ami_regions`. [GH-322]
  2571  * builder/virtualbox,vmware: Can now use SSH keys as an auth mechanism for
  2572      SSH using `ssh_key_path`. [GH-70]
  2573  * builder/virtualbox,vmware: Support SHA512 as a checksum type. [GH-356]
  2574  * builder/vmware: The root hard drive type can now be specified with
  2575      "disk_type_id" for advanced users. [GH-328]
  2576  * provisioner/salt-masterless: Ability to specify a minion config. [GH-264]
  2577  * provisioner/salt-masterless: Ability to upload pillars. [GH-353]
  2578  
  2579  ### IMPROVEMENTS:
  2580  
  2581  * core: Output message when Ctrl-C received that we're cleaning up. [GH-338]
  2582  * builder/amazon: Tagging now works with all amazon builder types.
  2583  * builder/vmware: Option `ssh_skip_request_pty` for not requesting a PTY
  2584      for the SSH connection. [GH-270]
  2585  * builder/vmware: Specify a `vmx_template_path` in order to customize
  2586      the generated VMX. [GH-270]
  2587  * command/build: Machine-readable output now contains build errors, if any.
  2588  * command/build: An "end" sentinel is outputted in machine-readable output
  2589      for artifact listing so it is easier to know when it is over.
  2590  
  2591  ### BUG FIXES:
  2592  
  2593  * core: Fixed a couple cases where a double ctrl-C could panic.
  2594  * core: Template validation fails if an override is specified for a
  2595      non-existent builder. [GH-336]
  2596  * core: The SSH connection is heartbeated so that drops can be
  2597      detected. [GH-200]
  2598  * builder/amazon/instance: Remove check for ec2-ami-tools because it
  2599      didn't allow absolute paths to work properly. [GH-330]
  2600  * builder/digitalocean: Send a soft shutdown request so that files
  2601      are properly synced before shutdown. [GH-332]
  2602  * command/build,command/validate: If a non-existent build is specified to
  2603      '-only' or '-except', it is now an error. [GH-326]
  2604  * post-processor/vagrant: Setting OutputPath with a timestamp now
  2605      always works properly. [GH-324]
  2606  * post-processor/vagrant: VirtualBox OVA formats now turn into
  2607      Vagrant boxes properly. [GH-331]
  2608  * provisioner/shell: Retry upload if start command fails, making reboot
  2609      handling much more robust.
  2610  
  2611  ## 0.3.4 (August 21, 2013)
  2612  
  2613  ### IMPROVEMENTS:
  2614  
  2615  * post-processor/vagrant: the file being compressed will be shown
  2616      in the UI. [GH-314]
  2617  
  2618  ### BUG FIXES:
  2619  
  2620  * core: Avoid panics when double-interrupting Packer.
  2621  * provisioner/shell: Retry shell script uploads, making reboots more
  2622      robust if they happen to fail in this stage. [GH-282]
  2623  
  2624  ## 0.3.3 (August 19, 2013)
  2625  
  2626  ### FEATURES:
  2627  
  2628  * builder/virtualbox: support exporting in OVA format. [GH-309]
  2629  
  2630  ### IMPROVEMENTS:
  2631  
  2632  * core: All HTTP downloads across Packer now support the standard
  2633      proxy environmental variables (`HTTP_PROXY`, `NO_PROXY`, etc.) [GH-252]
  2634  * builder/amazon: API requests will use HTTP proxy if specified by
  2635      environmental variables.
  2636  * builder/digitalocean: API requests will use HTTP proxy if specified
  2637      by environmental variables.
  2638  
  2639  ### BUG FIXES:
  2640  
  2641  * core: TCP connection between plugin processes will keep-alive. [GH-312]
  2642  * core: No more "unused key keep_input_artifact" for post processors. [GH-310]
  2643  * post-processor/vagrant: `output_path` templates now work again.
  2644  
  2645  ## 0.3.2 (August 18, 2013)
  2646  
  2647  ### FEATURES:
  2648  
  2649  * New command: `packer inspect`. This command tells you the components of
  2650      a template. It respects the `-machine-readable` flag as well so you can
  2651      parse out components of a template.
  2652  * Packer will detect its own crashes (always a bug) and save a "crash.log"
  2653      file.
  2654  * builder/virtualbox: You may now specify multiple URLs for an ISO
  2655      using "iso_url" in a template. The URLs will be tried in order.
  2656  * builder/vmware: You may now specify multiple URLs for an ISO
  2657      using "iso_url" in a template. The URLs will be tried in order.
  2658  
  2659  ### IMPROVEMENTS:
  2660  
  2661  * core: built with Go 1.1.2
  2662  * core: packer help output now loads much faster.
  2663  * builder/virtualbox: guest_additions_url can now use the `Version`
  2664      variable to get the VirtualBox version. [GH-272]
  2665  * builder/virtualbox: Do not check for VirtualBox as part of template
  2666      validation; only check at execution.
  2667  * builder/vmware: Do not check for VMware as part of template validation;
  2668      only check at execution.
  2669  * command/build: A path of "-" will read the template from stdin.
  2670  * builder/amazon: add block device mappings. [GH-90]
  2671  
  2672  ### BUG FIXES:
  2673  
  2674  * windows: file URLs are easier to get right as Packer
  2675      has better parsing and error handling for Windows file paths. [GH-284]
  2676  * builder/amazon/all: Modifying more than one AMI attribute type no longer
  2677      crashes.
  2678  * builder/amazon-instance: send IAM instance profile data. [GH-294]
  2679  * builder/digitalocean: API request parameters are properly URL
  2680      encoded. [GH-281]
  2681  * builder/virtualbox: download progress won't be shown until download
  2682      actually starts. [GH-288]
  2683  * builder/virtualbox: floppy files names of 13 characters are now properly
  2684      written to the FAT12 filesystem. [GH-285]
  2685  * builder/vmware: download progress won't be shown until download
  2686      actually starts. [GH-288]
  2687  * builder/vmware: interrupt works while typing commands over VNC.
  2688  * builder/virtualbox: floppy files names of 13 characters are now properly
  2689      written to the FAT12 filesystem. [GH-285]
  2690  * post-processor/vagrant: Process user variables. [GH-295]
  2691  
  2692  ## 0.3.1 (August 12, 2013)
  2693  
  2694  ### IMPROVEMENTS:
  2695  
  2696  * provisioner/shell: New setting `start_retry_timeout` which is the timeout
  2697      for the provisioner to attempt to _start_ the remote process. This allows
  2698      the shell provisioner to work properly with reboots. [GH-260]
  2699  
  2700  ### BUG FIXES:
  2701  
  2702  * core: Remote command output containing '\r' now looks much better
  2703      within the Packer output.
  2704  * builder/vmware: Fix issue with finding driver files. [GH-279]
  2705  * provisioner/salt-masterless: Uploads work properly from Windows. [GH-276]
  2706  
  2707  ## 0.3.0 (August 12, 2013)
  2708  
  2709  ### BACKWARDS INCOMPATIBILITIES:
  2710  
  2711  * All `{{.CreateTime}}` variables within templates (such as for AMI names)
  2712      are now replaced with `{{timestamp}}`. Run `packer fix` to fix your
  2713      templates.
  2714  
  2715  ### FEATURES:
  2716  
  2717  * **User Variables** allow you to specify variables within your templates
  2718      that can be replaced using the command-line, files, or environmental
  2719      variables. This dramatically improves the portability of packer templates.
  2720      See the documentation for more information.
  2721  * **Machine-readable output** can be enabled by passing the
  2722      `-machine-readable` flag to _any_ Packer command.
  2723  * All strings in a template are now processed for variables/functions,
  2724      so things like `{{timestamp}}` can be used everywhere. More features will
  2725      be added in the future.
  2726  * The `amazon` builders (all of them) can now have attributes of their
  2727      resulting AMIs modified, such as access permissions and product codes.
  2728  
  2729  ### IMPROVEMENTS:
  2730  
  2731  * builder/amazon/all: User data can be passed to start the instances. [GH-253]
  2732  * provisioner/salt-masterless: `local_state_tree` is no longer required,
  2733      allowing you to use shell provisioner (or others) to bring this down.
  2734      [GH-269]
  2735  
  2736  ### BUG FIXES:
  2737  
  2738  * builder/amazon/ebs,instance: Retry deleing security group a few times.
  2739      [GH-278]
  2740  * builder/vmware: Workstation works on Windows XP now. [GH-238]
  2741  * builder/vmware: Look for files on Windows in multiple locations
  2742      using multiple environmental variables. [GH-263]
  2743  * provisioner/salt-masterless: states aren't deleted after the run
  2744      anymore. [GH-265]
  2745  * provisioner/salt-masterless: error if any commands exit with a non-zero
  2746      exit status. [GH-266]
  2747  
  2748  ## 0.2.3 (August 7, 2013)
  2749  
  2750  ### IMPROVEMENTS:
  2751  
  2752  * builder/amazon/all: Added Amazon AMI tag support. [GH-233]
  2753  
  2754  ### BUG FIXES:
  2755  
  2756  * core: Absolute/relative filepaths on Windows now work for iso_url
  2757      and other settings. [GH-240]
  2758  * builder/amazon/all: instance info is refreshed while waiting for SSH,
  2759      allowing Packer to see updated IP/DNS info. [GH-243]
  2760  
  2761  ## 0.2.2 (August 1, 2013)
  2762  
  2763  ### FEATURES:
  2764  
  2765  * New builder: `amazon-chroot` can create EBS-backed AMIs without launching
  2766      a new EC2 instance. This can shave minutes off of the AMI creation process.
  2767      See the docs for more info.
  2768  * New provisioner: `salt-masterless` will provision the node using Salt
  2769      without a master.
  2770  * The `vmware` builder now works with Workstation 9 on Windows. [GH-222]
  2771  * The `vmware` builder now works with Player 5 on Linux. [GH-190]
  2772  
  2773  ### IMPROVEMENTS:
  2774  
  2775  * core: Colors won't be outputted on Windows unless in Cygwin.
  2776  * builder/amazon/all: Added `iam_instance_profile` to launch the source
  2777      image with a given IAM profile. [GH-226]
  2778  
  2779  ### BUG FIXES:
  2780  
  2781  * builder/virtualbox,vmware: relative paths work properly as URL
  2782      configurations. [GH-215]
  2783  * builder/virtualbox,vmware: fix race condition in deleting the output
  2784      directory on Windows by retrying.
  2785  
  2786  ## 0.2.1 (July 26, 2013)
  2787  
  2788  ### FEATURES:
  2789  
  2790  * New builder: `amazon-instance` can create instance-storage backed
  2791      AMIs.
  2792  * VMware builder now works with Workstation 9 on Linux.
  2793  
  2794  ### IMPROVEMENTS:
  2795  
  2796  * builder/amazon/all: Ctrl-C while waiting for state change works
  2797  * builder/amazon/ebs: Can now launch instances into a VPC for added protection. [GH-210]
  2798  * builder/virtualbox,vmware: Add backspace, delete, and F1-F12 keys to the boot
  2799      command.
  2800  * builder/virtualbox: massive performance improvements with big ISO files because
  2801      an expensive copy is avoided. [GH-202]
  2802  * builder/vmware: CD is removed prior to exporting final machine. [GH-198]
  2803  
  2804  ### BUG FIXES:
  2805  
  2806  * builder/amazon/all: Gracefully handle when AMI appears to not exist
  2807      while AWS state is propagating. [GH-207]
  2808  * builder/virtualbox: Trim carriage returns for Windows to properly
  2809      detect VM state on Windows. [GH-218]
  2810  * core: build names no longer cause invalid config errors. [GH-197]
  2811  * command/build: If any builds fail, exit with non-zero exit status.
  2812  * communicator/ssh: SCP exit codes are tested and errors are reported. [GH-195]
  2813  * communicator/ssh: Properly change slash direction for Windows hosts. [GH-218]
  2814  
  2815  ## 0.2.0 (July 16, 2013)
  2816  
  2817  ### BACKWARDS INCOMPATIBILITIES:
  2818  
  2819  * "iso_md5" in the virtualbox and vmware builders is replaced with
  2820      "iso_checksum" and "iso_checksum_type" (with the latter set to "md5").
  2821      See the announce below on `packer fix` to automatically fix your templates.
  2822  
  2823  ### FEATURES:
  2824  
  2825  * **NEW COMMAND:** `packer fix` will attempt to fix templates from older
  2826      versions of Packer that are now broken due to backwards incompatibilities.
  2827      This command will fix the backwards incompatibilities introduced in this
  2828      version.
  2829  * Amazon EBS builder can now optionally use a pre-made security group
  2830      instead of randomly generating one.
  2831  * DigitalOcean API key and client IDs can now be passed in as
  2832      environmental variables. See the documentation for more details.
  2833  * VirtualBox and VMware can now have `floppy_files` specified to attach
  2834      floppy disks when booting. This allows for unattended Windows installs.
  2835  * `packer build` has a new `-force` flag that forces the removal of
  2836      existing artifacts if they exist. [GH-173]
  2837  * You can now log to a file (instead of just stderr) by setting the
  2838      `PACKER_LOG_FILE` environmental variable. [GH-168]
  2839  * Checksums other than MD5 can now be used. SHA1 and SHA256 can also
  2840      be used. See the documentation on `iso_checksum_type` for more info. [GH-175]
  2841  
  2842  ### IMPROVEMENTS:
  2843  
  2844  * core: invalid keys in configuration are now considered validation
  2845      errors. [GH-104]
  2846  * core: all builders now share a common SSH connection core, improving
  2847      SSH reliability over all the builders.
  2848  * amazon-ebs: Credentials will come from IAM role if available. [GH-160]
  2849  * amazon-ebs: Verify the source AMI is EBS-backed before launching. [GH-169]
  2850  * shell provisioner: the build name and builder type are available in
  2851      the `PACKER_BUILD_NAME` and `PACKER_BUILDER_TYPE` env vars by default,
  2852      respectively. [GH-154]
  2853  * vmware: error if shutdown command has non-zero exit status.
  2854  
  2855  ### BUG FIXES:
  2856  
  2857  * core: UI messages are now properly prefixed with spaces again.
  2858  * core: If SSH connection ends, re-connection attempts will take
  2859      place. [GH-152]
  2860  * virtualbox: "paused" doesn't mean the VM is stopped, improving
  2861      shutdown detection.
  2862  * vmware: error if guest IP could not be detected. [GH-189]
  2863  
  2864  ## 0.1.5 (July 7, 2013)
  2865  
  2866  ### FEATURES:
  2867  
  2868  * "file" uploader will upload files from the machine running Packer to the
  2869      remote machine.
  2870  * VirtualBox guest additions URL and checksum can now be specified, allowing
  2871      the VirtualBox builder to have the ability to be used completely offline.
  2872  
  2873  ### IMPROVEMENTS:
  2874  
  2875  * core: If SCP is not available, a more descriptive error message
  2876      is shown telling the user. [GH-127]
  2877  * shell: Scripts are now executed by default according to their shebang,
  2878      not with `/bin/sh`. [GH-105]
  2879  * shell: You can specify what interpreter you want inline scripts to
  2880      run with `inline_shebang`.
  2881  * virtualbox: Delete the packer-made SSH port forwarding prior to
  2882      exporting the VM.
  2883  
  2884  ### BUG FIXES:
  2885  
  2886  * core: Non-200 response codes on downloads now show proper errors.
  2887      [GH-141]
  2888  * amazon-ebs: SSH handshake is retried. [GH-130]
  2889  * vagrant: The `BuildName` template property works properly in
  2890      the output path.
  2891  * vagrant: Properly configure the provider-specific post-processors so
  2892      things like `vagrantfile_template` work. [GH-129]
  2893  * vagrant: Close filehandles when copying files so Windows can
  2894      rename files. [GH-100]
  2895  
  2896  ## 0.1.4 (July 2, 2013)
  2897  
  2898  ### FEATURES:
  2899  
  2900  * virtualbox: Can now be built headless with the "Headless" option. [GH-99]
  2901  * virtualbox: <wait5> and <wait10> codes for waiting 5 and 10 seconds
  2902      during the boot sequence, respectively. [GH-97]
  2903  * vmware: Can now be built headless with the "Headless" option. [GH-99]
  2904  * vmware: <wait5> and <wait10> codes for waiting 5 and 10 seconds
  2905      during the boot sequence, respectively. [GH-97]
  2906  * vmware: Disks are defragmented and compacted at the end of the build.
  2907      This can be disabled using "skip_compaction"
  2908  
  2909  ### IMPROVEMENTS:
  2910  
  2911  * core: Template syntax errors now show line and character number. [GH-56]
  2912  * amazon-ebs: Access key and secret access key default to
  2913      environmental variables. [GH-40]
  2914  * virtualbox: Send password for keyboard-interactive auth. [GH-121]
  2915  * vmware: Send password for keyboard-interactive auth. [GH-121]
  2916  
  2917  ### BUG FIXES:
  2918  
  2919  * vmware: Wait until shut down cleans up properly to avoid corrupt
  2920      disk files. [GH-111]
  2921  
  2922  ## 0.1.3 (July 1, 2013)
  2923  
  2924  ### FEATURES:
  2925  
  2926  * The VMware builder can now upload the VMware tools for you into
  2927      the VM. This is opt-in, you must specify the `tools_upload_flavor`
  2928      option. See the website for more documentation.
  2929  
  2930  ### IMPROVEMENTS:
  2931  
  2932  * digitalocean: Errors contain human-friendly error messages. [GH-85]
  2933  
  2934  ### BUG FIXES:
  2935  
  2936  * core: More plugin server fixes that avoid hangs on OS X 10.7. [GH-87]
  2937  * vagrant: AWS boxes will keep the AMI artifact around. [GH-55]
  2938  * virtualbox: More robust version parsing for uploading guest additions. [GH-69]
  2939  * virtualbox: Output dir and VM name defaults depend on build name,
  2940      avoiding collisions. [GH-91]
  2941  * vmware: Output dir and VM name defaults depend on build name,
  2942      avoiding collisions. [GH-91]
  2943  
  2944  ## 0.1.2 (June 29, 2013)
  2945  
  2946  ### IMPROVEMENTS:
  2947  
  2948  * core: Template doesn't validate if there are no builders.
  2949  * vmware: Delete any VMware files in the VM that aren't necessary for
  2950      it to function.
  2951  
  2952  ### BUG FIXES:
  2953  
  2954  * core: Plugin servers consider a port in use if there is any
  2955      error listening to it. This fixes I18n issues and Windows. [GH-58]
  2956  * amazon-ebs: Sleep between checking instance state to avoid
  2957      RequestLimitExceeded. [GH-50]
  2958  * vagrant: Rename VirtualBox ovf to "box.ovf" [GH-64]
  2959  * vagrant: VMware boxes have the correct provider type.
  2960  * vmware: Properly populate files in artifact so that the Vagrant
  2961      post-processor works. [GH-63]
  2962  
  2963  ## 0.1.1 (June 28, 2013)
  2964  
  2965  ### BUG FIXES:
  2966  
  2967  * core: plugins listen explicitly on 127.0.0.1, fixing odd hangs. [GH-37]
  2968  * core: fix race condition on verifying checksum of large ISOs which
  2969      could cause panics. [GH-52]
  2970  * virtualbox: `boot_wait` defaults to "10s" rather than 0. [GH-44]
  2971  * virtualbox: if `http_port_min` and max are the same, it will no longer
  2972      panic. [GH-53]
  2973  * vmware: `boot_wait` defaults to "10s" rather than 0. [GH-44]
  2974  * vmware: if `http_port_min` and max are the same, it will no longer
  2975      panic. [GH-53]
  2976  
  2977  ## 0.1.0 (June 28, 2013)
  2978  
  2979  * Initial release