Vagrant v1.8.3 Release Notes
Release Date: 2016-06-10 // almost 8 years ago-
๐ฅ BREAKING CHANGES:
- The
winrm
communicator now shares the same upload behavior as thessh
communicator. This change should have no impact to most vagrant operations but may break behavior when uploading directories to an existing destination target. Thefile
provisioner should be the only builtin provisioner affected by this change. When uploading a directory and the destination directory exists on the endpoint, the source base directory will be created below the destination directory on the endpoint and the source directory contents will be unzipped to that location. Prior to this release, the contents of the source directory would be unzipped to an existing destination directory without creating the source base directory. This new behavior is more consistent with SCP and other well known shell copy commands. - The Chef provisioner's
channel
default value has changed from "current" to "stable". The "current" channel includes nightly releases and should be opt-in only. Note that users wishing to download the Chef Development Kit will need to opt into the "current" channel until Chef Software promotes into the "stable" channel. - The Arch Linux host capability for NFS removed support for rc.d in favor or systemd which has been present since 2012. Please see GH-7181 for more information.
๐ FEATURES:
- provider/docker: Allow non-linux users to opt-out of the host VM to run
Docker containers by setting
config.force_host_vm = false
in the Vagrantfile. This is especially useful for customers who wish to use the beta builds for Mac and Windows, dlite, or a custom provider. [GH-7277, GH-7298, 8c11b53] - provider/docker: New command:
docker-exec
allows attaching to an already-running container. [GH-7377, GH-6566, GH-5193, GH-4904, GH-4057, GH-4179, GH-4903]
๐ IMPROVEMENTS:
- core/downloader: increase box resume download limit to 24h [GH-7352, GH-7272]
- core/package: run validations prior to packaging [GH-7353, GH-7351]
- core/action: make
start
("vagrant up") run provisioners [GH-4467, GH-4421] - commands/all: Make it clear that machine IDs can be specified [GH-7356, GH-7228]
- commands/init: Add support for specifying the box version [GH-7363, GH-5004]
- commands/login: Print a warning with both the environment variable and local login token are present [GH-7206, GH-7219]
- communicators/winrm: Upgrade to latest WinRM gems [GH-6922]
- provisioners/ansible_local: Allow to install Ansible from pip, with version selection capability [GH-6654, GH-7167]
- provisioners/ansible_local: Use
provisioning_path
as working directory foransible-galaxy
execution - provisioners/ansible(both provisioners): Add basic config
validators/converters on
raw_arguments
andraw_ssh_args
options [GH-7103] - provisioners/chef: Add the ability to install on SUSE [GH-6806]
- provisioners/chef: Support legacy solo mode [GH-7327]
- provisioners/docker: Restart container if newer image is available [GH-7358, GH-6620]
- hosts/arch: Remove sysvinit and assume systemd [GH-7181]
- hosts/linux: Do not use a pager with systemctl commands [GH-7270]
- hosts/darwin: Add
extra_args
support for RDP [GH-5523, GH-6602] - hosts/windows: Use SafeExec to capture history in Powershell [GH-6749]
- guests/amazon: Add detection [GH-7395, GH-7254]
- guests/freebsd: Add quotes around hostname [GH-6867]
- guests/fedora: Add support for ipv6 static networks [GH-7275, GH-7276]
- guests/tinycore: Add support for shared folders [GH-6977, GH-6968]
- guests/trisquel: Add initial support [GH-6842, GH-6843]
- guests/windows: Add support for automatic login (no password prompting) [GH-5670]
- core: Add
--no-delete
and provisioning flags to snapshot restore/pop [GH-6879] - providers/docker: Allow TCP and UDP ports on the same number [GH-7365, GH-5527]
- providers/hyperv: Add support for differencing disk [GH-7090]
- providers/hyperv: Add support for snapshots [GH-7110]
- providers/hyperv: Reinstate compatibility with PS 4 [GH-7108]
- providers/virtualbox: Add linked clone support for Virtualbox 1.4 [GH-7050]
- synced_folders/nfs: Read static and dynamic IPs [GH-7290, GH-7289]
๐ BUG FIXES:
- core: Bump nokogiri version to fix windows bug [GH-6766, GH-6848]
- core: Revert a change made to the output of the identify file [GH-6962, GH-6929, GH-6589]
- core: Fix login command behind a proxy [GH-6898, GH-6899]
- core: Fix support for regular expressions on multi-machine
up
[GH-6908, GH-6909] - core: Allow boxes to use pre-release versions [GH-6892, GH-6893]
- core: Rescue
Errno:ENOTCONN
waiting for port to be open [GH-7182, GH-7184] - core: Properly authenticate metadata box URLs [GH-6776, GH-7158]
- core: Do not run provisioners if already run on resume [GH-7059, GH-6787]
- core: Implement better tracking of tempfiles and tmpdirs to identify file leaks [GH-7355]
- core: Allow SSH forwarding on Windows [GH-7287, GH-7202]
- core: Allow customizing
keys_only
SSH option [GH-7360, GH-4275] - core: Allow customizing
paranoid
SSH option [GH-7360, GH-4275] - command/box_update: Do not update the same box twice [GH-6042, GH-7379]
- command/init: Remove unnecessary
sudo
from generated Vagrantfile [GH-7369, GH-7295] - docs & core: Be consistent about the "2" in the Vagrantfile version [GH-6961, GH-6963]
- guests/all: Refactor guest capabilities to run in a single command - please see GH-7393 for the complete list of changes!
- guests/arch: Restart network after configuration [GH-7120, GH-7119]
- guests/debian: Do not return an error if ifdown fails [GH-7159, GH-7155, GH-6871]
- guests/freebsd: Use
pkg
to install rsync [GH-6760] - guests/freebsd: Use
netif
to configure networks [GH-5852, GH-7093] - guests/coreos: Detect all interface names [GH-6608, GH-6610]
- providers/hyperv: Only specify Hyper-V if the parameter is support [GH-7101, GH-7098]
- providers/virtualbox: Set maximum network adapters to 36 [GH-7293, GH-7286]
- providers/virtualbox: Do not fail when master VM from linked clone is missing [GH-7126, GH-6742]
- providers/virtualbox: Use scoped overrides in preparing NFS [GH-7387, GH-7386]
- provisioners/ansible: Fix a race condition in the concurrent generations of
the ansible inventory file, while running
vagrant up --parallel
[GH-6526, GH-7190] - provisioners/ansible_local: Don't quote the Ansible arguments defined in the
raw_arguments
option [GH-7103] - provisioners/ansible_local: Format json
extra_vars
with double quotes [GH-6726, GH-7103] - provisioners/ansible_local: Fix errors in absolute paths to playbook or galaxy resources when running on a Windows host [GH-6740, GH-6757]
- provisioners/ansible_local: Change the way to verify
ansible-galaxy
presence, to avoid a non-zero status code with Ansible 2.0 [GH-6793] - provisioners/ansible(both provisioners): The Ansible configuration files
detection is only executed by the
provision
action [GH-6763, GH-6984] - provisioners/chef: Do not use double sudo when installing [GGH-6805, GH-6804]
- provisioners/chef: Change the default channel to "stable" (previously it was "current") [GH-7001, GH-6979]
- provisioners/chef: Default node_name to hostname if present [GH-7063, GH-7153]
- provisioners/docker: Fix -no-trunc command option [GH-7085]
- provisioners/docker: Allow provisioning when container name is specified [GH-7074, GH-7086]
- provisioners/puppet: Use
where.exe
to locate puppet binary [GH-6912, GH-6876] - provisioners/salt: Move masterless config to apply to all platforms [GH-7207, Gh-6924, GH-6915]
- pushes/ftp: Create parent directories when uploading [GH-7154, GH-6316]
- synced_folders/smb: Do not interpolate configuration file [GH-6906]
- The