github.com/sneal/packer@v0.5.2/CHANGELOG.md (about)

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