Commit Graph

576 Commits

Author SHA1 Message Date
Drew Rogers c4066fd865 Changed Device name to fix private_network bug
If you try and start fedora with a :private_network, it will fail saying the 'p7p1 device doesn't exist'. Fixed with changing device to eth.
2013-05-15 10:52:20 -03:00
Anton Kalyaev 6c5a580006 more concise message for BoxNotFound error
Now we have different providers, but the error message didn't tell
anything about it. Suppose I want to remove one of my boxes:

    vagrant box remove opscode-ubuntu-12.04 vritualbox

There is a typo in provider name. The error message is:

    Box 'opscode-ubuntu-12.04' could not be found.

Therefore I need to double check the box name, and only than I will see
the typo.

This commit make the error message looks like this:

    Box 'opscode-ubuntu-12.04' with 'vritualbox' provider could not be
found.
2013-05-05 18:23:12 +04:00
Philipp Franke c92ce0f4d0 Add OpenSUSE network settings 2013-05-03 12:39:26 +02:00
Mitchell Hashimoto 3052fd350f Properly configure Chef solo when no roles path [GH-1665] 2013-05-01 18:58:22 -07:00
Mitchell Hashimoto e0f8114103 Detect missing Linux kexts via vboxnetctl error message [GH-1671] 2013-04-30 09:45:00 -07:00
Mitchell Hashimoto e8d8188474 Error if a box override changes the box setting... 2013-04-19 23:10:17 -06:00
Mitchell Hashimoto c0539d6e31 Warn if run list on Chef is empty, not error [GH-1620] 2013-04-19 10:12:09 -06:00
Mitchell Hashimoto 6b3e028166 Output shell script that is running [GH-1568] 2013-04-10 11:27:45 -07:00
Mitchell Hashimoto 28de46f3b4 Not an error if cookbooks path is missing 2013-04-10 11:21:18 -07:00
Mitchell Hashimoto 66ff86fda5 Auto-detect policy server IP for CFEngine 2013-04-08 15:30:41 -07:00
Mitchell Hashimoto 9b9ed2d2aa files_path setting for CFEngine 2013-04-08 15:15:45 -07:00
Mitchell Hashimoto b279f222a2 run_file path validation for CFEngine 2013-04-08 15:02:33 -07:00
Mitchell Hashimoto 67917353b7 Add support for policy hub bootstrapping 2013-04-08 14:47:11 -07:00
Mitchell Hashimoto 292bada134 Support config.classes for extra classes in CFEngine 2013-04-08 14:24:46 -07:00
Mitchell Hashimoto c25ce9f732 run_file and single_run mode in CFEngine 2013-04-08 14:21:10 -07:00
Mitchell Hashimoto ae8e8830c4 Some CFEngine config validation 2013-04-08 13:51:40 -07:00
Mitchell Hashimoto c457285fb6 Basic CFEngine boostrapping 2013-04-08 13:46:03 -07:00
Mitchell Hashimoto 9599d8a45d Starting work on CFEngine, installs on Debian 2013-04-08 13:05:53 -07:00
Mitchell Hashimoto 88b34d3b71 Message on `up` that VM is already running [GH-1558] 2013-04-08 09:09:23 -07:00
Mitchell Hashimoto 47dfd81fd1 Change default puppet manifest to be init.pp in template 2013-04-07 15:07:50 -07:00
Seth Chisamore 7ed406629b `static` is not a valid BOOTPROTO value
Valid BOOTPROTO choices include: `none`, `bootp` and `dhcp`. In the case
of static network addresses `none` should be used.
2013-04-07 15:57:56 -04:00
Seth Chisamore b89e593070 ensure static network changes don't update DNS
`PEERDNS=no` ensures the DNS settings (from /etc/resolv.conf) are not
overwritten when we do an ifdown/ifup cycle to apply Vagrant's
changes.
2013-04-07 15:50:13 -04:00
Mitchell Hashimoto 868f8d4061 Detect PuTTY Link on Windows and show error [GH-1518] 2013-04-06 16:50:59 -07:00
Collin Allen d783b33fe2 Validate that extra_vars is a hash 2013-04-05 09:40:32 -07:00
Mitchell Hashimoto 1957efb4e1 Nicer error if ansible-playbook is not installed on the host 2013-04-04 14:01:26 -07:00
Mitchell Hashimoto 1c2a46ba72 Merge ansible provisioner [GH-1465] 2013-04-04 13:39:36 -07:00
Mitchell Hashimoto 2f232e0175 Halt and mount NFS are caps 2013-04-03 23:33:20 -07:00
Mitchell Hashimoto 511522e9ae Remove unused keys 2013-04-03 23:15:31 -07:00
Mitchell Hashimoto 63f28a9011 Nicer error messages for new linux caps 2013-04-03 23:14:24 -07:00
Collin Allen 5a052874b4 Improve ansible provisioner error checks 2013-04-03 23:07:07 -07:00
Collin Allen a1ad1207bd Add ansible provisioner 2013-04-03 22:56:32 -07:00
Mitchell Hashimoto cf3c1b73d2 Guest#capability to execute capabilities 2013-04-03 22:19:20 -07:00
Mitchell Hashimoto 52f3847b0a Laying the foundation for the new guest plugin 2013-04-03 21:47:57 -07:00
Mitchell Hashimoto 4ffc2c3b74 Invalid configuration keys are caught and shown in user friendly way
[GH-1484]
2013-04-03 16:18:37 -07:00
Mitchell Hashimoto c84c609633 Gracefully handle errors in parallel cases 2013-04-03 08:31:43 -07:00
Mitchell Hashimoto 6c1eb2b007 Download boxes using CURL! 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto fc62f5c3b6 Translation for downloader error 2013-04-03 08:31:41 -07:00
Mitchell Hashimoto a8a7a7865d Show an error if an invalid network type is used 2013-04-02 15:00:18 -07:00
Mitchell Hashimoto bc2a9fe780 VBoxManage errors show stderr 2013-03-31 20:45:54 -07:00
Mitchell Hashimoto 4f1a3dad8c Retry SSH on Errno::EACCES 2013-03-31 20:27:08 -07:00
Mitchell Hashimoto 30053638af Human friendly error on exit code 126 from VBoxManage 2013-03-29 13:14:00 -07:00
Mitchell Hashimoto 40250843b3 More comprehensive synced folder validation [GH-1499] 2013-03-29 12:45:44 -07:00
Dave Marshall b8a8286fac Use current user's uid for NFS exports 2013-03-29 00:14:12 +00:00
Mitchell Hashimoto b32c0d16ac Better plugin dev experience through warnings 2013-03-28 17:10:07 -07:00
Mitchell Hashimoto 64921db66f Error message if private key not owned by right user [GH-1503] 2013-03-28 16:54:39 -07:00
Mitchell Hashimoto 361cc1ae40 Proper error message if invalid provisioner is used [GH-1515] 2013-03-28 15:38:32 -07:00
Mitchell Hashimoto 43d85930ed Improve network interface detection to avoid crash [GH-1480] 2013-03-22 10:51:07 -07:00
Mitchell Hashimoto 022c1daec0 Raise error if no hostonly network on VBox with NFS [GH-1437] 2013-03-17 22:33:02 -07:00
Mitchell Hashimoto 6e7427ca4d Error if forwarded port with same host port is declared multiple times 2013-03-15 22:11:49 -07:00
Mitchell Hashimoto 9464796c6d Human friendly error when metadata.json is missing from a box 2013-03-15 11:12:50 -07:00
Mitchell Hashimoto 82d8285df6 Give a success message after adding a box 2013-03-13 21:24:03 -07:00
Mitchell Hashimoto 98a9b47567 Validate the hostname setting 2013-03-09 10:07:55 -08:00
Mitchell Hashimoto 412af5542d Improve the port collision error message 2013-03-05 20:12:28 -08:00
Mitchell Hashimoto 0bb57fbe86 Update the vagrant init Vagrantfile to have new network syntax 2013-03-01 17:36:46 -08:00
Mitchell Hashimoto c80ad12336 Validate forwarded ports 2013-03-01 17:20:31 -08:00
Mitchell Hashimoto ade5d8a579 Human-friendly error if error copying private key [GH-580] 2013-03-01 13:51:11 -08:00
Mitchell Hashimoto b482870173 Capture stdout/stderr when loading plugins so that it doesn't just
happen
2013-03-01 11:55:06 -08:00
Mitchell Hashimoto d15acde8c0 Capture missing key calls in V1 configs and record them as warnings 2013-02-28 00:06:49 -08:00
Mitchell Hashimoto c9ad55d9e7 Built-in hostname middleware for setting hostname 2013-02-27 21:28:09 -08:00
Mitchell Hashimoto 8d51c7e300 Make guest addition mismatch warning a bit more user friendly 2013-02-27 19:07:17 -08:00
Jeff Blaine e56ca559b0 Be more helpful with vboxmanage_error 2013-02-13 10:47:41 -05:00
Patrick Wyatt bd06bea3e5 Enable Windows users with SSH installed to use 'vagrant ssh' 2013-02-08 22:09:11 -08:00
Mitchell Hashimoto 595d6f7848 Record invalid key accesses as an error on config 2013-02-08 16:54:24 -08:00
Mitchell Hashimoto 6afb4326fa Move NFS to a built-in middleware 2013-02-08 15:34:04 -08:00
Mitchell Hashimoto 36cdced052 Update wording on requiring a Vagrantfile [GH-1362] 2013-02-07 16:42:18 -08:00
Hoang Xuan Phu d1b55e934c Reword the port collision resume message to address general programs instead of just VMs 2013-02-07 19:07:10 +07:00
Mitchell Hashimoto 4a1a990491 Raise a proper SSH error on ECONNRESET 2013-02-06 18:08:55 -08:00
Mitchell Hashimoto 1b3250e3b6 `vagrant plugin i nstall` shows version it installed 2013-02-06 17:08:48 -08:00
Mitchell Hashimoto 1af3255559 Be more sane about cookbook_paths default in Chef 2013-02-05 22:02:12 -08:00
Mitchell Hashimoto 661ccef6e2 Clarify a plugin loading error that 1.0.x not supported 2013-02-05 09:10:06 -08:00
Mitchell Hashimoto 3304a7701c Update the Vagrantfile template 2013-02-04 11:56:06 -08:00
Mitchell Hashimoto 55c905b43b `vagrant plugin license` command. 2013-02-04 10:32:04 -08:00
Mitchell Hashimoto 635949980b Handle the case a plugin install is a plugin not found 2013-02-03 14:29:29 -08:00
Mitchell Hashimoto 3df6088db0 Make plugin loading more robust to errors 2013-02-03 14:13:27 -08:00
Mitchell Hashimoto 1162c2dbfc Instead of shelling out, use the RubyGems API to install plugins
This gets us an accurate name of the gem even if it is installed
from a file.
2013-02-03 13:59:43 -08:00
Mitchell Hashimoto 8cde263a14 Fix some locale stuff to `vagrant plugin` 2013-02-03 13:27:35 -08:00
Mitchell Hashimoto 455745277c List plugins should have output when no plugins 2013-02-03 13:13:22 -08:00
Mitchell Hashimoto 9690754983 Plugin listing is a bit more sophisticated, shows version 2013-02-03 12:59:32 -08:00
Mitchell Hashimoto 0d7322578b `vagrant plugin uninstall` 2013-02-03 10:47:32 -08:00
Mitchell Hashimoto d404eee770 Make the bundler environment error more correct 2013-02-02 23:41:18 -08:00
Mitchell Hashimoto fa50f06a4c Error if RubyGems failed. 2013-02-02 23:31:53 -08:00
Mitchell Hashimoto a2ef7790de Start creating the plugin middleware sequences 2013-02-02 18:42:04 -08:00
Mitchell Hashimoto b3571eb5bb Add message about removing box so something is clearly happening 2013-02-02 16:43:16 -08:00
Mitchell Hashimoto 2dc14af825 `vagrant up` says what provider it will use 2013-02-01 14:03:59 -08:00
Mitchell Hashimoto 26adfb0de6 Put the provider name in the status output 2013-02-01 13:54:52 -08:00
Mitchell Hashimoto 165dd63f78 New HandleBoxUrl built-in middleware to handlet the "box_url" config 2013-02-01 11:31:08 -08:00
Mitchell Hashimoto c8ae1a265a Extra protection in the rgloader file 2013-01-31 19:54:50 -08:00
Mitchell Hashimoto 67c2e205be Create rgloader/loader.rb files for encoded files 2013-01-31 18:48:56 -08:00
Mitchell Hashimoto 1392d9b4a5 Detect if a VM name is already taken for VirtualBox 2013-01-30 23:22:45 -08:00
Mitchell Hashimoto 9d2f26604e Properly handle paused VirtualBox VMs [GH-1184] 2013-01-30 22:47:45 -08:00
Mitchell Hashimoto c3bacf3e1d Improved error message for bad SSH key encryption [GH-1211] 2013-01-30 22:26:30 -08:00
Mitchell Hashimoto e5f8faeeea Make error message for port collisions more correct [GH-1312] 2013-01-30 21:07:55 -08:00
Mitchell Hashimoto c57ba9de58 Give a nice human-friendly error message when problems loading Vfile 2013-01-30 20:01:41 -08:00
Mitchell Hashimoto 51c537fca3 Merge pull request #1327 from samet/master
Patch to solve Issue 1322.
2013-01-29 11:01:35 -08:00
Mitchell Hashimoto 0d27cd5bcb Warn if Vagrant is run outside of installers 2013-01-28 13:39:56 -08:00
Mitchell Hashimoto e6a0023713 Switch to bsdtar for unpackaging a box 2013-01-28 13:01:43 -08:00
Mitchell Hashimoto ca0af2866e Change output to not include the name 2013-01-23 09:45:56 -08:00
Mitchell Hashimoto 4059a4ba2f Define synced_folders on V2 vm config 2013-01-23 09:21:49 -08:00
Mitchell Hashimoto 8ad8f73846 Raise an exception if a non-MachineState is returned 2013-01-21 11:31:20 -06:00
Samet Atdag 4b5909d532 Private key path is put into quotes in case of space-including username. 2013-01-21 15:19:35 +02:00
Mitchell Hashimoto 2d57afbbda Support warnings/errors when upgrading Vagrantfiles internally 2013-01-20 22:04:50 -05:00
Mitchell Hashimoto 7f55d5eac8 Builtin: ConfigValidate will validate your configuration 2013-01-18 13:26:14 -08:00
Mitchell Hashimoto fff021e51d Update Chef provisioner to new validation API 2013-01-18 13:12:02 -08:00
Mitchell Hashimoto 3e9e422ce0 Convert existing validate methods to new API for kernel 2013-01-18 12:33:37 -08:00
Mitchell Hashimoto bae6555836 Remove DeprecationError 2013-01-18 12:23:29 -08:00
Mitchell Hashimoto 42a1ce6e9d Remove the old config validation error 2013-01-18 12:15:36 -08:00
Mitchell Hashimoto 22571bf05b Rescue the EHOSTDOWN error for SSH 2013-01-12 12:47:49 -08:00
Mitchell Hashimoto 48eaa93745 Raise proper error if there aren't any NIC slots available 2013-01-11 15:57:08 -08:00
Mitchell Hashimoto 07157b47ae Only allow one provider active machine at a time.
Temporary limitation of Vagrant to only allow one active machine with a
provider at a time. That means you cant `up` a machine with both vmware
and virtualbox at the same time. In the future you will be able to but
to avoid various edge cases for now we're disallowing it.
2012-12-30 10:52:01 -10:00
Mitchell Hashimoto 4e649cc987 Upgrade V1-style dotfile to V2
See the code and comments for details on how this is done. As usual, we
are very careful about this so as not to inadvertently destruct real
user data.
2012-12-26 22:41:42 -08:00
Mitchell Hashimoto cc18492c7a Local data path introduced
The local data path is set to the `ROOT_DIR/.vagrant` by default and is
a directory where Vagrant can store environment-local state. This can be
overriden on a per-Environment basis using the `local_data_path`
option.
2012-12-26 21:45:23 -08:00
Mitchell Hashimoto 54a2f6b89e Change boot_mode to a provider config `gui`.
OLD:

