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