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