config.vm.boot_mode = :gui

NEW:

config.vm.provider :virtualbox do |vb|
  vb.gui = true
end
2012-12-25 09:00:06 -08:00
Mitchell Hashimoto 2cfc5986d2 Wording changes in the status command. VM => machine 2012-12-24 10:00:28 -08:00
Nate Smith 94ce12683e Show node name in logging 2012-12-17 11:58:15 -05:00
Nate Smith 370d6b0c98 Delete Chef client and node on cleanup
This fixes #1253 by shelling out to `knife` on cleanup, as per
@mitchellh's suggestion in #1255
2012-12-17 11:49:27 -05:00
Mitchell Hashimoto 67855be77b Add the Environment#machine method
This will eventually replace the Environment#vms method. Because of the
introduction of providers, the environment doesn't know what the backing
of the machines will be (and they're _machines_ now, not _vms_).
Instead, users of Environment will now call `#machine` on the
environment to retrieve a machine with the given backing provider as it
needs it.
2012-11-07 21:45:09 -08:00
Mitchell Hashimoto 3e6fe7406b Update the Vagrantfile template to use V2 by default. 2012-11-06 21:34:22 -08:00
Mitchell Hashimoto d2625d0efa Update some translations 2012-09-27 14:00:20 -07:00
Mitchell Hashimoto b2585b8ede Merge pull request #1048 from spk/locales
Locales
2012-09-27 13:58:00 -07:00
Mitchell Hashimoto 1cbdbf4b0c Merge pull request #1071 from bcwaldon/confirm-opt-default
Convey default destroy confirmation choice as 'N'
2012-09-09 20:34:50 -07:00
Mitchell Hashimoto 7158445c2d Error message on ECONNRESET for box downloading via HTTP [GH-1090] 2012-09-09 20:16:43 -07:00
Mitchell Hashimoto 46feb55396 Add missing "saving" transition for VirtualBox machine [GH-1110] 2012-09-09 19:49:03 -07:00
Brian Waldon dcc36322f2 Convey default destroy confirmation choice as 'N'
The convention is to capitalize the default choice when presenting
the user with a confirmation dialog. This alters the choices for
'vagrant destroy' confirmation from [Y/N] to [y/N].
2012-08-15 14:01:09 -04:00
Mitchell Hashimoto db11c16b79 ssh_config works with new machine abstraction 2012-08-13 19:48:26 -07:00
Mitchell Hashimoto 28f341ec75 Begin working on the #guest method for Machine instances 2012-08-12 16:46:00 -07:00
Mitchell Hashimoto b1ced46d7c SSHExec raises proper exception if SSH is not yet ready 2012-08-06 10:29:25 -07:00
Laurent Arnoud 8aeb02992e Added already_exists locale. 2012-07-27 23:43:51 +02:00
Laurent Arnoud b739887116 Added untar_failure locale. 2012-07-27 21:57:13 +02:00
Mitchell Hashimoto 8f0375d7f3 Machines can call actions on their providers. 2012-07-16 14:12:58 -07:00
Mitchell Hashimoto 6bb621026f `vagrant box add` uses the new API.
This assumes VirtualBox boxes for now, which is fine.
2012-07-11 18:36:22 -07:00
Mitchell Hashimoto 9cb0015b6e Test that an added box provider must match expected. 2012-07-11 18:36:21 -07:00
Mitchell Hashimoto 9d1924811e Box collection can detect V1 boxes and throws an exception
The exception notifies the caller that the box needs to be upgraded. The
upgrade process is not yet done but is coming ina  future commit.
2012-07-11 18:36:20 -07:00
Mitchell Hashimoto 61621369d2 Catch Net::SSH::Disconnect when connecting to SSH
This error was experienced by @pearkes. It is thrown when the remote end
unexpectedly closes the remote end. This is usually caused by SSH not
being able to properly setup the connection.
2012-07-04 08:26:09 -10:00
Mitchell Hashimoto 639a6a72ed Don't set the gateway for host only, this sometimes causes internet
breakge
2012-06-29 12:05:42 -07:00
Mitchell Hashimoto 0b3e703498 Add the gateway to hostonly network interfaces on Debian [GH-990] 2012-06-27 11:18:23 -07:00
Mitchell Hashimoto 53d8c28c8e Move guests to Vagrant.plugin("1", :guest) 2012-06-26 16:28:49 -07:00
Mitchell Hashimoto 2e00a007ce Move provisioner superclass into the V1 namespace 2012-06-26 15:06:04 -07:00
Julian Connor 635920e56e Small error message fix. 2012-06-25 16:13:18 -04:00
Mitchell Hashimoto fa99eb7e54 Check for permission denied when using SCP to upload [GH-924] 2012-06-22 21:04:21 -07:00
Alvaro Videla a46640c720 Fixes minor typo 2012-06-20 11:16:29 +03:00
Marco Monteiro 5bbabaf5a5 Fix multiple ethernet interface support on Arch Linux 2012-06-01 14:23:15 +02:00
Mitchell Hashimoto 1ef679f683 SSH log level fatal. Thanks @petejkim
This change makes it so that SSH errors are shown, whereas QUIET hid
those as well. The main change to QUIET was to get rid of warnings,
not errors, so this fixes that.
2012-05-31 23:42:28 +02:00
Mitchell Hashimoto 268b13b799 Merge pull request #947 from justinlynn/add_dhcp_default_route_option
add workaround for ubuntu precise not properly loading routes from dhcp
2012-05-25 08:42:52 -07:00
Justin Lynn 736ed6b590 add workaround for ubuntu precise not properly loading routes 2012-05-24 11:53:46 -07:00
Mitchell Hashimoto 3204b3a580 Vagrant.configure and versioned configuration
Vagrant.configure is now how configuration is done in Vagrantfiles
(previously it was Vagrant::Config.run). This function takes a single
argument which is the version of configuration to use.

Various internals were updated for this new versioned configuration.

Note that multiple versions of configuration aren't yet used so aren't
fully supported by Vagrant, but the foundation is being set here.
2012-05-21 21:47:01 -07:00
Mitchell Hashimoto d3686465db Avoid `unless` 2012-05-06 14:47:52 -07:00
Mitchell Hashimoto 73c8299ecd Merge pull request #868 from justinlynn/add_dhcp_default_route_option
Issue #862: Allow bridged networking without removing the interface's DHCP assigned default route
2012-05-06 14:46:58 -07:00
Mitchell Hashimoto bc0643613a Vagrant.require_plugin [GH-916] 2012-05-06 14:01:10 -07:00
Justin Lynn bf3d3b0245 add use_dhcp_assigned_default_route setting to allow for dhcp bridged interfaces which have a default route assigned by dhcp 2012-04-05 09:21:09 -07:00
Mitchell Hashimoto e98cedf0e1 LogLevel QUIET for SSH to suppress known hosts warning [GH-847] 2012-04-02 09:57:16 -07:00