github.com/kaixiang/packer@v0.5.2-0.20140114230416-1f5786b0d7f1/CHANGELOG.md (about)

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