Commit Graph

2772 Commits

Author SHA1 Message Date
Mitchell Hashimoto e88d735cb6 Make configured VM providers default to an empty one 2012-12-23 16:29:25 -08:00
Mitchell Hashimoto 553d4a828a Make sure provider config is always available even if no block was given 2012-12-23 16:29:25 -08:00
Mitchell Hashimoto 6478139cee Move config.vm.customize to VirtualBox specific option 2012-12-23 16:29:25 -08:00
Mitchell Hashimoto 66849fda20 When recovering on import and destroying, force it 2012-12-23 16:29:25 -08:00
Mitchell Hashimoto dffbf6eb09 Allow COnfirm calls to be forced by specifying a force_key 2012-12-23 16:29:25 -08:00
Mitchell Hashimoto 50d7b0aba4 Fix bug where Call didn't propagate recovery. Warden has no recovery.
The issue here is that when a middleware failed and a recovery sequence
started, it would halt at the "call" step because the "Call" didn't
properly recover the child sequence.

An additional issue was that a Warden had no "recover" method, meaning
embedded Wardens wouldn't recover their stacks properly.
2012-12-23 16:29:25 -08:00
Mitchell Hashimoto a6e0d3908f Create a "dummy" provider for tests 2012-12-23 16:29:24 -08:00
Mitchell Hashimoto ac7958a43b Environment#primary_machine takes a provider argument. Use it. 2012-12-23 16:29:24 -08:00
Mitchell Hashimoto 128c06e78d Environment#default_provider 2012-12-23 16:29:24 -08:00
Mitchell Hashimoto 1ee470a551 Begin work on supporting provider-specific configuration
This works by registering a `config` with `:provider => true` with the
same name as your provider. Vagrant will then automatically configure
the provider when `config.vm.provider` is used.
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto 666f9f802d When upgrading V1 `vm` config, don't set on new if it wasn't set before 2012-12-23 16:29:24 -08:00
Mitchell Hashimoto 99c5cddb7d V2 config supports the concept of an "UNSET" value when doing merges
This value should be used as a default, and allows the parent `merge`
method to "just work" most of the time.
2012-12-23 16:29:24 -08:00
Mitchell Hashimoto b6c6614fd8 Basic upgrade support for the `vm` config settings. VERY basic. 2012-12-23 16:29:24 -08:00
Mitchell Hashimoto 2da812bd48 Change log levels of some messages that are useful 2012-12-23 16:29:24 -08:00
Mitchell Hashimoto e16010041a Warden only logs an error once 2012-12-23 16:29:24 -08:00
Mitchell Hashimoto cc24d7b196 Better logging for the box collection 2012-12-23 16:29:24 -08:00
Mitchell Hashimoto c9d5cff7be Add in some logging 2012-12-23 16:29:23 -08:00
Mitchell Hashimoto 819140bbc2 Don't error if box doesn't exist on load 2012-12-23 16:29:23 -08:00
Mitchell Hashimoto a4713d5a84 No need to call `load!` anymore, since it doesn't exist 2012-12-23 16:29:23 -08:00
Mitchell Hashimoto 0ec639c8e1 BoxCollection#find should only find V1 box when searching for vbox 2012-12-23 16:29:23 -08:00
Mitchell Hashimoto e2dd0b0cf2 Get machine tests passing again with new environment 2012-12-23 16:29:23 -08:00
Mitchell Hashimoto f2b91d26fd Load the configuration per machine, so that provider boxes work
Boxes are provider-specific, and we don't know the provider until
Environment#machine is called, so we need to build up the machine
configuration during this time.
2012-12-23 16:29:23 -08:00
Mitchell Hashimoto 0180ed849d Move config loader order out from an ivar into a param for the #load
method
2012-12-23 16:29:23 -08:00
Mitchell Hashimoto 1559f7b7a7 Get rid of the old Environment#vms calls. Use #machine everywhere. 2012-12-23 16:29:23 -08:00
Mitchell Hashimoto 5adcb0fc43 Merge pull request #1232 from paulmars/master
Altered messages so they were _not_ self referencing.
2012-12-21 12:15:02 -08:00
Mitchell Hashimoto 5002b8d9c2 Fix failing test on 1.8.7 2012-12-20 22:05:05 -08:00
Mitchell Hashimoto 130a602e9b Style nitpick 2012-12-16 10:40:12 -08:00
Mitchell Hashimoto ca5f71104e Merge pull request #1259 from nwjsmith/patch-1
Update lib/vagrant/plugin/v2/plugin.rb to require 'set'
2012-12-16 10:39:45 -08:00
Mitchell Hashimoto b9f6afd2a0 Scrub LD_LIBRARY_PATH prior to executing VBoxManage 2012-12-16 10:37:43 -08:00
Nate Smith d556c0006c Update lib/vagrant/plugin/v2/plugin.rb
Require set in the V2 plugin file since it uses it.

