github.com/zakuro9715/packer@v0.8.2-0.20150707220638-da749e247094/CHANGELOG.md (about)

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