github.com/jerryclinesmith/packer@v0.3.7/CHANGELOG.md (about) 1 ## 0.3.7 (September 9, 2013) 2 3 BACKWARDS INCOMPATIBILITIES: 4 5 * The "event_delay" option for the DigitalOcean builder is now gone. 6 The builder automatically waits for events to go away. Run your templates 7 through `packer fix` to get rid of these. 8 9 FEATURES: 10 11 * **NEW PROVISIONER:** `puppet-masterless`. You can now provision with 12 a masterless Puppet setup. [GH-234] 13 * New globally available template function: `uuid`. Generates a new random 14 UUID. 15 * New globally available template function: `isotime`. Generates the 16 current time in ISO standard format. 17 * New Amazon template function: `clean_ami_name`. Substitutes '-' for 18 characters that are illegal to use in an AMI name. 19 20 IMPROVEMENTS: 21 22 * builder/amazon/all: Ability to specify the format of the temporary 23 keypair created. [GH-389] 24 * builder/amazon/all: Support the NoDevice flag for block mappings. [GH-396] 25 * builder/digitalocean: Retry on any pending event errors. 26 * builder/openstack: Can now specify a project. [GH-382] 27 * builder/virtualbox: Can now attach hard drive over SATA. [GH-391] 28 * provisioner/file: Can now upload directories. [GH-251] 29 30 BUG FIXES: 31 32 * core: Detect if SCP is not enabled on the other side. [GH-386] 33 * builder/amazon/all: When copying AMI to multiple regions, copy 34 the metadata (tags and attributes) as well. [GH-388] 35 * builder/amazon/all: Fix panic case where eventually consistent 36 instance state caused an index out of bounds. 37 * builder/virtualbox: The `vm_name` setting now properly sets the OVF 38 name of the output. [GH-401] 39 * builder/vmware: Autoanswer VMware dialogs. [GH-393] 40 * command/inspect: Fix weird output for default values for optional vars. 41 42 ## 0.3.6 (September 2, 2013) 43 44 FEATURES: 45 46 * User variables can now be specified as "required", meaning the user 47 MUST specify a value. Just set the default value to "null". [GH-374] 48 49 IMPROVEMENTS: 50 51 * core: Much improved interrupt handling. For example, interrupts now 52 cancel much more quickly within provisioners. 53 * builder/amazon: In `-debug` mode, the keypair used will be saved to 54 the current directory so you can access the machine. [GH-373] 55 * builder/amazon: In `-debug` mode, the DNS is outputted. 56 * builder/openstack: IPv6 addresses supported for SSH. [GH-379] 57 * communicator/ssh: Support for private keys encrypted using PKCS8. [GH-376] 58 * provisioner/chef-solo: You can now use user variables in the `json` 59 configuration for Chef. [GH-362] 60 61 BUG FIXES: 62 63 * core: Concurrent map access is completely gone, fixing rare issues 64 with runtime memory corruption. [GH-307] 65 * core: Fix possible panic when ctrl-C during provisioner run. 66 * builder/digitalocean: Retry destroy a few times because DO sometimes 67 gives false errors. 68 * builder/openstack: Properly handle the case no image is made. [GH-375] 69 * builder/openstack: Specifying a region is now required in a template. 70 * provisioners/salt-masterless: Use filepath join to properly join paths. 71 72 ## 0.3.5 (August 28, 2013) 73 74 FEATURES: 75 76 * **NEW BUILDER:** `openstack`. You can now build on OpenStack. [GH-155] 77 * **NEW PROVISIONER:** `chef-solo`. You can now provision with Chef 78 using `chef-solo` from local cookbooks. 79 * builder/amazon: Copy AMI to multiple regions with `ami_regions`. [GH-322] 80 * builder/virtualbox,vmware: Can now use SSH keys as an auth mechanism for 81 SSH using `ssh_key_path`. [GH-70] 82 * builder/virtualbox,vmware: Support SHA512 as a checksum type. [GH-356] 83 * builder/vmware: The root hard drive type can now be specified with 84 "disk_type_id" for advanced users. [GH-328] 85 * provisioner/salt-masterless: Ability to specfy a minion config. [GH-264] 86 * provisioner/salt-masterless: Ability to upload pillars. [GH-353] 87 88 IMPROVEMENTS: 89 90 * core: Output message when Ctrl-C received that we're cleaning up. [GH-338] 91 * builder/amazon: Tagging now works with all amazon builder types. 92 * builder/vmware: Option `ssh_skip_request_pty` for not requesting a PTY 93 for the SSH connection. [GH-270] 94 * builder/vmware: Specify a `vmx_template_path` in order to customize 95 the generated VMX. [GH-270] 96 * command/build: Machine-readable output now contains build errors, if any. 97 * command/build: An "end" sentinel is outputted in machine-readable output 98 for artifact listing so it is easier to know when it is over. 99 100 BUG FIXES: 101 102 * core: Fixed a couple cases where a double ctrl-C could panic. 103 * core: Template validation fails if an override is specified for a 104 non-existent builder. [GH-336] 105 * core: The SSH connection is heartbeated so that drops can be 106 detected. [GH-200] 107 * builder/amazon/instance: Remove check for ec2-ami-tools because it 108 didn't allow absolute paths to work properly. [GH-330] 109 * builder/digitalocean: Send a soft shutdown request so that files 110 are properly synced before shutdown. [GH-332] 111 * command/build,command/validate: If a non-existent build is specified to 112 '-only' or '-except', it is now an error. [GH-326] 113 * post-processor/vagrant: Setting OutputPath with a timestamp now 114 always works properly. [GH-324] 115 * post-processor/vagrant: VirtualBox OVA formats now turn into 116 Vagrant boxes properly. [GH-331] 117 * provisioner/shell: Retry upload if start command fails, making reboot 118 handling much more robust. 119 120 ## 0.3.4 (August 21, 2013) 121 122 IMPROVEMENTS: 123 124 * post-processor/vagrant: the file being compressed will be shown 125 in the UI [GH-314] 126 127 BUG FIXES: 128 129 * core: Avoid panics when double-interrupting Packer. 130 * provisioner/shell: Retry shell script uploads, making reboots more 131 robust if they happen to fail in this stage. [GH-282] 132 133 ## 0.3.3 (August 19, 2013) 134 135 FEATURES: 136 137 * builder/virtualbox: support exporting in OVA format. [GH-309] 138 139 IMPROVEMENTS: 140 141 * core: All HTTP downloads across Packer now support the standard 142 proxy environmental variables (`HTTP_PROXY`, `NO_PROXY`, etc.) [GH-252] 143 * builder/amazon: API requests will use HTTP proxy if specified by 144 enviromental variables. 145 * builder/digitalocean: API requests will use HTTP proxy if specified 146 by environmental variables. 147 148 BUG FIXES: 149 150 * core: TCP connection between plugin processes will keep-alive. [GH-312] 151 * core: No more "unused key keep_input_artifact" for post processors [GH-310] 152 * post-processor/vagrant: `output_path` templates now work again. 153 154 ## 0.3.2 (August 18, 2013) 155 156 FEATURES: 157 158 * New command: `packer inspect`. This command tells you the components of 159 a template. It respects the `-machine-readable` flag as well so you can 160 parse out components of a template. 161 * Packer will detect its own crashes (always a bug) and save a "crash.log" 162 file. 163 * builder/virtualbox: You may now specify multiple URLs for an ISO 164 using "iso_url" in a template. The URLs will be tried in order. 165 * builder/vmware: You may now specify multiple URLs for an ISO 166 using "iso_url" in a template. The URLs will be tried in order. 167 168 IMPROVEMENTS: 169 170 * core: built with Go 1.1.2 171 * core: packer help output now loads much faster. 172 * builder/virtualbox: guest_additions_url can now use the `Version` 173 variable to get the VirtualBox version. [GH-272] 174 * builder/virtualbox: Do not check for VirtualBox as part of template 175 validation; only check at execution. 176 * builder/vmware: Do not check for VMware as part of template validation; 177 only check at execution. 178 * command/build: A path of "-" will read the template from stdin. 179 * builder/amazon: add block device mappings [GH-90] 180 181 BUG FIXES: 182 183 * windows: file URLs are easier to get right as Packer 184 has better parsing and error handling for Windows file paths. [GH-284] 185 * builder/amazon/all: Modifying more than one AMI attribute type no longer 186 crashes. 187 * builder/amazon-instance: send IAM instance profile data. [GH-294] 188 * builder/digitalocean: API request parameters are properly URL 189 encoded. [GH-281] 190 * builder/virtualbox: dowload progress won't be shown until download 191 actually starts. [GH-288] 192 * builder/virtualbox: floppy files names of 13 characters are now properly 193 written to the FAT12 filesystem. [GH-285] 194 * builder/vmware: dowload progress won't be shown until download 195 actually starts. [GH-288] 196 * builder/vmware: interrupt works while typing commands over VNC. 197 * builder/virtualbox: floppy files names of 13 characters are now properly 198 written to the FAT12 filesystem. [GH-285] 199 * post-processor/vagrant: Process user variables. [GH-295] 200 201 ## 0.3.1 (August 12, 2013) 202 203 IMPROVEMENTS: 204 205 * provisioner/shell: New setting `start_retry_timeout` which is the timeout 206 for the provisioner to attempt to _start_ the remote process. This allows 207 the shell provisioner to work properly with reboots. [GH-260] 208 209 BUG FIXES: 210 211 * core: Remote command output containing '\r' now looks much better 212 within the Packer output. 213 * builder/vmware: Fix issue with finding driver files. [GH-279] 214 * provisioner/salt-masterless: Uploads work properly from Windows. [GH-276] 215 216 ## 0.3.0 (August 12, 2013) 217 218 BACKWARDS INCOMPATIBILITIES: 219 220 * All `{{.CreateTime}}` variables within templates (such as for AMI names) 221 are now replaced with `{{timestamp}}`. Run `packer fix` to fix your 222 templates. 223 224 FEATURES: 225 226 * **User Variables** allow you to specify variables within your templates 227 that can be replaced using the command-line, files, or environmental 228 variables. This dramatically improves the portability of packer templates. 229 See the documentation for more information. 230 * **Machine-readable output** can be enabled by passing the 231 `-machine-readable` flag to _any_ Packer command. 232 * All strings in a template are now processed for variables/functions, 233 so things like `{{timestamp}}` can be used everywhere. More features will 234 be added in the future. 235 * The `amazon` builders (all of them) can now have attributes of their 236 resulting AMIs modified, such as access permissions and product codes. 237 238 IMPROVEMENTS: 239 240 * builder/amazon/all: User data can be passed to start the instances. [GH-253] 241 * provisioner/salt-masterless: `local_state_tree` is no longer required, 242 allowing you to use shell provisioner (or others) to bring this down. 243 [GH-269] 244 245 BUG FIXES: 246 247 * builder/amazon/ebs,instance: Retry deleing security group a few times. 248 [GH-278] 249 * builder/vmware: Workstation works on Windows XP now. [GH-238] 250 * builder/vmware: Look for files on Windows in multiple locations 251 using multiple environmental variables. [GH-263] 252 * provisioner/salt-masterless: states aren't deleted after the run 253 anymore. [GH-265] 254 * provisioner/salt-masterless: error if any commands exit with a non-zero 255 exit status. [GH-266] 256 257 ## 0.2.3 (August 7, 2013) 258 259 IMPROVEMENTS: 260 261 * builder/amazon/all: Added Amazon AMI tag support [GH-233] 262 263 BUG FIXES: 264 265 * core: Absolute/relative filepaths on Windows now work for iso_url 266 and other settings. [GH-240] 267 * builder/amazon/all: instance info is refreshed while waiting for SSH, 268 allowing Packer to see updated IP/DNS info. [GH-243] 269 270 ## 0.2.2 (August 1, 2013) 271 272 FEATURES: 273 274 * New builder: `amazon-chroot` can create EBS-backed AMIs without launching 275 a new EC2 instance. This can shave minutes off of the AMI creation process. 276 See the docs for more info. 277 * New provisioner: `salt-masterless` will provision the node using Salt 278 without a master. 279 * The `vmware` builder now works with Workstation 9 on Windows. [GH-222] 280 * The `vmware` builder now works with Player 5 on Linux. [GH-190] 281 282 IMPROVEMENTS: 283 284 * core: Colors won't be outputted on Windows unless in Cygwin. 285 * builder/amazon/all: Added `iam_instance_profile` to launch the source 286 image with a given IAM profile. [GH-226] 287 288 BUG FIXES: 289 290 * builder/virtualbox,vmware: relative paths work properly as URL 291 configurations. [GH-215] 292 * builder/virtualbox,vmware: fix race condition in deleting the output 293 directory on Windows by retrying. 294 295 ## 0.2.1 (July 26, 2013) 296 297 FEATURES: 298 299 * New builder: `amazon-instance` can create instance-storage backed 300 AMIs. 301 * VMware builder now works with Workstation 9 on Linux. 302 303 IMPROVEMENTS: 304 305 * builder/amazon/all: Ctrl-C while waiting for state change works 306 * builder/amazon/ebs: Can now launch instances into a VPC for added protection [GH-210] 307 * builder/virtualbox,vmware: Add backspace, delete, and F1-F12 keys to the boot 308 command. 309 * builder/virtualbox: massive performance improvements with big ISO files because 310 an expensive copy is avoided. [GH-202] 311 * builder/vmware: CD is removed prior to exporting final machine. [GH-198] 312 313 BUG FIXES: 314 315 * builder/amazon/all: Gracefully handle when AMI appears to not exist 316 while AWS state is propogating. [GH-207] 317 * builder/virtualbox: Trim carriage returns for Windows to properly 318 detect VM state on Windows. [GH-218] 319 * core: build names no longer cause invalid config errors. [GH-197] 320 * command/build: If any builds fail, exit with non-zero exit status. 321 * communicator/ssh: SCP exit codes are tested and errors are reported. [GH-195] 322 * communicator/ssh: Properly change slash direction for Windows hosts. [GH-218] 323 324 ## 0.2.0 (July 16, 2013) 325 326 BACKWARDS INCOMPATIBILITIES: 327 328 * "iso_md5" in the virtualbox and vmware builders is replaced with 329 "iso_checksum" and "iso_checksum_type" (with the latter set to "md5"). 330 See the announce below on `packer fix` to automatically fix your templates. 331 332 FEATURES: 333 334 * **NEW COMMAND:** `packer fix` will attempt to fix templates from older 335 versions of Packer that are now broken due to backwards incompatibilities. 336 This command will fix the backwards incompatibilities introduced in this 337 version. 338 * Amazon EBS builder can now optionally use a pre-made security group 339 instead of randomly generating one. 340 * DigitalOcean API key and client IDs can now be passed in as 341 environmental variables. See the documentatin for more details. 342 * VirtualBox and VMware can now have `floppy_files` specified to attach 343 floppy disks when booting. This allows for unattended Windows installs. 344 * `packer build` has a new `-force` flag that forces the removal of 345 existing artifacts if they exist. [GH-173] 346 * You can now log to a file (instead of just stderr) by setting the 347 `PACKER_LOG_FILE` environmental variable. [GH-168] 348 * Checksums other than MD5 can now be used. SHA1 and SHA256 can also 349 be used. See the documentation on `iso_checksum_type` for more info. [GH-175] 350 351 IMPROVEMENTS: 352 353 * core: invalid keys in configuration are now considered validation 354 errors. [GH-104] 355 * core: all builders now share a common SSH connection core, improving 356 SSH reliability over all the builders. 357 * amazon-ebs: Credentials will come from IAM role if available. [GH-160] 358 * amazon-ebs: Verify the source AMI is EBS-backed before launching. [GH-169] 359 * shell provisioner: the build name and builder type are available in 360 the `PACKER_BUILD_NAME` and `PACKER_BUILDER_TYPE` env vars by default, 361 respectively. [GH-154] 362 * vmware: error if shutdown command has non-zero exit status. 363 364 BUG FIXES: 365 366 * core: UI messages are now properly prefixed with spaces again. 367 * core: If SSH connection ends, re-connection attempts will take 368 place. [GH-152] 369 * virtualbox: "paused" doesn't mean the VM is stopped, improving 370 shutdown detection. 371 * vmware: error if guest IP could not be detected. [GH-189] 372 373 ## 0.1.5 (July 7, 2013) 374 375 FEATURES: 376 377 * "file" uploader will upload files from the machine running Packer to the 378 remote machine. 379 * VirtualBox guest additions URL and checksum can now be specified, allowing 380 the VirtualBox builder to have the ability to be used completely offline. 381 382 IMPROVEMENTS: 383 384 * core: If SCP is not available, a more descriptive error message 385 is shown telling the user. [GH-127] 386 * shell: Scripts are now executed by default according to their shebang, 387 not with `/bin/sh`. [GH-105] 388 * shell: You can specify what interpreter you want inline scripts to 389 run with `inline_shebang`. 390 * virtualbox: Delete the packer-made SSH port forwarding prior to 391 exporting the VM. 392 393 BUG FIXES: 394 395 * core: Non-200 response codes on downloads now show proper errors. 396 [GH-141] 397 * amazon-ebs: SSH handshake is retried. [GH-130] 398 * vagrant: The `BuildName` template propery works properly in 399 the output path. 400 * vagrant: Properly configure the provider-specific post-processors so 401 things like `vagrantfile_template` work. [GH-129] 402 * vagrant: Close filehandles when copying files so Windows can 403 rename files. [GH-100] 404 405 ## 0.1.4 (July 2, 2013) 406 407 FEATURES: 408 409 * virtualbox: Can now be built headless with the "Headless" option. [GH-99] 410 * virtualbox: <wait5> and <wait10> codes for waiting 5 and 10 seconds 411 during the boot sequence, respectively. [GH-97] 412 * vmware: Can now be built headless with the "Headless" option. [GH-99] 413 * vmware: <wait5> and <wait10> codes for waiting 5 and 10 seconds 414 during the boot sequence, respectively. [GH-97] 415 * vmware: Disks are defragmented and compacted at the end of the build. 416 This can be disabled using "skip_compaction" 417 418 IMPROVEMENTS: 419 420 * core: Template syntax errors now show line and character number. [GH-56] 421 * amazon-ebs: Access key and secret access key default to 422 environmental variables. [GH-40] 423 * virtualbox: Send password for keyboard-interactive auth [GH-121] 424 * vmware: Send password for keyboard-interactive auth [GH-121] 425 426 BUG FIXES: 427 428 * vmware: Wait until shut down cleans up properly to avoid corrupt 429 disk files [GH-111] 430 431 ## 0.1.3 (July 1, 2013) 432 433 FEATURES: 434 435 * The VMware builder can now upload the VMware tools for you into 436 the VM. This is opt-in, you must specify the `tools_upload_flavor` 437 option. See the website for more documentation. 438 439 IMPROVEMENTS: 440 441 * digitalocean: Errors contain human-friendly error messages. [GH-85] 442 443 BUG FIXES: 444 445 * core: More plugin server fixes that avoid hangs on OS X 10.7 [GH-87] 446 * vagrant: AWS boxes will keep the AMI artifact around [GH-55] 447 * virtualbox: More robust version parsing for uploading guest additions. [GH-69] 448 * virtualbox: Output dir and VM name defaults depend on build name, 449 avoiding collisions. [GH-91] 450 * vmware: Output dir and VM name defaults depend on build name, 451 avoiding collisions. [GH-91] 452 453 ## 0.1.2 (June 29, 2013) 454 455 IMPROVEMENTS: 456 457 * core: Template doesn't validate if there are no builders. 458 * vmware: Delete any VMware files in the VM that aren't necessary for 459 it to function. 460 461 BUG FIXES: 462 463 * core: Plugin servers consider a port in use if there is any 464 error listening to it. This fixes I18n issues and Windows. [GH-58] 465 * amazon-ebs: Sleep between checking instance state to avoid 466 RequestLimitExceeded [GH-50] 467 * vagrant: Rename VirtualBox ovf to "box.ovf" [GH-64] 468 * vagrant: VMware boxes have the correct provider type. 469 * vmware: Properly populate files in artifact so that the Vagrant 470 post-processor works. [GH-63] 471 472 ## 0.1.1 (June 28, 2013) 473 474 BUG FIXES: 475 476 * core: plugins listen explicitly on 127.0.0.1, fixing odd hangs. [GH-37] 477 * core: fix race condition on verifying checksum of large ISOs which 478 could cause panics [GH-52] 479 * virtualbox: `boot_wait` defaults to "10s" rather than 0. [GH-44] 480 * virtualbox: if `http_port_min` and max are the same, it will no longer 481 panic [GH-53] 482 * vmware: `boot_wait` defaults to "10s" rather than 0. [GH-44] 483 * vmware: if `http_port_min` and max are the same, it will no longer 484 panic [GH-53] 485 486 ## 0.1.0 (June 28, 2013) 487 488 * Initial release