Fixes #1257
2012-12-11 15:51:35 -05:00
Mitchell Hashimoto 54808f5c79 More readable gemspec according to @jordansissel 2012-12-01 11:47:18 -08:00
Mitchell Hashimoto d84b71d73e Require set in the V1 plugin file since it uses it. 2012-12-01 11:28:31 -08:00
Mitchell Hashimoto ee713a0e70 Gemspec no longer depends on git.
The CI works by pulling down tarballs of Vagrant, and the gemspecs
depending on `git ls-files` were making it not work.
2012-12-01 11:13:33 -08:00
Mitchell Hashimoto 6309a04bf1 Clear out unused gitignore stuff 2012-12-01 10:39:25 -08:00
Mitchell Hashimoto 23d06fcc92 Whitespace in gemspec 2012-11-30 21:48:15 -08:00
Mitchell Hashimoto 42f157143f Forward-port fix for OS X and VirtualBox bug from 1-0-stable 2012-11-20 11:00:19 -08:00
Paul McKellar 2b0c4e6385 Change description of plugins to avoid self referencial definitions. e.g. 'destroy' will destroy your VM 2012-11-19 13:10:04 -08:00
Mitchell Hashimoto b416665fd7 Just some comments 2012-11-07 22:21:48 -08:00
Mitchell Hashimoto 2ef6ff10f0 Cache the machine objects created in Environment#machine.
Each machine and provider backing should be represented by only one
machine.
2012-11-07 22:08:06 -08: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 83e99bbe4e config.vm.provider (although it doesn't do anything yet) 2012-11-07 20:38:41 -08:00
Mitchell Hashimoto f52f8ecc97 Get tests passing again, use V2 config in tests. 2012-11-07 20:06:55 -08:00
Mitchell Hashimoto 53860f90ab V2 loader now properly upgrades V1 configuration.
This is done by calling the `upgrade` method on the _old_ configuration
classes. The old configuration classes are given the complete new
configuration and can set whatever settings they need to on it.
2012-11-07 20:01:39 -08:00
Mitchell Hashimoto 3e6fe7406b Update the Vagrantfile template to use V2 by default. 2012-11-06 21:34:22 -08:00
Mitchell Hashimoto 253b433864 Support configuring the version for test plugins. 2012-11-06 21:32:26 -08:00
Mitchell Hashimoto d254d6f718 Configure the V2 kernel. 2012-11-06 21:28:44 -08:00
Mitchell Hashimoto 2de124e296 Turn provisioners to V2 2012-11-06 21:21:36 -08:00
Mitchell Hashimoto 81ca275792 Providers to V2 2012-11-06 21:20:55 -08:00
Mitchell Hashimoto 5a33b7ee54 Hosts to V2 2012-11-06 21:20:22 -08:00
Mitchell Hashimoto 02e499da47 Update tests to create V2 plugins 2012-11-06 21:19:27 -08:00