github.com/jbronn/packer@v0.1.6-0.20140120165540-8a1364dbd817/CHANGELOG.md (about) 1 ## 0.5.2 (unreleased) 2 3 FEATURES: 4 5 * **New post-processor:** `docker-import` - Import a Docker image 6 and give it a specific repository/tag. 7 * **New post-processor:** `docker-push` - Push an imported image to 8 a registry. 9 10 IMPROVEMENTS: 11 12 * core: Most downloads made by Packer now use a custom user agent. [GH-803] 13 14 BUG FIXES: 15 16 * core: Fix crash case if blank parameters are given to Packer. [GH-832] 17 * builders/docker: user variables work properly. [GH-777] 18 * builder/virtualbox,vmware: iso\_checksum is not required if the 19 checksum type is "none" 20 * builder/virtualbox,vmware/qemu: Support for additional scancodes for 21 `boot_command` such as `<up>`, `<left>`, `<insert>`, etc. [GH-808] 22 * provisioners/ansible-local: Properly upload custom playbooks. [GH-829] 23 24 ## 0.5.1 (01/02/2014) 25 26 BUG FIXES: 27 28 * core: If a stream ID loops around, don't let it use stream ID 0 [GH-767] 29 * core: Fix issue where large writes to plugins would result in stream 30 corruption. [GH-727] 31 * builders/virtualbox-ovf: `shutdown_timeout` config works. [GH-772] 32 * builders/vmware-iso: Remote driver works properly again. [GH-773] 33 34 ## 0.5.0 (12/30/2013) 35 36 BACKWARDS INCOMPATIBILITIES: 37 38 * "virtualbox" builder has been renamed to "virtualbox-iso". Running your 39 template through `packer fix` will resolve this. 40 * "vmware" builder has been renamed to "vmware-iso". Running your template 41 through `packer fix` will resolve this. 42 * post-processor/vagrant: Syntax for overriding by provider has changed. 43 See the documentation for more information. Running your template 44 through `packer fix` should resolve this. 45 * post-processor/vsphere: Some available configuration options were 46 changed. Running your template through `packer fix` should resolve 47 this. 48 * provisioner/puppet-masterless: The `execute_command` no longer has 49 the `Has*` variables, since the templating language now supports 50 comparison operations. See the Go documentation for more info: 51 http://golang.org/pkg/text/template/ 52 53 FEATURES: 54 55 * **New builder:** Google Compute Engine. You can now build images for 56 use in Google Compute Engine. See the documentation for more information. 57 [GH-715] 58 * **New builder:** "virtualbox-ovf" can build VirtualBox images from 59 an existing OVF or OVA. [GH-201] 60 * **New builder:** "vmware-vmx" can build VMware images from an existing 61 VMX. [GH-201] 62 * Environmental variables can now be accessed as default values for 63 user variables using the "env" function. See the documentation for more 64 information. 65 * "description" field in templates: write a human-readable description 66 of what a template does. This will be shown in `packer inspect`. 67 * Vagrant post-processor now accepts a list of files to include in the 68 box. 69 * All provisioners can now have a "pause\_before" parameter to wait 70 some period of time before running that provisioner. This is useful 71 for reboots. [GH-737] 72 73 IMPROVEMENTS: 74 75 * core: Plugins communicate over a single TCP connection per plugin now, 76 instead of sometimes dozens. Performance around plugin communication 77 dramatically increased. 78 * core: Build names are now template processed so you can use things 79 like user variables in them. [GH-744] 80 * core: New "pwd" function available globally that returns the working 81 directory. [GH-762] 82 * builder/amazon/all: Launched EC2 instances now have a name of 83 "Packer Builder" so that they are easily recognizable. [GH-642] 84 * builder/amazon/all: Copying AMIs to multiple regions now happens 85 in parallel. [GH-495] 86 * builder/amazon/all: Ability to specify "run\_tags" to tag the instance 87 while running. [GH-722] 88 * builder/digitalocean: Private networking support. [GH-698] 89 * builder/docker: A "run\_command" can be specified, configuring how 90 the container is started. [GH-648] 91 * builder/openstack: In debug mode, the generated SSH keypair is saved 92 so you can SSH into the machine. [GH-746] 93 * builder/qemu: Floppy files are supported. [GH-686] 94 * builder/qemu: Next `run_once` option tells Qemu to run only once, 95 which is useful for Windows installs that handle reboots for you. 96 [GH-687] 97 * builder/virtualbox: Nice errors if Packer can't write to 98 the output directory. 99 * builder/virtualbox: ISO is ejected prior to export. 100 * builder/virtualbox: Checksum type can be "none" [GH-471] 101 * builder/vmware: Can now specify path to the Fusion application. [GH-677] 102 * builder/vmware: Checksum type can be "none" [GH-471] 103 * provisioner/puppet-masterless: Can now specify a `manifest_dir` to 104 upload manifests to the remote machine for imports. [GH-655] 105 106 BUG FIXES: 107 108 * core: No colored output in machine-readable output. [GH-684] 109 * core: User variables can now be used for non-string fields. [GH-598] 110 * core: Fix bad download paths if the download URL contained a "." 111 before a "/" [GH-716] 112 * core: "{{timestamp}}" values will always be the same for the entire 113 duration of a build. [GH-744] 114 * builder/amazon: Handle cases where security group isn't instantly 115 available. [GH-494] 116 * builder/virtualbox: don't download guest additions if disabled. [GH-731] 117 * post-processor/vsphere: Uploads VM properly. [GH-694] 118 * post-processor/vsphere: Process user variables. 119 * provisioner/ansible-local: all configurations are processed as templates 120 [GH-749] 121 * provisioner/ansible-local: playbook paths are properly validated 122 as directories, not files. [GH-710] 123 * provisioner/chef-solo: Environments are recognized. [GH-726] 124 125 ## 0.4.1 (December 7, 2013) 126 127 IMPROVEMENTS: 128 129 * builder/amazon/ebs: New option allows associating a public IP with 130 non-default VPC instances. [GH-660] 131 * builder/openstack: A "proxy\_url" setting was added to define an HTTP 132 proxy to use when building with this builder. [GH-637] 133 134 BUG FIXES: 135 136 * core: Don't change background color on CLI anymore, making things look 137 a tad nicer in some terminals. 138 * core: multiple ISO URLs works properly in all builders. [GH-683] 139 * builder/amazon/chroot: Block when obtaining file lock to allow 140 parallel builds. [GH-689] 141 * builder/amazon/instance: Add location flag to upload bundle command 142 so that building AMIs works out of us-east-1 [GH-679] 143 * builder/qemu: Qemu arguments are templated. [GH-688] 144 * builder/vmware: Cleanup of VMX keys works properly so cd-rom won't 145 get stuck with ISO. [GH-685] 146 * builder/vmware: File cleanup is more resilient to file delete races 147 with the operating system. [GH-675] 148 * provisioner/puppet-masterless: Check for hiera config path existence 149 properly. [GH-656] 150 151 ## 0.4.0 (November 19, 2013) 152 153 FEATURES: 154 155 * Docker builder: build and export Docker containers, easily provisioned 156 with any of the Packer built-in provisioners. 157 * QEMU builder: builds a new VM compatible with KVM or Xen using QEMU. 158 * Remote ESXi builder: builds a VMware VM using ESXi remotely using only 159 SSH to an ESXi machine directly. 160 * vSphere post-processor: Can upload VMware artifacts to vSphere 161 * Vagrant post-processor can now make DigitalOcean provider boxes. [GH-504] 162 163 IMPROVEMENTS: 164 165 * builder/amazon/all: Can now specify a list of multiple security group 166 IDs to apply. [GH-499] 167 * builder/amazon/all: AWS API requests are now retried when a temporary 168 network error occurs as well as 500 errors. [GH-559] 169 * builder/virtualbox: Use VBOX\_INSTALL\_PATH env var on Windows to find 170 VBoxManage. [GH-628] 171 * post-processor/vagrant: skips gzip compression when compression_level=0 172 * provisioner/chef-solo: Encrypted data bag support [GH-625] 173 174 BUG FIXES: 175 176 * builder/amazon/chroot: Copying empty directories works. [GH-588] 177 * builder/amazon/chroot: Chroot commands work with shell provisioners. [GH-581] 178 * builder/amazon/chroot: Don't choose a mount point that is a partition of 179 an already mounted device. [GH-635] 180 * builder/virtualbox: Ctrl-C interrupts during waiting for boot. [GH-618] 181 * builder/vmware: VMX modifications are now case-insensitive. [GH-608] 182 * builder/vmware: VMware Fusion won't ask for VM upgrade. 183 * builder/vmware: Ctrl-C interrupts during waiting for boot. [GH-618] 184 * provisioner/chef-solo: Output is slightly prettier and more informative. 185 186 ## 0.3.11 (November 4, 2013) 187 188 FEATURES: 189 190 * builder/amazon/ebs: Ability to specify which availability zone to create 191 instance in. [GH-536] 192 193 IMPROVEMENTS: 194 195 * core: builders can now give warnings during validation. warnings won't 196 fail the build but may hint at potential future problems. 197 * builder/digitalocean: Can now specify a droplet name 198 * builder/virtualbox: Can now disable guest addition download entirely 199 by setting "guest_additions_mode" to "disable" [GH-580] 200 * builder/virtualbox,vmware: ISO urls can now be https [GH-587] 201 * builder/virtualbox,vmware: Warning if shutdown command is not specified, 202 since it is a common case of data loss. 203 204 BUG FIXES: 205 206 * core: Won't panic when writing to a bad pipe. [GH-560] 207 * builder/amazon/all: Properly scrub access key and secret key from logs. 208 [GH-554] 209 * builder/openstack: Properly scrub password from logs [GH-554] 210 * builder/virtualbox: No panic if SSH host port min/max is the same. [GH-594] 211 * builder/vmware: checks if `ifconfig` is in `/sbin` [GH-591] 212 * builder/vmware: Host IP lookup works for non-C locales. [GH-592] 213 * common/uuid: Use cryptographically secure PRNG when generating 214 UUIDs. [GH-552] 215 * communicator/ssh: File uploads that exceed the size of memory no longer 216 cause crashes. [GH-561] 217 218 ## 0.3.10 (October 20, 2013) 219 220 FEATURES: 221 222 * Ansible provisioner 223 224 IMPROVEMENTS: 225 226 * post-processor/vagrant: support instance-store AMIs built by Packer. [GH-502] 227 * post-processor/vagrant: can now specify compression level to use 228 when creating the box. [GH-506] 229 230 BUG FIXES: 231 232 * builder/all: timeout waiting for SSH connection is a failure. [GH-491] 233 * builder/amazon: Scrub sensitive data from the logs. [GH-521] 234 * builder/amazon: Handle the situation where an EC2 instance might not 235 be immediately available. [GH-522] 236 * builder/amazon/chroot: Files copied into the chroot remove destination 237 before copy, fixing issues with dangling symlinks. [GH-500] 238 * builder/digitalocean: don't panic if erroneous API response doesn't 239 contain error message. [GH-492] 240 * builder/digitalocean: scrub API keys from config debug output [GH-516] 241 * builder/virtualbox: error if VirtualBox version cant be detected. [GH-488] 242 * builder/virtualbox: detect if vboxdrv isn't properly setup. [GH-488] 243 * builder/virtualbox: sleep a bit before export to ensure the sesssion 244 is unlocked. [GH-512] 245 * builder/virtualbox: create SATA drives properly on VirtualBox 4.3 [GH-547] 246 * builder/virtualbox: support user templates in SSH key path. [GH-539] 247 * builder/vmware: support user templates in SSH key path. [GH-539] 248 * communicator/ssh: Fix issue where a panic could arise from a nil 249 dereference. [GH-525] 250 * post-processor/vagrant: Fix issue with VirtualBox OVA. [GH-548] 251 * provisioner/salt: Move salt states to correct remote directory. [GH-513] 252 * provisioner/shell: Won't block on certain scripts on Windows anymore. 253 [GH-507] 254 255 ## 0.3.9 (October 2, 2013) 256 257 FEATURES: 258 259 * The Amazon chroot builder is now able to run without any `sudo` privileges 260 by using the "command_wrapper" configuration. [GH-430] 261 * Chef provisioner supports environments. [GH-483] 262 263 BUG FIXES: 264 265 * core: default user variable values don't need to be strings. [GH-456] 266 * builder/amazon-chroot: Fix errors with waitin for state change. [GH-459] 267 * builder/digitalocean: Use proper error message JSON key (DO API change). 268 * communicator/ssh: SCP uploads now work properly when directories 269 contain symlinks. [GH-449] 270 * provisioner/chef-solo: Data bags and roles path are now properly 271 populated when set. [GH-470] 272 * provisioner/shell: Windows line endings are actually properly changed 273 to Unix line endings. [GH-477] 274 275 ## 0.3.8 (September 22, 2013) 276 277 FEATURES: 278 279 * core: You can now specify `only` and `except` configurations on any 280 provisioner or post-processor to specify a list of builds that they 281 are valid for. [GH-438] 282 * builders/virtualbox: Guest additions can be attached rather than uploaded, 283 easier to handle for Windows guests. [GH-405] 284 * provisioner/chef-solo: Ability to specify a custom Chef configuration 285 template. 286 * provisioner/chef-solo: Roles and data bags support. [GH-348] 287 288 IMPROVEMENTS: 289 290 * core: User variables can now be used for integer, boolean, etc. 291 values. [GH-418] 292 * core: Plugins made with incompatible versions will no longer load. 293 * builder/amazon/all: Interrupts work while waiting for AMI to be ready. 294 * provisioner/shell: Script line-endings are automatically converted to 295 Unix-style line-endings. Can be disabled by setting "binary" to "true". 296 [GH-277] 297 298 BUG FIXES: 299 300 * core: Set TCP KeepAlives on internally created RPC connections so that 301 they don't die. [GH-416] 302 * builder/amazon/all: While waiting for AMI, will detect "failed" state. 303 * builder/amazon/all: Waiting for state will detect if the resource (AMI, 304 instance, etc.) disappears from under it. 305 * builder/amazon/instance: Exclude only contents of /tmp, not /tmp 306 itself. [GH-437] 307 * builder/amazon/instance: Make AccessKey/SecretKey available to bundle 308 command even when they come from the environment. [GH-434] 309 * builder/virtualbox: F1-F12 and delete scancodes now work. [GH-425] 310 * post-processor/vagrant: Override configurations properly work. [GH-426] 311 * provisioner/puppet-masterless: Fix failure case when both facter vars 312 are used and prevent_sudo. [GH-415] 313 * provisioner/puppet-masterless: User variables now work properly in 314 manifest file and hiera path. [GH-448] 315 316 ## 0.3.7 (September 9, 2013) 317 318 BACKWARDS INCOMPATIBILITIES: 319 320 * The "event_delay" option for the DigitalOcean builder is now gone. 321 The builder automatically waits for events to go away. Run your templates 322 through `packer fix` to get rid of these. 323 324 FEATURES: 325 326 * **NEW PROVISIONER:** `puppet-masterless`. You can now provision with 327 a masterless Puppet setup. [GH-234] 328 * New globally available template function: `uuid`. Generates a new random 329 UUID. 330 * New globally available template function: `isotime`. Generates the 331 current time in ISO standard format. 332 * New Amazon template function: `clean_ami_name`. Substitutes '-' for 333 characters that are illegal to use in an AMI name. 334 335 IMPROVEMENTS: 336 337 * builder/amazon/all: Ability to specify the format of the temporary 338 keypair created. [GH-389] 339 * builder/amazon/all: Support the NoDevice flag for block mappings. [GH-396] 340 * builder/digitalocean: Retry on any pending event errors. 341 * builder/openstack: Can now specify a project. [GH-382] 342 * builder/virtualbox: Can now attach hard drive over SATA. [GH-391] 343 * provisioner/file: Can now upload directories. [GH-251] 344 345 BUG FIXES: 346 347 * core: Detect if SCP is not enabled on the other side. [GH-386] 348 * builder/amazon/all: When copying AMI to multiple regions, copy 349 the metadata (tags and attributes) as well. [GH-388] 350 * builder/amazon/all: Fix panic case where eventually consistent 351 instance state caused an index out of bounds. 352 * builder/virtualbox: The `vm_name` setting now properly sets the OVF 353 name of the output. [GH-401] 354 * builder/vmware: Autoanswer VMware dialogs. [GH-393] 355 * command/inspect: Fix weird output for default values for optional vars. 356 357 ## 0.3.6 (September 2, 2013) 358 359 FEATURES: 360 361 * User variables can now be specified as "required", meaning the user 362 MUST specify a value. Just set the default value to "null". [GH-374] 363 364 IMPROVEMENTS: 365 366 * core: Much improved interrupt handling. For example, interrupts now 367 cancel much more quickly within provisioners. 368 * builder/amazon: In `-debug` mode, the keypair used will be saved to 369 the current directory so you can access the machine. [GH-373] 370 * builder/amazon: In `-debug` mode, the DNS is outputted. 371 * builder/openstack: IPv6 addresses supported for SSH. [GH-379] 372 * communicator/ssh: Support for private keys encrypted using PKCS8. [GH-376] 373 * provisioner/chef-solo: You can now use user variables in the `json` 374 configuration for Chef. [GH-362] 375 376 BUG FIXES: 377 378 * core: Concurrent map access is completely gone, fixing rare issues 379 with runtime memory corruption. [GH-307] 380 * core: Fix possible panic when ctrl-C during provisioner run. 381 * builder/digitalocean: Retry destroy a few times because DO sometimes 382 gives false errors. 383 * builder/openstack: Properly handle the case no image is made. [GH-375] 384 * builder/openstack: Specifying a region is now required in a template. 385 * provisioners/salt-masterless: Use filepath join to properly join paths. 386 387 ## 0.3.5 (August 28, 2013) 388 389 FEATURES: 390 391 * **NEW BUILDER:** `openstack`. You can now build on OpenStack. [GH-155] 392 * **NEW PROVISIONER:** `chef-solo`. You can now provision with Chef 393 using `chef-solo` from local cookbooks. 394 * builder/amazon: Copy AMI to multiple regions with `ami_regions`. [GH-322] 395 * builder/virtualbox,vmware: Can now use SSH keys as an auth mechanism for 396 SSH using `ssh_key_path`. [GH-70] 397 * builder/virtualbox,vmware: Support SHA512 as a checksum type. [GH-356] 398 * builder/vmware: The root hard drive type can now be specified with 399 "disk_type_id" for advanced users. [GH-328] 400 * provisioner/salt-masterless: Ability to specfy a minion config. [GH-264] 401 * provisioner/salt-masterless: Ability to upload pillars. [GH-353] 402 403 IMPROVEMENTS: 404 405 * core: Output message when Ctrl-C received that we're cleaning up. [GH-338] 406 * builder/amazon: Tagging now works with all amazon builder types. 407 * builder/vmware: Option `ssh_skip_request_pty` for not requesting a PTY 408 for the SSH connection. [GH-270] 409 * builder/vmware: Specify a `vmx_template_path` in order to customize 410 the generated VMX. [GH-270] 411 * command/build: Machine-readable output now contains build errors, if any. 412 * command/build: An "end" sentinel is outputted in machine-readable output 413 for artifact listing so it is easier to know when it is over. 414 415 BUG FIXES: 416 417 * core: Fixed a couple cases where a double ctrl-C could panic. 418 * core: Template validation fails if an override is specified for a 419 non-existent builder. [GH-336] 420 * core: The SSH connection is heartbeated so that drops can be 421 detected. [GH-200] 422 * builder/amazon/instance: Remove check for ec2-ami-tools because it 423 didn't allow absolute paths to work properly. [GH-330] 424 * builder/digitalocean: Send a soft shutdown request so that files 425 are properly synced before shutdown. [GH-332] 426 * command/build,command/validate: If a non-existent build is specified to 427 '-only' or '-except', it is now an error. [GH-326] 428 * post-processor/vagrant: Setting OutputPath with a timestamp now 429 always works properly. [GH-324] 430 * post-processor/vagrant: VirtualBox OVA formats now turn into 431 Vagrant boxes properly. [GH-331] 432 * provisioner/shell: Retry upload if start command fails, making reboot 433 handling much more robust. 434 435 ## 0.3.4 (August 21, 2013) 436 437 IMPROVEMENTS: 438 439 * post-processor/vagrant: the file being compressed will be shown 440 in the UI [GH-314] 441 442 BUG FIXES: 443 444 * core: Avoid panics when double-interrupting Packer. 445 * provisioner/shell: Retry shell script uploads, making reboots more 446 robust if they happen to fail in this stage. [GH-282] 447 448 ## 0.3.3 (August 19, 2013) 449 450 FEATURES: 451 452 * builder/virtualbox: support exporting in OVA format. [GH-309] 453 454 IMPROVEMENTS: 455 456 * core: All HTTP downloads across Packer now support the standard 457 proxy environmental variables (`HTTP_PROXY`, `NO_PROXY`, etc.) [GH-252] 458 * builder/amazon: API requests will use HTTP proxy if specified by 459 enviromental variables. 460 * builder/digitalocean: API requests will use HTTP proxy if specified 461 by environmental variables. 462 463 BUG FIXES: 464 465 * core: TCP connection between plugin processes will keep-alive. [GH-312] 466 * core: No more "unused key keep_input_artifact" for post processors [GH-310] 467 * post-processor/vagrant: `output_path` templates now work again. 468 469 ## 0.3.2 (August 18, 2013) 470 471 FEATURES: 472 473 * New command: `packer inspect`. This command tells you the components of 474 a template. It respects the `-machine-readable` flag as well so you can 475 parse out components of a template. 476 * Packer will detect its own crashes (always a bug) and save a "crash.log" 477 file. 478 * builder/virtualbox: You may now specify multiple URLs for an ISO 479 using "iso_url" in a template. The URLs will be tried in order. 480 * builder/vmware: You may now specify multiple URLs for an ISO 481 using "iso_url" in a template. The URLs will be tried in order. 482 483 IMPROVEMENTS: 484 485 * core: built with Go 1.1.2 486 * core: packer help output now loads much faster. 487 * builder/virtualbox: guest_additions_url can now use the `Version` 488 variable to get the VirtualBox version. [GH-272] 489 * builder/virtualbox: Do not check for VirtualBox as part of template 490 validation; only check at execution. 491 * builder/vmware: Do not check for VMware as part of template validation; 492 only check at execution. 493 * command/build: A path of "-" will read the template from stdin. 494 * builder/amazon: add block device mappings [GH-90] 495 496 BUG FIXES: 497 498 * windows: file URLs are easier to get right as Packer 499 has better parsing and error handling for Windows file paths. [GH-284] 500 * builder/amazon/all: Modifying more than one AMI attribute type no longer 501 crashes. 502 * builder/amazon-instance: send IAM instance profile data. [GH-294] 503 * builder/digitalocean: API request parameters are properly URL 504 encoded. [GH-281] 505 * builder/virtualbox: dowload progress won't be shown until download 506 actually starts. [GH-288] 507 * builder/virtualbox: floppy files names of 13 characters are now properly 508 written to the FAT12 filesystem. [GH-285] 509 * builder/vmware: dowload progress won't be shown until download 510 actually starts. [GH-288] 511 * builder/vmware: interrupt works while typing commands over VNC. 512 * builder/virtualbox: floppy files names of 13 characters are now properly 513 written to the FAT12 filesystem. [GH-285] 514 * post-processor/vagrant: Process user variables. [GH-295] 515 516 ## 0.3.1 (August 12, 2013) 517 518 IMPROVEMENTS: 519 520 * provisioner/shell: New setting `start_retry_timeout` which is the timeout 521 for the provisioner to attempt to _start_ the remote process. This allows 522 the shell provisioner to work properly with reboots. [GH-260] 523 524 BUG FIXES: 525 526 * core: Remote command output containing '\r' now looks much better 527 within the Packer output. 528 * builder/vmware: Fix issue with finding driver files. [GH-279] 529 * provisioner/salt-masterless: Uploads work properly from Windows. [GH-276] 530 531 ## 0.3.0 (August 12, 2013) 532 533 BACKWARDS INCOMPATIBILITIES: 534 535 * All `{{.CreateTime}}` variables within templates (such as for AMI names) 536 are now replaced with `{{timestamp}}`. Run `packer fix` to fix your 537 templates. 538 539 FEATURES: 540 541 * **User Variables** allow you to specify variables within your templates 542 that can be replaced using the command-line, files, or environmental 543 variables. This dramatically improves the portability of packer templates. 544 See the documentation for more information. 545 * **Machine-readable output** can be enabled by passing the 546 `-machine-readable` flag to _any_ Packer command. 547 * All strings in a template are now processed for variables/functions, 548 so things like `{{timestamp}}` can be used everywhere. More features will 549 be added in the future. 550 * The `amazon` builders (all of them) can now have attributes of their 551 resulting AMIs modified, such as access permissions and product codes. 552 553 IMPROVEMENTS: 554 555 * builder/amazon/all: User data can be passed to start the instances. [GH-253] 556 * provisioner/salt-masterless: `local_state_tree` is no longer required, 557 allowing you to use shell provisioner (or others) to bring this down. 558 [GH-269] 559 560 BUG FIXES: 561 562 * builder/amazon/ebs,instance: Retry deleing security group a few times. 563 [GH-278] 564 * builder/vmware: Workstation works on Windows XP now. [GH-238] 565 * builder/vmware: Look for files on Windows in multiple locations 566 using multiple environmental variables. [GH-263] 567 * provisioner/salt-masterless: states aren't deleted after the run 568 anymore. [GH-265] 569 * provisioner/salt-masterless: error if any commands exit with a non-zero 570 exit status. [GH-266] 571 572 ## 0.2.3 (August 7, 2013) 573 574 IMPROVEMENTS: 575 576 * builder/amazon/all: Added Amazon AMI tag support [GH-233] 577 578 BUG FIXES: 579 580 * core: Absolute/relative filepaths on Windows now work for iso_url 581 and other settings. [GH-240] 582 * builder/amazon/all: instance info is refreshed while waiting for SSH, 583 allowing Packer to see updated IP/DNS info. [GH-243] 584 585 ## 0.2.2 (August 1, 2013) 586 587 FEATURES: 588 589 * New builder: `amazon-chroot` can create EBS-backed AMIs without launching 590 a new EC2 instance. This can shave minutes off of the AMI creation process. 591 See the docs for more info. 592 * New provisioner: `salt-masterless` will provision the node using Salt 593 without a master. 594 * The `vmware` builder now works with Workstation 9 on Windows. [GH-222] 595 * The `vmware` builder now works with Player 5 on Linux. [GH-190] 596 597 IMPROVEMENTS: 598 599 * core: Colors won't be outputted on Windows unless in Cygwin. 600 * builder/amazon/all: Added `iam_instance_profile` to launch the source 601 image with a given IAM profile. [GH-226] 602 603 BUG FIXES: 604 605 * builder/virtualbox,vmware: relative paths work properly as URL 606 configurations. [GH-215] 607 * builder/virtualbox,vmware: fix race condition in deleting the output 608 directory on Windows by retrying. 609 610 ## 0.2.1 (July 26, 2013) 611 612 FEATURES: 613 614 * New builder: `amazon-instance` can create instance-storage backed 615 AMIs. 616 * VMware builder now works with Workstation 9 on Linux. 617 618 IMPROVEMENTS: 619 620 * builder/amazon/all: Ctrl-C while waiting for state change works 621 * builder/amazon/ebs: Can now launch instances into a VPC for added protection [GH-210] 622 * builder/virtualbox,vmware: Add backspace, delete, and F1-F12 keys to the boot 623 command. 624 * builder/virtualbox: massive performance improvements with big ISO files because 625 an expensive copy is avoided. [GH-202] 626 * builder/vmware: CD is removed prior to exporting final machine. [GH-198] 627 628 BUG FIXES: 629 630 * builder/amazon/all: Gracefully handle when AMI appears to not exist 631 while AWS state is propogating. [GH-207] 632 * builder/virtualbox: Trim carriage returns for Windows to properly 633 detect VM state on Windows. [GH-218] 634 * core: build names no longer cause invalid config errors. [GH-197] 635 * command/build: If any builds fail, exit with non-zero exit status. 636 * communicator/ssh: SCP exit codes are tested and errors are reported. [GH-195] 637 * communicator/ssh: Properly change slash direction for Windows hosts. [GH-218] 638 639 ## 0.2.0 (July 16, 2013) 640 641 BACKWARDS INCOMPATIBILITIES: 642 643 * "iso_md5" in the virtualbox and vmware builders is replaced with 644 "iso_checksum" and "iso_checksum_type" (with the latter set to "md5"). 645 See the announce below on `packer fix` to automatically fix your templates. 646 647 FEATURES: 648 649 * **NEW COMMAND:** `packer fix` will attempt to fix templates from older 650 versions of Packer that are now broken due to backwards incompatibilities. 651 This command will fix the backwards incompatibilities introduced in this 652 version. 653 * Amazon EBS builder can now optionally use a pre-made security group 654 instead of randomly generating one. 655 * DigitalOcean API key and client IDs can now be passed in as 656 environmental variables. See the documentatin for more details. 657 * VirtualBox and VMware can now have `floppy_files` specified to attach 658 floppy disks when booting. This allows for unattended Windows installs. 659 * `packer build` has a new `-force` flag that forces the removal of 660 existing artifacts if they exist. [GH-173] 661 * You can now log to a file (instead of just stderr) by setting the 662 `PACKER_LOG_FILE` environmental variable. [GH-168] 663 * Checksums other than MD5 can now be used. SHA1 and SHA256 can also 664 be used. See the documentation on `iso_checksum_type` for more info. [GH-175] 665 666 IMPROVEMENTS: 667 668 * core: invalid keys in configuration are now considered validation 669 errors. [GH-104] 670 * core: all builders now share a common SSH connection core, improving 671 SSH reliability over all the builders. 672 * amazon-ebs: Credentials will come from IAM role if available. [GH-160] 673 * amazon-ebs: Verify the source AMI is EBS-backed before launching. [GH-169] 674 * shell provisioner: the build name and builder type are available in 675 the `PACKER_BUILD_NAME` and `PACKER_BUILDER_TYPE` env vars by default, 676 respectively. [GH-154] 677 * vmware: error if shutdown command has non-zero exit status. 678 679 BUG FIXES: 680 681 * core: UI messages are now properly prefixed with spaces again. 682 * core: If SSH connection ends, re-connection attempts will take 683 place. [GH-152] 684 * virtualbox: "paused" doesn't mean the VM is stopped, improving 685 shutdown detection. 686 * vmware: error if guest IP could not be detected. [GH-189] 687 688 ## 0.1.5 (July 7, 2013) 689 690 FEATURES: 691 692 * "file" uploader will upload files from the machine running Packer to the 693 remote machine. 694 * VirtualBox guest additions URL and checksum can now be specified, allowing 695 the VirtualBox builder to have the ability to be used completely offline. 696 697 IMPROVEMENTS: 698 699 * core: If SCP is not available, a more descriptive error message 700 is shown telling the user. [GH-127] 701 * shell: Scripts are now executed by default according to their shebang, 702 not with `/bin/sh`. [GH-105] 703 * shell: You can specify what interpreter you want inline scripts to 704 run with `inline_shebang`. 705 * virtualbox: Delete the packer-made SSH port forwarding prior to 706 exporting the VM. 707 708 BUG FIXES: 709 710 * core: Non-200 response codes on downloads now show proper errors. 711 [GH-141] 712 * amazon-ebs: SSH handshake is retried. [GH-130] 713 * vagrant: The `BuildName` template propery works properly in 714 the output path. 715 * vagrant: Properly configure the provider-specific post-processors so 716 things like `vagrantfile_template` work. [GH-129] 717 * vagrant: Close filehandles when copying files so Windows can 718 rename files. [GH-100] 719 720 ## 0.1.4 (July 2, 2013) 721 722 FEATURES: 723 724 * virtualbox: Can now be built headless with the "Headless" option. [GH-99] 725 * virtualbox: <wait5> and <wait10> codes for waiting 5 and 10 seconds 726 during the boot sequence, respectively. [GH-97] 727 * vmware: Can now be built headless with the "Headless" option. [GH-99] 728 * vmware: <wait5> and <wait10> codes for waiting 5 and 10 seconds 729 during the boot sequence, respectively. [GH-97] 730 * vmware: Disks are defragmented and compacted at the end of the build. 731 This can be disabled using "skip_compaction" 732 733 IMPROVEMENTS: 734 735 * core: Template syntax errors now show line and character number. [GH-56] 736 * amazon-ebs: Access key and secret access key default to 737 environmental variables. [GH-40] 738 * virtualbox: Send password for keyboard-interactive auth [GH-121] 739 * vmware: Send password for keyboard-interactive auth [GH-121] 740 741 BUG FIXES: 742 743 * vmware: Wait until shut down cleans up properly to avoid corrupt 744 disk files [GH-111] 745 746 ## 0.1.3 (July 1, 2013) 747 748 FEATURES: 749 750 * The VMware builder can now upload the VMware tools for you into 751 the VM. This is opt-in, you must specify the `tools_upload_flavor` 752 option. See the website for more documentation. 753 754 IMPROVEMENTS: 755 756 * digitalocean: Errors contain human-friendly error messages. [GH-85] 757 758 BUG FIXES: 759 760 * core: More plugin server fixes that avoid hangs on OS X 10.7 [GH-87] 761 * vagrant: AWS boxes will keep the AMI artifact around [GH-55] 762 * virtualbox: More robust version parsing for uploading guest additions. [GH-69] 763 * virtualbox: Output dir and VM name defaults depend on build name, 764 avoiding collisions. [GH-91] 765 * vmware: Output dir and VM name defaults depend on build name, 766 avoiding collisions. [GH-91] 767 768 ## 0.1.2 (June 29, 2013) 769 770 IMPROVEMENTS: 771 772 * core: Template doesn't validate if there are no builders. 773 * vmware: Delete any VMware files in the VM that aren't necessary for 774 it to function. 775 776 BUG FIXES: 777 778 * core: Plugin servers consider a port in use if there is any 779 error listening to it. This fixes I18n issues and Windows. [GH-58] 780 * amazon-ebs: Sleep between checking instance state to avoid 781 RequestLimitExceeded [GH-50] 782 * vagrant: Rename VirtualBox ovf to "box.ovf" [GH-64] 783 * vagrant: VMware boxes have the correct provider type. 784 * vmware: Properly populate files in artifact so that the Vagrant 785 post-processor works. [GH-63] 786 787 ## 0.1.1 (June 28, 2013) 788 789 BUG FIXES: 790 791 * core: plugins listen explicitly on 127.0.0.1, fixing odd hangs. [GH-37] 792 * core: fix race condition on verifying checksum of large ISOs which 793 could cause panics [GH-52] 794 * virtualbox: `boot_wait` defaults to "10s" rather than 0. [GH-44] 795 * virtualbox: if `http_port_min` and max are the same, it will no longer 796 panic [GH-53] 797 * vmware: `boot_wait` defaults to "10s" rather than 0. [GH-44] 798 * vmware: if `http_port_min` and max are the same, it will no longer 799 panic [GH-53] 800 801 ## 0.1.0 (June 28, 2013) 802 803 * Initial release