Commit graph

1362 commits

Author SHA1 Message Date
Brian Cain
11ddd0136d
(#9044) Show all box providers in command outdated
Prior to this commit, when the `--global` flag was used with the
`vagrant box outdated` command, it would ignore box providers and not
inform the user of all outdated boxes. This commit fixes that by
displaying each box within the users environment, and includes the
provider of the box in the message.
2018-01-08 09:43:28 -08:00
Brian Cain
c9e5a22bff (#9062) Deprecate :paranoid in favor of :verify_host_key
As of `net-ssh` version 4.2.0, the key :paranoid has been deprecated in
favor of using :verify_host_key. This commit updates Vagrants ssh config
to use the new key, and deprecates the use of :paranoid.
2018-01-05 10:02:45 -08:00
Chris Roberts
3eeff59329 Use custom types and messages for errors 2018-01-02 14:36:28 -08:00
Chris Roberts
98ec1af30e Add smb_start capability for darwin 2018-01-02 11:21:50 -08:00
Chris Roberts
68439f6bac Use sudo for sharing lists on darwin platform
On systems prior to high sierra the sharing binary
requires root user for access, so use sudo to get
full list output and inspect output.
2017-12-21 14:53:55 -08:00
Chris Roberts
81cbdae62a Make powershell error generalized 2017-12-21 09:55:19 -08:00
Chris Roberts
5a607d9248 Clean up SMB related errors 2017-12-21 09:55:19 -08:00
Chris Roberts
00fa50c296 SMB enhancements 2017-12-21 09:55:19 -08:00
Brian Cain
0d7ad9f18f
Merge pull request #9275 from zachflower/validate_ip_addresses
Add a clean error message for invalid IP addresses
2017-12-15 11:22:03 -08:00
Brian Cain
144c402f3b
Merge pull request #9252 from briancain/9055/master/pretty-print-nameerror-exceptions
Print more helpful error message for NameEror exceptions
2017-12-15 09:19:26 -08:00
Brian Cain
627babe15e (#9055) Print more helpful error message for NameEror exceptions
This commit adds some additional handling for when Vagrant loads config
files. Instead of showing the basic ruby exception, it prints a more
helpful error message and tries to direct the user to the line number
and file where the exception is occuring.
2017-12-14 15:31:48 -08:00
Zachary Flower
4a4183398b Add a clean error message for invalid IP addresses 2017-12-14 14:57:21 -07:00
Jan Vansteenkiste
e5bebb0b9f
Disable (if/net)plugd on gentoo/openrc. Fixes #9260.
When ifplugd is installed, the process is backgrounded and we get the
wrong return value.
2017-12-14 06:02:28 +01:00
Zachary Flower
abb1149190 Raise an exception when the template cannot be found, and update tests accordingly 2017-11-17 12:20:03 -07:00
Brian Cain
401f1d521e
Merge pull request #9131 from bpietraga/fix-outputh-pathname-folder-creation
Fix --output path with specified folder
2017-11-15 09:55:32 -08:00
Bernard Pietraga
b026be7cb3 Fix --output path with specified folder 2017-11-04 12:00:55 +01:00
Brian Cain
d8bffd201f Add delay for parallel destroy without force, restructure state checking
This commit adds better messaging to the user if the parallel flag is
used without the force flag. It also makes the state checking based on
the delta between the initial and final states of the guests due to the
fact that there is no guarantee what the "destroyed" state id will be
between providers.
2017-10-31 13:52:07 -07:00
Jonathan LaBroad
56861296fa Added tests and validation for python_version parameter 2017-10-05 06:25:36 -04:00
Chris Roberts
2451c859e8 Merge pull request #8746 from mastersin/alt
Add ALT Linux platforms guest detection and network configuration support (#8745)
2017-09-06 17:49:38 -07:00
Chris Roberts
34addec796 Merge pull request #8913 from mitchellh/gildegoma/6570-ansible-compatibility-mode
Ansible: Add "compatibility_mode" and "*become*" common options; Move "version" to common options
2017-09-06 13:18:08 -07:00
Gilles Cornu
4dc3e59b08
provisioners/ansible(both): Review of PR #8913
- Keep the Programming Errors with corresponding Exception class and
  en.yml message template. Fix the alphabetical order in errors.rb by
  the way.
- Fix English wording in the documentation and en.yml messages
- Use StandardError for unknown error rescuing.

Thanks @chrisroberts!
2017-09-06 17:12:50 +02:00
Gilles Cornu
dec09f350b
provisioners/ansible: Fix wording and link in i18n en.yml messages 2017-09-06 17:12:42 +02:00
Gilles Cornu
dc3b6341e2
provisioners/ansible: Check compatibility conflicts
Vagrant will verify that the current Ansible version does support the
requested compatibility mode (only applicable if not "auto", of course).

As mentioned in the documentation, there is no sanity checks between
`version` option and `compatibility_mode` option.

With this change, the host-based provisioner is also improved to
execute only once the "ansible" command (and store the gathered
information for multiple usages like version requirement and
compatibility checks). On the other hand, the guest-based provisioner
can still potentially execute "ansible" twice (once in the
AnsibleInstalled cap, and via "gather_ansible_version" function via
Base::set_compatibility_mode).
2017-09-06 17:12:40 +02:00
Gilles Cornu
8c0df3d046
provisioners/ansible: Move version to common options
Before this change, only the ansible_local provisioner supported this
option (for ansible version requirement, and pip installation). Now, the
ansible host-based provisioner can also require a exact ansible version.

Resolve #8914

Note: this has been added as part of #6570 resolution, since the
introduction of the `compatibility_mode` auto-detection made both
provisioners made capable to detect ansible version.

Pending: optimize the code to avoid duplicated executions of "ansible
--version" command.
2017-09-06 17:12:35 +02:00
Gilles Cornu
a327e34861
provisioners/ansible: Validate compatibility_mode
- Use `'auto'` instead of `nil` for the auto-detection mode
- Add strict validation and related error message
2017-09-06 17:12:32 +02:00
Gilles Cornu
8834afbd8e
provisioners/ansible(both): Add compatibility mode
With this change, it is now possible to get rid of many deprecation
messages successively introduced in Ansible 1.9, and 2.0. More
interesting, the generated inventory will contain the recommended
variable names (e.g. `ansible_host` instead of `ansible_ssh_host`)
when the compatibility mode is set to '2.0'.

Details:

- Add `compatibility_mode` option to control the Ansible parameters
  format to be used. The value corresponds to the minimal version
  supported. For the moment, possible values are '1.8' (corresponding to
  Vagrant's former behaviour) or '2.0'.
  Note that a dynamic inventory generated in compatibility mode '2.0'
  is not supported by Ansible 1.x. On the other hand, Ansible 2.x so far
  supports inventory format generated by the compatibility mode '1.8'.

- Add compatibility mode auto-detection, based on the available Ansible
  version. This is the default behaviour in order to bring a maximum of
  user friendliness. The drawback of this approach is to let potential
  compatibility breaking risks, for `ansible` provisioner setups that
  already integrate Ansible 2.x **AND** rely on the existence of
  the generated `_ssh` variable names. Thanks to the vagrant warnings
  (and its release notes), I argue that it is worth to offer
  auto-detection by default, which offers a sweet transition to most
  users.

- Add `become`, `become_user` and `ask_become_pass` options and their
  backwards compatible aliases. The legacy options are now deprecated.

Note that we intentionally didn't provide a '1.9' compatibility mode,
as it would add extra-complexity for practically no added-value.
To my knowledge, the Ansible 2.x series haven't introduced yet any major
changes or deprecations that would motivate to introduce a higher
version compatibility mode (to be confirmed/verified).

Resolve GH-6570

Still Pending:

- Optimization: Reduce the number of `ansible` command executions.
  Currently two exec calls will be performed when the compatibility
  mode auto-detection is enabled (i.e. by default). We could make the
  provisioner a little bit smarter to only execute `ansible` only once
  in any situation (by combining "presence" and "version" checks).

- User-friendliness: Add better validator on `compatibility_mode`
  option, and shows a warning or an error instead of the silent
  fallback on the auto-detection modus.

- Test coverage: All the added behaviours are not fully covered yet.
2017-09-06 17:12:22 +02:00
Brian Cain
f0f60a1075 (#4666) Remove duplicate export folders before writing /etc/exports
Prior to this commit, if you set up multiple folders to export with NFS
on linux with the exact same hostpath, the template used to write
/etc/exports would end up placing the same path with the same IP in
/etc/exports and cause an error preventing the folders from being
properly mounted. This commit fixes that by first looking at which
folders are being exported and if there are any duplicates. If so,
remove the duplicates and only export 1 hostpath folder. If these
duplicate folders have differing nfs linux options, an exception must be
thrown because we cannot assume which options the user intended to
export with.
2017-09-05 16:05:14 -07:00
Brian Cain
432cb8d915 (#7826) Add salt_arg option for passing flags to salt tool
This commit introduces the salt_arg option that allows a user to pass
additional command line flags to the `salt` tool when provisioning with
a master setup.

It also adds additional config validation to ensure that both
`salt_args` and `salt_call_args` is an array.
2017-08-29 14:11:06 -07:00
Chris Roberts
f660c19084 Error when compose and force_host_vm are enabled together 2017-08-22 11:36:26 -07:00
Chris Roberts
4eb8d7a098 Merge pull request #8839 from chrisroberts/windows/req-min-ps
Validate powershell prior to powershell use
2017-08-21 13:48:08 -07:00
Brian Cain
a2d39742a7 Merge pull request #8775 from lucky-sideburn/master
Added exception if chef.node_path is defined on Vagrantfile but the directory does not exist locally
2017-08-01 13:22:23 -07:00
Eugenio Marzo
7e436c6971 fixed warnings about missing folders for Chef Solo and Zero 2017-08-01 21:37:11 +02:00
Chris Roberts
ad5bc23088 Validate powershell prior to powershell use
Adds powershell validation to ensure powershell is available on
the PATH and checks powershell version to ensure meets the
defined minimum powershell version.
2017-07-31 15:05:41 -07:00
Chris Roberts
3564b17925 Include plugin update option to vagrant upgrade error.
Fixes #8441
2017-07-26 15:04:44 -07:00
Eugenio Marzo
c9b65bd129 produce error when node_path is defined but the directory does not exist on disk locally 2017-07-22 11:05:34 +02:00
Eugenio Marzo
94a94648dd change requested after a PR review 2017-07-22 07:58:38 +02:00
Eugenio Marzo
dd3d782659 Added exception if chef.node_path is defined on Vagrantfile but the directory does not exist locally 2017-07-12 15:27:10 +02:00
Chris Roberts
7e4a34c323 Merge pull request #8761 from chrisroberts/communicator/win-ssh-tmp
WinSSH communicator updates
2017-07-07 11:46:53 -07:00
Chris Roberts
cef38eefd0 Add public key capability to Windows guests for winssh communicator 2017-07-07 11:26:32 -07:00
Brian Cain
b1548a2eb6 (#5160) Only rsync-auto current working dir with docker provider
Prior to this commit, when users invoked the `rsync-auto` command using
the docker provider with boot2docker, vagrant would rsync all known
containers using the boot2docker vm rather than the current working dir.
This commit updates that behavior to ensure that only the current
working dirs vagrant machines will be rsynced.
2017-07-06 15:05:42 -07:00
Evgeny Sinelnikov
3dd90aa955 Add ALT Linux platforms guest detection and support
* ALT Linux platforms is an original rpm based distribution
forked as Mandrake Russian Edition Spring at 2001 year
* Distributions of ALT Linux use etcnet (https://www.altlinux.org/Etcnet) as
internal network configuration system needs for configure_networks support
2017-07-03 00:25:33 +03:00
Joe Hosteny
0b305cd4ee Fix #8730. Use 'ip route' in lieu of 'route' in debian dhcp template 2017-06-28 13:18:51 -04:00
Brian Cain
0225d63055 Merge pull request #8722 from briancain/add-post-setup-proc-for-docker
Add post-install provisioner to docker provisioner
2017-06-28 08:32:23 -07:00
Chris Roberts
d1a589c59f Merge pull request #8724 from chrisroberts/fix/windows-cwd-check
Set encoding when reading/writing cwd file
2017-06-27 19:21:16 -07:00
Brian Cain
a05d95bd0a (#7139) Add post-install provisioner to docker provisioner
Prior to this commit, if a user attempted to configure
`/etc/default/docker` through vagrant prior to installation, the package
manager would not override an existing configuration and installing
docker would then fail. This commit fixes this by introducing a
`post_install_provisioner` that allows users to define a provisioner
block that will run after docker has been installed, allowing users to
configure `/etc/default/docker` how they want.
2017-06-27 16:01:23 -07:00
Chris Roberts
eb9ed1b39e Update wording as machine rename is not always required 2017-06-27 13:36:42 -07:00
Chris Roberts
5f955c3d38 Convert atlas references to vagrant cloud 2017-06-23 10:01:51 -07:00
Brian Cain
378aae8782 Merge pull request #8653 from briancain/7188/master/unify-snapshot-restore-failures
Clean up vagrant snapshot restore/delete error messages
2017-06-07 11:47:38 -07:00
Brian Cain
87b7514603 (#7188) Clean up vagrant snapshot restore/delete error messages
This commit adds some better handling around the snapshot restore and
delete commands for the virtualbox provider. If a user attempts to restore from
a vm that does not exist, instead of exiting 0 it will raise an
exception saying the virtual machine has not been created yet.
Addtionally, if a user attempts to restore from a snapshot id that does
not exist, instead of printing a complicated exception from the
virtualbox cli tool, it prints a more useful error message telling the
user that the snapshot does not exist.
2017-06-07 09:12:20 -07:00
Fernando Seror
15871a481b Warn about changes to CWD on every machine action
Whenever the path where the machine was first created changes, Vagrant
will now show just one warning when an action is run on the machine.

The idea is that if a user copies the machine over to a different
directory with the idea of running two different machines, this warning
will now help the user determine how to make that work.
2017-06-05 13:25:30 -07:00
Brian Cain
875aee3636 Merge pull request #8632 from gtbono/fix_typo_link
Fixes typo in broken link to documentation
2017-06-01 09:08:11 -07:00
Brian Cain
d0f1f39fa6 Merge pull request #8636 from briancain/7118/master/handle-invalid-box-names
Handle box names that are URLs
2017-05-31 16:16:38 -07:00
Brian Cain
f1d08aa629 (#7118) Handle box names that are URLs
Prior to this commit, if a user set a URL for the name of a box, vagrant
would not warn the user about using box_url instead. This would lead to
some difficult user experiences around the various box commands due to
the box name being a full URL. This commit introduces a warning to the
user and lets them know to instead use box_url.
2017-05-31 15:25:05 -07:00
Giovanni Tempobono
68b01d4288 Fixes typo in broken link to documentation 2017-05-31 14:40:06 +00:00
Brian Cain
eadb0ac831 Raise exception if provider doesn't have snapshot capability
Prior to this commit, if a user attempted to use the `vagrant snapshot
save` or `vagrant snapshot list` commands on a vm whose provider did not
support snapshots, it would simply print a warning. This commit changes
that behavior by instead raising an error.
2017-05-26 15:22:25 -07:00
Brian Cain
6ddba4f7b3 (#7810) Enforce unique snapshot names
Prior to this commit, the vagrant snapshot plugin would save snapshots
with existing names which lead to duplicate snapshot names being saved.
This commit fixes that by checking to see if the given snapshot name
already exists and if so, fails telling the user the given snapshot name
already exists. If a user passes a --force flag, vagrant will first
delete the existing snapshot, and take a new one with the given name.
2017-05-25 16:28:17 -07:00
Chris Roberts
36ecd40c52 Support optional detach and pass blocks through to execution. 2017-05-12 15:09:30 -07:00
Chris Roberts
ed8378bcf5 Add output for incorrect type on compose_configuration option 2017-05-12 15:09:30 -07:00
Chris Roberts
d1c1c175a0 Support modifications of composition outside services 2017-05-12 15:09:30 -07:00
Chris Roberts
3c44ce9742 Support vbox provider within WSL rootfs. Make Windows access easier.
Enables proper setup of VMs started from within WSL rootfs paths. Updates
setup for Windows access when working within the WSL to auto-detect settings
instead of relying on user defined environment variables.
2017-05-12 13:11:53 -07:00
Chris Roberts
37901cd43c Merge pull request #8570 from chrisroberts/enhancement/wsl-support
Add support for running within WSL
2017-05-10 13:50:47 -07:00
Chris Roberts
2f5e15da55 Fetch first network device and pass to template for rendering 2017-05-10 12:44:37 -07:00
Chris Roberts
e8e38a4007 Halt Vagrant if within WSL and attempting to operate out of rootfs 2017-05-08 15:21:39 -07:00
Chris Roberts
4df4f77bf6 Match WSL installed Vagrant with Windows installed Vagrant 2017-05-08 10:21:01 -07:00
Chris Roberts
83b0c87f52 Support running Vagrant within the Windows Subsystem for Linux 2017-05-08 10:21:01 -07:00
Chris Roberts
e5e0274ef5 Update hyperv and docker providers to raise exception on SSH when machine is not ready
This makes the behavior of the docker and hyperv provider consistent with the
virtualbox provider by raising an error on ssh actions if the machine is not
created or not running.

Fixes #8508
2017-05-05 14:01:12 -07:00
Chris Roberts
78e2bb513c Merge pull request #8531 from chrisroberts/network/guest-rhel
guests/rhel: Update network configuration
2017-05-01 15:56:25 -07:00
Chris Roberts
414184b76b guests/rhel: Update network configuration
Properly detects NetworkManager on guest as well as devices controlled
by NetworkManager. Provides configuration option to enable/disbale
NetworkManager control on devices.
2017-04-26 13:15:33 -07:00
Chris Roberts
2acded113c Retry SSH connection on Errno::ECONNABORTED
In some cases the SSH connection may be aborted while waiting
for setup. This includes aborted connections in the list of
applicable exceptions to retry on while waiting for the connection
to become available.

Fixes #8520
2017-04-25 13:38:24 -07:00
Chris Roberts
e52821364a Merge pull request #8407 from gh2k/gentoo-systemd
Add support for gentoo guests that use systemd
2017-04-16 14:17:19 -07:00
Chris Roberts
ca557249a5 Add note on forwarded_port and include host_ip configuration 2017-04-05 15:13:24 -07:00
Chris Roberts
df069deac0 Validate plugin sources and report errors if detected. 2017-04-04 17:53:04 -07:00
Simon Detheridge
3a3216ae0c gentoo/guest: #8406 support systemd when configuring net 2017-03-24 16:11:16 +00:00
Chris Roberts
256ce3b0d5 Merge pull request #8264 from hasyimibhar/command-validate
Add validate command
2017-03-23 09:52:12 -07:00
Chris Roberts
d862133038 Remove hardcoded interface name from template 2017-03-06 14:18:26 -08:00
Chris Roberts
f48b363093 Merge pull request #8089 from jopi2016/master
enhance untar_failure message
2017-03-06 09:05:25 -08:00
Chris Roberts
e2acb5250a Add command deprecation helper module 2017-02-24 06:22:39 -08:00
guessi
1078c37807 Missing box-version for Vagrantfile.min.erb
Signed-off-by: guessi <guessi@gmail.com>
2017-02-14 11:59:20 +08:00
Hasyimi Bahrudin
cbda9f0906 Add validate command for validating Vagrantfile 2017-02-07 13:43:49 +08:00
mammele
14e6405792 enhance untar_failure message 2016-12-06 16:44:47 +01:00
Chris Roberts
0cba6bf535 Expand on plugin repair failure output 2016-11-28 07:48:16 -08:00
Chris Roberts
53b9f1747c Allow plugin_init_error to provide all information. Include final reset on specifications. 2016-11-17 16:40:51 -08:00
Chris Roberts
e2d96f942f Provide nice error output when plugin initialization fails
Include extra logging during initialization to display error if encountered
and solution set prior to performing activations.
2016-11-15 15:50:39 -08:00
Chris Roberts
0f720a4386 Merge pull request #7985 from chrisroberts/shell-provisioner/checksum
Add md5 and sha1 checksum support to Downloader.
2016-11-14 13:19:22 -08:00
Chris Roberts
beffa70941 Downloader checksum output information and digester usage
Add more output information around type of checksum being validated.
Use builtin Digest#file to read target file for generation of hexdigest.
2016-11-14 10:22:25 -08:00
Chris Roberts
da45ca707c Add md5 and sha1 checksum support to Downloader.
Allows checksum validation on downloaded files via Util::Downloader
using MD5 and/or SHA1 checksums. This also integrates checksum validation
support with the shell provisioner for downloaded remote files.
2016-11-09 16:05:39 -08:00
Chris Roberts
f045f74d86 Only proceed if confirmation is matched. Do not continue if user aborted. 2016-11-07 19:25:32 -08:00
Chris Roberts
b15ef3a6ff Add plugin expunge command to remove all user installed plugins 2016-11-07 18:48:51 -08:00
Chris Roberts
5d68c8c30b Include plugin repair command 2016-11-07 18:48:51 -08:00
Chris Roberts
d1a778dbfb Include error handling when subprocess commands fail 2016-10-31 07:42:30 -07:00
Chris Roberts
c39b3fbb76 guests/openbsd: Check package installation after installing package
The `pkg_add` command will return `0` when a package requested for
installation is not found. This adds a validation check to ensure
the rsync package is actually installed on the guest.
2016-10-25 12:16:52 -07:00
Chris Roberts
4ddc9b0804 Merge pull request #7674 from voxik/fix-permissions
Remove executable permissions.
2016-10-06 16:25:53 -07:00
Chris Roberts
bbac718925 Add NFSv4 warning and information 2016-08-19 09:33:36 -07:00
Zack Train
cb70749bd8 redux of pr 7398 for ssh-agent key fix 2016-08-11 11:48:10 -07:00
Vít Ondruch
ed0641e295 Remove executable permissions.
Introduced in 37940e735.
2016-08-03 14:34:52 +02:00
Seth Vargo
7a4fb236bb
Fix typo
Fixes GH-7633
2016-07-24 21:18:16 -04:00
Seth Vargo
3b2ffae400
guests/bsd: Print a very descriptive error when mounting vbox folders
BSD-based guests do not support VirtualBox shared folders. This is a
common source of confusion in Vagrant. This new error clearly explains
that this is not a bug in Vagrant and provides instructions on how to 
disable them.
2016-07-18 21:12:58 -04:00
Seth Vargo
7e88266999
guests/linux: Properly escape and retry vbox shared folder mounting 2016-07-18 21:12:57 -04:00
Seth Vargo
ccc40eb19d
guests/arch: compute netmask
Arch expects /24 for netmask, but users usually specify as a netmask
block like 255.255.255.0. This automatically converts it.
2016-07-18 21:12:56 -04:00
Seth Vargo
084d62b5a6
guests/fedora: Move as a child of redhat
Fedora should have been a child of redhat for awhile now...
2016-07-18 21:12:54 -04:00
Seth Vargo
b621cc44fb
guests/rhel: Switch to predicable network interface names 2016-07-18 21:12:53 -04:00
Seth Vargo
caafb936f0
guests/gentoo: Use predictable network interface names 2016-07-18 21:12:53 -04:00
Seth Vargo
10b12ce393
guests/arch: Search for FQDN hostname 2016-07-18 21:12:51 -04:00
Seth Vargo
3eebff5bf3
guests/funtoo: Behave like a gentoo guest 2016-07-18 21:12:51 -04:00
Seth Vargo
177b7784dd
guests/darwin: Allow ipv6 static networks 2016-06-19 12:01:52 -04:00
Seth Vargo
6284a9ac50
guests/bsd: Move NFS mounting logic into shared
A number of the BSD guests used very old mounting options or just
ignored some parameters entirely. This fixes that.

- Closes #7474
- Fixes #7466
2016-06-17 21:04:23 -04:00
Seth Vargo
45e71eca15 Revert "Set max_network_adapters to 36 for Virtualbox" 2016-06-11 01:04:58 +02:00
Gilles Cornu
bb9dba56ac provisioners/ansible_local: add "pip" install_mode
These changes have been validated against the following guest systems:
- Debian 7 and 8
- Ubuntu 12.04, 14.04 and 16.04
- Fedora 21 and 23
- CentOS 7
- OracleLinux 7
- Scientific Linux 7

At the moment, the pip setup (via get-pip.py script) is not working for
RHEL6-like systems (CentOS 6.6, OracleLinux 6.5, Scientific Linux 6),
because Python 2.6 has been deprecated and is no longer supported by
Python core team. I consider this limitation with low priority in
Vagrant context.

The `:pip` install_mode is currently not implemented for the following
platforms:
- OpenSUSE
- ArchLinux
- FreeBSD

Known Issue: By using get-pip.py script, any previous pip installation
will be most probably overrided. This could be an issue for Python
developers who would prefer to keep their base box setup untouched. In
future iteration, it could be possible to choose to reinstall/upgrade
pip or not. issue for Python developers who would prefer to keep their
base box setup untouched. In future iteration, it could be possible to
choose to reinstall/upgrade pip or not.

Resolve GH-6654

Resolve GH-7167 as the `version` option is now considered to select the
version of Ansible to be installed.
2016-06-08 23:53:58 +02:00
Seth Vargo
94af771b71
guests/suse: Configure networks in one command
This also uses the new predictable network naming.
2016-06-06 11:58:41 -04:00
Seth Vargo
0bdf6f5ad4
guests/slackware: Configure networks in one command
This also switches to using new predictable naming for networks.
2016-06-06 11:58:40 -04:00
Seth Vargo
2b08151977
guests/freebsd: Configure predictable networks in a single command
This commit refactors the freebsd networking to:

1. Use predictable network naming
2. Properly handle DHCP vs static networks on up and reload [GH-5852]
3. Perform all networking configuration in a single command to prevent
   partial configuration.
2016-06-06 11:58:29 -04:00
Seth Vargo
d9b8352a58
guests/debian: Use predictable naming for network configuration 2016-06-06 11:58:28 -04:00
Gilles Cornu
a7ee56459b provisioners/ansible(both): fix ansible config files presence checks
With this change, the presence of Ansible configuration files (like
playbook file, inventory path, galaxy role file, etc.) is no longer
performed by the `config` classes, but by the `provisioner` classes
(at the beginning of the provision command).

This change fixes several issues:

- Resolve #6984 as `provision` method are only executed when remote
  (ssh) communication with the guest machine is possible.
- Resolve #6763 in a better way than 4e451c6 initially did.
- Improve the general provisioner speed since the `config` checks are
  actually triggered by many vagrant actions (e.g. `destroy`,...), and
  can also be triggered multiple times during a vagrant run (e.g. on
  callback request made by the machine provider).

Unlike the former `config`-based checks, the provision action won't
collect all the invalid options, but only report the first invalid
option found and abort the execution.

Some unit tests were not implemented yet to save my scarce "open source
contribution time" for other important issues, but they should be done
at last via GH-6633.
2016-06-01 06:40:23 +02:00
Seth Vargo
bf96b3348b
provider/docker: Add docker-exec command
This adds a new core command, `docker-exec`, which allows the user to
exec into an already-running container.

- Fixes #6566
- Fixes #5193
- Fixes #4904
- Fixes #4057
- Fixes #4179
- Fixes #4903
2016-05-31 20:05:26 -04:00
Seth Vargo
e1ea81847d Merge pull request #7276 from ryanheffernan/fix/master/issue7275
Adding Fedora IPv6 Static Address Support
2016-05-31 17:55:41 -04:00
Seth Vargo
9ca4a8d800
Remove sudo from generated Vagrantfile
This is unneeded because, by default, provisioners run as a privileged
user.

Fixes GH-7295
2016-05-30 20:47:13 -04:00
Seth Vargo
bba1cbc72f
Add --box-version to vagrant init
This also adds a test suite for that particular command, updates the
documentation, and adds some examples.

Fixes GH-5004
2016-05-30 15:33:58 -04:00
Seth Vargo
aaef5da41d
Use a different info message when image changed 2016-05-29 14:38:18 -04:00
Seth Vargo
b11f8cbd1b Merge pull request #7293 from ericpulvino/master
Set max_network_adapters to 36 for Virtualbox
2016-05-29 00:55:44 -04:00
Seth Vargo
efdb148f61
Move pre-flight package validation to middleware
This commit separates the scratch and output directory creation from the
main package middleware into its own PackageSetupFolders middleware.
Additionally, the validation that ensures an output file does not exist
is moved into a validation function that can be shared across multiple
methods.

This refactor permits a pre-flight check to ensure box packaging would
be successful before actually stopping the VM.

Fixes GH-7351
2016-05-27 17:07:04 -04:00
Thom May
693d4dd5f1
Support Chef Solo local + legacy modes
Signed-off-by: Thom May <thom@may.lt>
2016-05-19 15:27:17 +01:00
Eric Pulvino
ffb866ac7f Updated the error message for too many adapters. 2016-05-12 21:58:05 -04:00
Tieme van Veen
b8ca105602 Added 'vagrant reload' info on collision_error 2016-05-10 10:56:22 +02:00
Ryan Heffernan
d7714f058d Added basic unit test 2016-04-30 13:22:52 -07:00
Ryan Heffernan
76e3ad988f Adding static IPv6 address support for Fedora 2016-04-30 12:27:48 -07:00
Gilles Cornu
b6a3f0e8f1 Merge pull request #7103 from mitchellh/gildegoma/fix-6726
ansible_local: use double quoting for 'extra-vars', 'limit' and 'start-at-task' options (except if defined via `raw_arguments` option)
2016-04-21 00:29:43 +02:00
Gilles Cornu
b2286388f0 provisioners/ansible: add basic config validators
With this change, the `raw_arguments` and `raw_ssh_args` options are:
- STILL automatically converted as an Array when they are set a String
  (no behaviour change)
- rejected if they are not of Array data type otherwise

Additional Notes:
- the 'as_array' tiny helper has been removed since it was no longer
  used.
- there is for now no deeper validation (i.e. verifying that the Array
  elements are only *String* objects)
2016-04-20 23:54:19 +02:00
Seth Vargo
8319f159b6 Use hostname if no node_name is set
Fixes GH-7063
2016-03-17 20:15:11 -05:00
Seth Vargo
63beaaef14 Merge pull request #6963 from mitchellh/sethvargo/str_ver
Always use a string for Vagrantfile version
2016-02-02 09:48:19 -05:00
Seth Vargo
b24e69eb60 Always use a string for Vagrantfile version 2016-02-02 09:43:28 -05:00
Seth Vargo
3f6ac05d7c Revert "Escape identify file path" 2016-02-02 09:38:53 -05:00
Prayag Verma
3f8274f525 Typo fix
Fix Spelling mistake -
constriants > constraints
2016-01-31 01:46:11 +05:30
Seth Vargo
7c3330696d Fix typo 2016-01-25 13:18:13 -05:00
Seth Vargo
1166800b65 Use SSL and HTTPS links where appropriate 2016-01-25 13:14:54 -05:00
Mitchell Hashimoto
02960dedf9 locales: add missing docker translation 2015-12-24 12:41:39 -08:00
Mitchell Hashimoto
739d29e8fa Merge pull request #6612 from reedloden/virtualbox-checksum
Add checksum validation for the VirtualBox installs on Windows and OS X
2015-12-14 15:39:46 -08:00
Seth Vargo
5c09e94f1a Clarify that support might be in a later Vagrant version 2015-12-07 10:57:26 -05:00
Gilles Cornu
3a793a2721 provisioners/ansible(both): minor tweak in en.yml
Related to #3539.
2015-12-05 07:10:11 +01:00
Kamjar Gerami
b7e9437a77
#3539 - Fixed syntax, language and logic according to comments made by reviewer in PR #6639 2015-12-04 10:05:07 +01:00
Kamjar Gerami
934bcf9419 #3539 - Can't use alphanumeric patterns for box names in ansible.groups: Host Range Pattern Regex, notification and updates to provisioning web source 2015-12-04 01:13:59 +01:00
Reed Loden
7d81728e45 Add checksum validation for the VirtualBox installs on Windows and OS X
Use Vagrant::Util::FileChecksum to validate the downloaded VirtualBox
installers.

SHA-256 checksums for VirtualBox files are available at
https://www.virtualbox.org/download/hashes/5.0.10/SHA256SUMS.

Fixes #6611.
2015-11-28 00:04:41 -08:00
Seth Vargo
8f420837a4 Escape identify file path 2015-11-23 20:00:12 -05:00
Seth Vargo
930e166b47 Add :env option to shell provisioner 2015-11-23 19:29:35 -05:00
Mitchell Hashimoto
601f7d41e5 synced_folders/smb: use cred files [GH-4230] 2015-11-23 11:11:50 -08:00
Mitchell Hashimoto
1405395d81 core: catch EINVAL on setting env vars [GH-6017] 2015-11-23 09:39:51 -08:00
Gilles Cornu
2789ce61e0 Merge branch 'gildegoma/2718-ansible-galaxy' into master 2015-11-21 05:21:41 +01:00
Seth Vargo
f5a0c3ed5b Deprecate docker.version 2015-11-19 18:37:57 -08:00
Seth Vargo
ec85548bd6 Support arrays for data_bags_path
Fixes GH-5988
2015-11-19 16:17:42 -08:00
Seth Vargo
df207d2637 Require nodes_path for Chef Zero provisioning
Fixes GH-6110
2015-11-19 15:52:26 -08:00
Gilles Cornu
5659c3f2a0 provisioners/ansible: apply @sethvargo comments
Follow-up of code review of PR #6529
2015-11-19 23:42:01 +01:00
Seth Vargo
9559fc549c Automatically generate a node_name for Chef
This is required because the Chef Server almost always needs a node name to
interact. This will default to the hostname, but that's always going to be
`vagrant.vm`, which will collide easily.

This generates a random hostname with `vagrant-` as the prefix and stores the
result in the machine's data directory.
2015-11-19 11:38:33 -08:00
Seth Vargo
a1a3824e35 Do not throw an error when the Chef node_name is nil 2015-11-18 16:56:31 -08:00
Seth Vargo
244069d5d7 Merge pull request #6049 from bdwyertech/bdwyertech-patch-2
Chef Zero - Fix 'nodes_path' Support
2015-11-18 16:46:02 -08:00
Seth Vargo
f95b7914f7 Merge pull request #6515 from oliviermeurice/slack_net_conf
Slack net conf
2015-11-18 16:04:17 -08:00
Mitchell Hashimoto
538ffcd292 clarify guest to host in forwarded port output [GH-4796] 2015-11-18 15:55:48 -08:00
Mitchell Hashimoto
9e1a119a4b Merge pull request #6475 from nikelmwann/linux-host-use-xfreerdp
Prefer xfreerdp for RDP connections on Linux hosts.
2015-11-18 15:12:47 -08:00
Mitchell Hashimoto
d69d7047b2 Merge pull request #6386 from legal90/fix-osx-nic-order
Fix network configuration in OS X (Darwin) guests
2015-11-18 14:33:51 -08:00
Mitchell Hashimoto
37940e7350 Merge pull request #6185 from marc-ta/elevated_interactive
Elevated interactive
2015-11-18 12:46:39 -08:00
Mitchell Hashimoto
f1827602f2 Merge pull request #6502 from dmacvicar/fix-dhcp-on-suse
SUSE-flavored systems use STARTMODE and not ONBOOT
2015-11-18 11:05:36 -08:00
Mitchell Hashimoto
8bbf6f56f4 Merge pull request #4400 from mwrock/ps-cmd
Add a ps command to vagrant that drops the user into a remote powershell shell
2015-11-18 10:41:36 -08:00
Gilles Cornu
c1f3d114f5 provisioners/ansible(both): add galaxy support
Close #2718
2015-11-17 22:08:29 +01:00
Gilles Cornu
a0576349fe provisioners/ansible(both): reorganize i18n texts
These adaptations will make even more sense with the upcoming
introduction of `ansible-galaxy` support.
2015-11-17 22:08:18 +01:00
Olivier Meurice
fd4c5f02d3 Add network configuration plugin template files for Slackware Linux 2015-11-12 14:33:37 +01:00
Gilles Cornu
c6ef73a6fa Merge 'gildegoma/2103-ansible-local-v2'
Resolve conflict in CHANGELOG.md
2015-11-10 23:05:29 +01:00
Seth Vargo
a115928d98 Update output message to include --all 2015-11-09 09:36:27 +00:00
Duncan Mac-Vicar P
a21d5be705 SUSE-flavored systems uses STARTMODE and not ONBOOT
As described in /etc/sysconfig/network/ifcfg.template

Static template was already using the right one, but the dhcp configuration seems
to be copied from a Fedora/Redhat template.
This fixes the issue that the interface does not come up after reboot.
2015-11-08 16:09:04 +01:00
Gilles Cornu
9bfdaf7e75 provisioners/ansible: introduce ansible_local
With this change, the existing host-based Ansible provisioner is
refactored to share a maximum of code with this new guest-based Ansible
provisioner.

At this stage of development, the existing unit tests are intentionally
modified as little as possible, to keep safe the existing funtionalities.

Other issues resolved by this changeset:
 - Display a warning when running from a Windows host [GH-5292]
 - Do not run `ansible-playbook` in verbose mode when the `verbose` option
   is set to an empty string.
2015-11-08 10:42:48 +01:00
Mitchell Hashimoto
baea923e9c commands/up: automatically install providers 2015-11-05 13:58:15 -08:00
Mitchell Hashimoto
abb1030f10 hosts/windows: install VirtualBox 2015-11-04 19:37:55 -08:00
Mitchell Hashimoto
dad5962ebb hosts/darwin: support virtualbox install 2015-11-04 15:47:56 -08:00
Mitchell Hashimoto
d4ddb3c2f3 commands/provider 2015-11-04 14:20:48 -08:00
Eric Winkelmann
e687f81fce Re-word Linux RDP error to include xfreerdp.
Changed the name of the error LinuxRDesktopNotFound to
LinuxRDPClientNotFound and re-worded error text in
templates/locales/en.yml to include `xfreerdp` when listing supported
RDP clients.
2015-11-02 23:42:01 -08:00
Marc Siegfriedt
8e87990599 add the option to make elevated interactive scripts 2015-10-15 12:25:50 -07:00
Mikhail Zholobov
f930fa94af Move "cant_read_mac_addresses" error to the global space
Now it is used not only by Windows, but by Darwin guests as well.
2015-10-09 14:57:41 +03:00
Mitchell Hashimoto
f0ddac8c9a providers/virtualbox: clone 2015-10-08 12:33:55 -04:00
Mitchell Hashimoto
9f05d22eb0 providers/virtualbox: cloning can do a non-linked clone 2015-10-08 12:03:58 -04:00
Mitchell Hashimoto
06f8595bc0 kernel/v2: clone option 2015-10-08 11:59:09 -04:00
Mitchell Hashimoto
0abc17eaed commands/snapshot: push now uses caps to be more resilient 2015-10-08 08:55:13 -04:00
Mitchell Hashimoto
7480b65e9d providers/virtualbox: use caps for snapshot list 2015-10-08 08:46:36 -04:00
Mitchell Hashimoto
c36b682e40 providers/virtualbox: fix error if no snapshots 2015-10-07 22:22:55 -04:00
Mitchell Hashimoto
8c0e38b397 providers/virtualbox: snapshot restore 2015-10-07 16:48:29 -04:00
Mitchell Hashimoto
d0e8ecfc73 providers/virtualbox: snapshot save/delete 2015-10-07 16:16:53 -04:00
Mitchell Hashimoto
2c936b2e37 providers/virtualbox: tidying up the linked clone feature 2015-10-06 14:11:41 -04:00
Mitchell Hashimoto
d519d927fa Merge branch 'VB-linked-clone-support' of https://github.com/mpoeter/vagrant into mpoeter-VB-linked-clone-support 2015-10-06 13:50:34 -04:00
Mitchell Hashimoto
ec0b0fb7f9 providers/virtualbox: IPv6 host only networks 2015-09-30 17:23:25 -07:00
Brian Dwyer
fd593a85b7 Add nodes_path support for the Chef-Solo provisioner 2015-09-27 23:23:28 -04:00
issyl0
d7220ac0c4 Fix typo
- This was referring to the current project's Vagrantfile, so "projects"
  needed a possessive apostrophe.
2015-08-16 16:43:10 +00:00
Brian Dwyer
e4cdb473bd Bring back nodes_path support for the Chef Zero provisioner 2015-07-28 12:41:51 -04:00
Manuel Pöter
f4d1d068f9 Merge branch 'master' into VB-linked-clone-support 2015-07-13 10:56:17 +02:00
Seth Vargo
516d475f16 Checksum args to each docker container in local data
This allows Vagrant to calculate if a container's arguments (such as the run
arguments) have changed in the Vagrantfile since the original run.

Fixes GH-3055
2015-07-10 11:32:02 -06:00
Seth Vargo
4b1847acf3 Use Chef Client for Chef Zero
Fixes GH-5619
2015-07-09 21:23:42 -06:00
Mitchell Hashimoto
9596b7a46c synced_folders/rsync-auto: don't crash if rsync command fails [GH-4991] 2015-07-09 11:11:58 -06:00
Mitchell Hashimoto
8d725c1f27 Merge pull request #5482 from duro/support-named-dockerfile
Support for Docker 1.5.0 named Dockerfile
2015-07-08 16:06:13 -06:00
Mitchell Hashimoto
1c203405d2 providers/docker: fix crash if host VM file can't be foundJ:wq
gs
2015-07-08 12:31:24 -06:00
Mitchell Hashimoto
606a8fdde2 providers/docker: validate create args is list [GH-4850] 2015-07-08 10:25:32 -06:00
Mitchell Hashimoto
855aa66ad9 providers/docker: better error on suspend 2015-07-08 10:18:43 -06:00
Mitchell Hashimoto
c2cae80de5 providers/dock: pull image prior to starting 2015-07-08 10:09:15 -06:00
Mitchell Hashimoto
9516427136 update messaging for installing docker 2015-07-07 12:04:21 -06:00
Mitchell Hashimoto
cd18eddb1c providers/virtualbox: fix bug, make message clearer 2015-07-06 18:18:13 -06:00
Mitchell Hashimoto
71940c60ba providers/virtualbox: error if uid mismatch 2015-07-06 18:13:59 -06:00
Mitchell Hashimoto
9df6a5aaae Merge pull request #5540 from philsc/master
Make sure debian net post-up never returns an error code.
2015-07-06 16:27:52 -06:00
Mitchell Hashimoto
ab27413954 core: make note that the box is being added directly [GH-5311] 2015-07-06 12:17:49 -06:00
Mitchell Hashimoto
d051d69591 Update error message for no chmod [GH-5440] 2015-07-06 11:25:39 -06:00
Mitchell Hashimoto
b5e57a6e83 core: update error message for GH-5526 2015-07-06 10:49:39 -06:00
Mitchell Hashimoto
36fa04fd1e providers/virtualbox: catch subprocess launch error [GH-1483] 2015-07-05 17:01:06 -07:00
Matt Wrock
e6daf2f172 fix pscommand error messaging 2015-06-05 22:24:05 -07:00
Matt Wrock
1cd1033093 fixes from @sethvargo comments. 2015-06-05 05:07:12 -07:00
Matt Wrock
c60a020096 adds a ps command to vagrant that drops the user into a remote powershell shell 2015-06-05 05:07:11 -07:00
Seth Vargo
a642663a73 Merge pull request #5584 from stoned/fix-locale-en
Fix message provision / disabled_by_config
2015-05-31 20:46:44 -07:00
Adam Spiers
ce13051d61 eliminate guesswork with Vagrantfile errors
If the Vagrantfile has some kind of error, display not only
its path and the exception message, but also the originating
line number and exception class.

Also log the full backtrace when the error is in a provider
block, just as it is done when it's outside a provider block.
2015-05-31 18:25:51 -07:00
Seth Vargo
f9816d89d9 Merge pull request #4867 from malonecm/GH4201-ShowRSyncOutput
GH-4201: Added rsync__showoutput to display rsync output to console
2015-05-30 21:21:26 -07:00
Seth Vargo
042928db9f Merge pull request #5601 from benh57/environments_wip
Puppet 4 and Puppet environments support
2015-05-30 21:04:48 -07:00
Seth Vargo
55e4308e22 Add gateway to networks + template tests 2015-05-30 12:35:10 -07:00
Marcus Young
527e06c690 Adding support for gateway in RHEL/CentOS ifcfg script 2015-05-30 12:35:09 -07:00
Seth Vargo
cecd15edac Merge pull request #5395 from delftswa2014/fix-local-download
Fixed inaccurate downloading status message
2015-05-30 12:33:28 -07:00
Seth Vargo
03b945d4d0 Merge pull request #5399 from delftswa2014/improve-package-error-message
Improved the package error message
2015-05-30 12:32:19 -07:00
Seth Vargo
dadee77730 Merge pull request #5637 from paul-krohn/config-not-found-error
Provide path to missing file.
2015-05-30 11:55:25 -07:00
Leo Cassarani
217a00c36c Add missing word to output of "vagrant up"
Add the word "flag" to the phrase "or use the `--provision` flag", which
is displayed when "vagrant up" is run for a VM that's already been
provisioned.
2015-05-11 16:01:53 +01:00
Paul Krohn
c7f32e6159 When you can't find the salt minion or master config, say what you were looking for. 2015-04-26 11:34:34 -07:00
Ben Hines
ffcb58bcd9 When using environments, allow specifying the 'main manifest' using manifest_path and manifest_file. 2015-04-12 12:31:31 -07:00
Ben Hines
cff7c52716 Use localized error message. Update strings for puppet provisioner errors. 2015-04-12 01:25:40 -07:00
Ben Hines
cf847e0410 Merge branch 'master' into environments_wip
Conflicts:
	Vagrantfile
	vagrant.gemspec
2015-04-11 13:33:32 -07:00
Stoned Elipot
27f323ed5a Fix message provision / disabled_by_config 2015-04-11 14:32:05 +02:00
Philipp Schrader
29040b3920 Make sure debian net post-up never returns an error code.
Inspired by e7dce43af3.

I'm using this configuration in my Vagrantfile:
config.vm.network :public_network, use_dhcp_assigned_default_route: true

Every once in a while the secondary network interface would not come
up properly and cause the init scripts to wait for ~ 3 minutes before
giving up and continue with booting.
2015-03-30 12:47:54 -07:00
Tim Rensen
1a2f403d0c Fixed VirtualBox's error message on 'private_network' 2015-03-30 12:41:19 +02:00
Adam Duro
be81f09a60 Supporting a named Dockerfile for Docker 1.5.0 2015-03-13 17:30:42 -07:00
edward010
51842623db Improved the package error message
The package error message will now show the actual package name if the
package already existed.
2015-02-27 10:41:04 +01:00
Tim Rensen
6c2cc31926 Fixed inaccurate downloading status message
Importing a base box from the local file system currently outputs 'Downloading: file://...' which is more accurate now by presenting it as: 'Unpacking necessary files from: file://...'.
Fixes #5386.
2015-02-25 20:37:54 +01:00
Shawn Neal
92762eeb8c Merge pull request #4943 from maxlinc/winrm_error_handling
Improved WinRM error handling (including better `ready?` and `wait_for_ready`)
2015-02-16 10:16:14 -08:00
Michael Lopez
2f3e550a81 Remove white space after bang 2015-02-15 09:43:37 +01:00
Michael Lopez
8adc10f295 Update chef_zero provisioner to use real chef-zero/local-mode to support cookbook version constraint 2015-02-14 22:32:16 +01:00
Max Lincoln
29845e926c Merge branch 'master' into winrm_error_handling 2015-01-20 16:16:48 -05:00
Max Lincoln
edc867986b Merge branch 'master' into winrm_error_handling 2015-01-20 16:07:00 -05:00
Peter Rood
8b2deb6e7e fix typo 2015-01-09 04:29:33 -05:00
Chad Maloney
dd62d3c5f1 Merge branch 'master' into GH4201-ShowRSyncOutput 2015-01-05 14:42:08 -06:00
Seth Vargo
97d5a6ebfc Log chef-zero instead of chef-solo 2014-12-28 12:52:54 -05:00
Seth Vargo
2b450a147f Merge pull request #4840 from MiLk/fixes/upgrading_home_path_v1_5
You need to press enter to migrate from 1.1 to 1.5
2014-12-15 00:06:41 -05:00
Seth Vargo
8c8a92c4be Merge pull request #4896 from analyzere/salt-grains-config
Issue #4895: Support grains config for salt
2014-12-14 23:48:02 -05:00
Seth Vargo
2c05a4e9e7 Fix Chef Solo template 2014-12-14 23:42:24 -05:00
Seth Vargo
9c55180f6d Update the apt cache 2014-12-12 10:44:10 -08:00
Seth Vargo
5dfe323a2e Fix a missing colon in new Vagrantfile 2014-12-12 10:42:00 -08:00
Seth Vargo
b590ee2b3a Add push example 2014-12-11 16:50:56 -08:00
Seth Vargo
0dcdc2312b Remove editor comments from min Vagrantfile 2014-12-11 16:48:20 -08:00
Seth Vargo
6cae92a200 Cleanup generated Vagrantfile 2014-12-11 16:47:50 -08:00
Max Lincoln
ba7b964b1e Better error handling for WinRM (using winrm v1.3.0.dev.2) 2014-12-11 13:22:39 -05:00
Max Lincoln
072bb26a30 Change @ssl to @transport 2014-12-11 13:21:58 -05:00
Seth Vargo
2e4f854725 Vagrant Cloud -> Atlas 2014-12-08 17:42:29 -08:00
Seth Vargo
8d090f2faa Fix bad error message 2014-12-08 11:35:13 -08:00
Seth Vargo
88aa106327 Fix up i18n missing translation 2014-12-08 11:35:11 -08:00
Seth Vargo
03b8105571 Super primitive implementation of Environment#push 2014-12-08 11:35:10 -08:00
Seth Vargo
b6c5ca6b7a Add Push command and tests 2014-12-08 11:35:10 -08:00
Seth Vargo
8a7e546972 Add preliminary File pusher (incomplete) 2014-12-08 11:35:09 -08:00
Chad Maloney
a2778c0a6b Merge branch 'master' into GH4201-ShowRSyncOutput 2014-12-03 13:11:56 -06:00
Ken Crowell
72afdce630 Issue #4895: Support grains config for salt 2014-12-02 18:01:09 -04:00
Paul Hinze
25ff636ee2 providers/virtualbox: cleanup default vbox dhcp server
fixes #3083

Detect the presence of the default DHCP server that comes in a fresh
VirtualBox install and clean it up to prevent it from colliding with
Vagrant-managed network config.

In order to accomplish this, we:

 - add a `remove_dhcp_server` call to the virtualbox driver
 - fix dhcp options parsing to allow `:dhcp_{ip,lower,upper}`
   configuration options to make it through (so a user can override the
   removal behavior with some explicit configuration)
 - add the full `:network_name` to the details returned from
   `:read_dhcp_servers`, so we can have a durable value to pass to
   `:remove_dhcp_server`

Note that we do have to eat one more `VBoxManage list dhcpservers` for
each network interface to support this, but this seemed like a nominal
cost
2014-11-30 22:03:52 -06:00
Chad Maloney
5de3f30bb0 GH-4201: Added rsync__showoutput to display rsync output to console 2014-11-25 12:38:41 -06:00
Emilien Kenler
17673fafcd You need to press enter to migrate from 1.1 to 1.5 2014-11-18 11:05:59 +09:00
Seth Vargo
30dbedeea4 Update Vagrantfile to include Chef Apply and options for Chef install 2014-11-07 15:56:22 -05:00
Seth Vargo
f232dc38c9 Automatically install Chef when provisioning with Chef 2014-11-07 15:56:22 -05:00
Seth Vargo
59eb0ad2e8 Add Chef Apply provisioner 2014-10-30 15:32:15 -04:00
Seth Vargo
6814f9c97d Capitalize Chef Server in errors 2014-10-30 13:43:25 -04:00
Teemu Matilainen
dec5dcdda3 provisioners/chef: Add chef_zero provisioner
Add Chef Zero provisioner using `local_mode` configuration for
chef-solo/chef-client.
2014-10-30 13:43:24 -04:00
Tarrant
ba994baa65 Revert "guests/tinycore: error if DHCP [GH-4699]"
This reverts commit 64139f2158.
2014-10-24 13:52:06 -07:00
Mitchell Hashimoto
64139f2158 guests/tinycore: error if DHCP [GH-4699] 2014-10-24 11:24:16 -07:00
Mitchell Hashimoto
94b2a8a56b communicators/ssh: insert random key, remove insecure key 2014-10-24 09:58:18 -07:00
Mitchell Hashimoto
37a4000722 providers/virtualbox: more descriptive error if empty version [GH-4657] 2014-10-24 09:20:08 -07:00
Mitchell Hashimoto
cba76c3b68 core: VirtualBox is no longer the fallback, not hardcoded anywhere
This commit finally removes all traces of VirtualBox defaults from
Vagrant core. Vagrant now completely relies on its automated provider
detection to pick the best and most relevant provider that is available
on the system and for a specific development environment.

A "vagrant up" on one development environment might prefer VirtualBox,
another might prefer Docker. As a result of this commit (plus the few
prior), the developer doesn't need to know anymore and doesn't need to
specify a `--provider` flag. Vagrant just figures out the correct
provider.

Yay. :)
2014-10-23 16:32:36 -07:00
Mitchell Hashimoto
06defb37c7 commands/up: if all machines autostart:false, start none [GH-4552] 2014-10-23 11:46:22 -07:00
Mitchell Hashimoto
4ffaaf119e providers/virtualbox: more hints when choosing interface [GH-4463] 2014-10-23 10:24:07 -07:00
Mitchell Hashimoto
9b9c24cb59 Merge pull request #4468 from SilverWyrda/arch-predictable-network-interface-names
guests/arch: Add support for predictable network interfaces names
2014-10-23 10:20:01 -07:00
Mitchell Hashimoto
f0a4e26d27 Merge pull request #4548 from ebelew/shellargs
Update powershell provisioning to fix #4547
2014-10-23 09:50:50 -07:00
Mitchell Hashimoto
88754d2904 document the version 2014-10-23 09:25:54 -07:00
Mitchell Hashimoto
503faca422 Merge pull request #4605 from berendt/vagrantfile_api_version
Remove Vagrant constants
2014-10-23 09:24:14 -07:00
Mitchell Hashimoto
0e29dd5668 commands/rsync: handle proxy machines [GH-4066] 2014-10-22 16:17:39 -07:00
Mitchell Hashimoto
296d0639cc providers/docker: support auth [GH-4042] 2014-10-22 13:12:31 -07:00
Mitchell Hashimoto
5228437b30 providers/docker: nicer error if package is called [GH-4595] 2014-10-21 17:04:46 -07:00
Mitchell Hashimoto
58f7310444 providers/virtualbox: detect conflict in name [GH-4681] 2014-10-21 15:56:32 -07:00
Christian Berendt
e9a28b02a5 Remove Vagrant constants 2014-10-20 17:59:47 +02:00
Ben Hines
16870d72d1 Some work in progress environment support 2014-10-19 21:28:38 -07:00
Mitchell Hashimoto
6986a8eeb2 Update wording for unreleased boxes 2014-10-18 16:28:05 -07:00
Eris Belew
7a73f5bd7c Update shell provisioner for powershell to add "shell_args", saner defaults and more useful detail in logging output; Add Eclipse .project file to .gitignore IDE section 2014-09-23 12:46:25 -07:00
mpoeter
c20624bfdc Add support for linked clones for VirtualBox. 2014-09-09 19:17:04 +02:00
SilverWyrda
10090bf4dc Add support for predictable network interfaces names 2014-09-06 04:56:01 +02:00
Mitchell Hashimoto
140a1b8d4b commands/version: use checkpoint data 2014-09-01 15:23:46 -07:00
Mitchell Hashimoto
3752ae28b9 Merge pull request #4143 from amracks/master
hosts/freebsd: Changed order of nfs exports parameters for FreeBSD
2014-08-30 23:15:53 -07:00
Mitchell Hashimoto
8cd2e58194 core: better messaging around box add not existing [GH-4414] 2014-08-29 13:17:40 -07:00
Mitchell Hashimoto
4138179207 commands/plugin: error if windows with space in dir [GH-4351] 2014-08-29 12:16:40 -07:00
Mitchell Hashimoto
be6665864d communicators/ssh: nicer errors for SSH exceptions [GH-4367] 2014-08-29 11:40:50 -07:00
Mitchell Hashimoto
059243670f commands/box: update gives nice message if no box 2014-08-29 11:19:54 -07:00
Mitchell Hashimoto
9e5a2d28c6 Merge pull request #4308 from Voxer/fix/master/issue4307
guest/freebsd: fix interface device names in /etc/rc.conf
2014-08-29 09:54:31 -07:00
Mitchell Hashimoto
b42e9aef23 guests/linux: more verbose output when shared folder mount fails
[GH-4403]
2014-08-29 08:27:48 -07:00
Mitchell Hashimoto
b675be383b core: disallow brackets in VM names [GH-4319] 2014-08-10 21:05:29 -07:00
Kostyantyn Fomin
102cb403e2 Fix network_dhcp template. 2014-08-08 16:00:30 -07:00
Mitchell Hashimoto
ae1a03903e providers/virtualbox: error if can't read VM name [GH-4047] 2014-08-08 10:49:07 -07:00
Mitchell Hashimoto
0da5d7b650 communicators/ssh: clean error on max session [GH-4044] 2014-08-08 09:11:25 -07:00
Kostyantyn Fomin
c43ab95f86 Fix Issue 4307: FreeBSD fix interface device names in /etc/rc.conf
https://github.com/mitchellh/vagrant/issues/4307

Fix details:
Pass network interface name to template renderer and use it
in static and dhcp templates to render /etc/rc.conf entries.

  modified:   plugins/guests/freebsd/cap/configure_networks.rb
  modified:   templates/guests/freebsd/network_dhcp.erb
  modified:   templates/guests/freebsd/network_static.erb

Verification scenario:
Check if /etc/rc.conf contains vtnet entries when paravirtualized
NIC devices are used in FreeBSD guest.
2014-08-06 14:10:05 -07:00
Mitchell Hashimoto
b516881d47 provisioners/puppet: don't repeat output when prov fails [GH-4303] 2014-08-06 11:11:12 -07:00
Mitchell Hashimoto
94841ef1bc Merge pull request #4094 from mitchellh/improved-winrm-command-failure-messaging
provisioners/winrm: Better WinRM command failure messaging
2014-08-06 10:44:35 -07:00
Mitchell Hashimoto
e82d425719 Merge pull request #4087 from zr40/fix/master/prevent-double-output
Don't output stdout and stderr twice when shell provisioner fails
2014-08-06 10:32:13 -07:00
Mitchell Hashimoto
7e709711fa Merge pull request #4113 from dhoppe/patch-1
Fix value for manifest_file
2014-08-06 10:06:33 -07:00