Mitchell Hashimoto
a924a7b48c
core: provider capabilities
2014-01-26 14:15:06 -08:00
Mitchell Hashimoto
f713e43b00
Fix tests for new UI methods
2014-01-17 21:03:02 -08:00
Mitchell Hashimoto
08b1aee00d
core: default commands to primary
2014-01-11 09:15:14 -08:00
Mitchell Hashimoto
4a99cdccdf
core: allow command plugins to have options
2014-01-11 08:38:27 -08:00
Mitchell Hashimoto
010874ffad
core: has_plugin? uses the new plugin manager class to check for gems
2014-01-08 10:50:28 -08:00
Mitchell Hashimoto
5922241fcb
core: Modify plugin interfaces and API for hosts
2014-01-07 18:38:49 -08:00
Mitchell Hashimoto
3f4058471c
core: installing a plugin from a gem doesn't constrain it
2014-01-07 13:56:51 -08:00
Mitchell Hashimoto
b353865da1
core: specific versions "0.1.0" don't equate to "= 0.1.0"
2014-01-07 10:13:30 -08:00
Mitchell Hashimoto
198e142794
commands/plugin: add more tests for installgem
2014-01-06 10:55:34 -08:00
Mitchell Hashimoto
f612ec7549
core: support plugin sources, and mask Bundler errors
2014-01-05 23:13:49 -08:00
Mitchell Hashimoto
84ecca5c15
core: statefile can track sources, not sure if we'll use it though
2014-01-05 22:50:55 -08:00
Mitchell Hashimoto
8904319beb
commands/plugin: install version and entrypoints work
2014-01-05 20:47:02 -08:00
Mitchell Hashimoto
fe8842c795
Fix failing tests
2014-01-05 16:54:10 -08:00
Mitchell Hashimoto
1eef75a715
commands/plugin: list uses PluginManager
2014-01-05 08:42:34 -08:00
Mitchell Hashimoto
8450f20e87
Move StateFile into Vagrant::Plugin core
2014-01-04 16:45:41 -08:00
Teemu Matilainen
e5032071f6
core: Vagrant.has_plugin? tries to match gem name first
...
Search primary from the list of gem names which have been loaded by
`Vagrant.require_plugin`. Fall back to matching registered plugin names.
2013-12-20 17:36:10 -03:00
Mitchell Hashimoto
93a4066339
core: SyncedFolders built-in middleware
2013-11-22 16:12:51 -08:00
Mitchell Hashimoto
ee0086ddee
core: Add synced_folder plugin type
2013-11-21 15:56:37 -08:00
Mitchell Hashimoto
819ef46fca
Tests for registering guest capabilities
2013-04-03 22:43:35 -07:00
Mitchell Hashimoto
c5c15fdaa6
Machine#guest returns the proper guest detected
2013-04-03 22:40:30 -07:00
Mitchell Hashimoto
2e50a238fc
Provider plugins can provide arbitrary options
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
be01d57034
action_hooks can hook into specific actions
2013-02-22 12:12:55 -08:00
Mitchell Hashimoto
aa7193471f
Plugins can define action hooks via action_hook
2013-02-06 15:27:14 -08:00
Mitchell Hashimoto
8f24d2d98c
Remove the "easy" plugins until a future version
2013-02-06 13:46:34 -08:00
Mitchell Hashimoto
2073ce697f
Move cli test to proper path
2013-01-29 11:00:56 -08:00
Michael Stillwell
7941748db7
Return exit status of 1 on invalid command
...
Makes "vagrant destroyjj" and similar return an exit code of 1, so that
"vagrant destroyjj && vagrant up" works as expected.
2013-01-27 19:52:43 +00:00
Mitchell Hashimoto
25fcb59e38
Use registries for the V2 plugin manager
2013-01-13 13:05:31 -08:00
Mitchell Hashimoto
f3b340aae0
Use registry merging for provider configs
2013-01-13 13:00:06 -08:00
Mitchell Hashimoto
e66c5066e4
Plugin configuration can have scopes now, ex. provider
2013-01-13 12:38:17 -08:00
Mitchell Hashimoto
cf2c5a10c1
One more final fix for 1.8.7
2012-12-30 18:16:51 -10:00
Mitchell Hashimoto
037dbf24db
Fix some failing tests for 1.8.7.
2012-12-30 18:13:27 -10:00
Mitchell Hashimoto
4c46091746
Environment#primary_machine_name and use it for with_target_vms
...
This makes the single-provider and default provider semantics work with
primary VMs.
2012-12-30 11:12:56 -10:00
Mitchell Hashimoto
24c3c9a7ae
Better test coverage on with_target_vms. Added pending tests to work on.
2012-12-30 10:59:59 -10: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
8fe0f86dbd
The --provider flag for up now actually does something.
2012-12-23 21:23:08 -08:00
Mitchell Hashimoto
3808ea377f
Upgrade all other default configurations to V2
2012-12-23 16:29:26 -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
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
59d5c5ed92
Add support for "upgrade safe" config classes to plugins.
...
These are classes that use NO core classes of Vagrant, and are therefore
safe to load for upgrades. i.e. a V2 core can load a V1 config class
that is deemed upgrade safe without crashing Vagrant.
2012-11-03 21:39:06 -07:00
Mitchell Hashimoto
68923ff556
Additional tests for the plugin manager.
2012-11-03 21:30:22 -07:00
Mitchell Hashimoto
c803b0508a
Much cleaner plugin part querying syntax.
...
Before we were manually going over every plugin and getting each piece,
all over the place. Now we have a central manager that will give us all
the pieces we want. There is still some cleanup to do here but this is
much better overall.
2012-11-03 21:25:28 -07:00
Mitchell Hashimoto
6df6f6764f
Remove plugin activation. It really isn't necessary.
...
It was only used in a couple places and it isn't necessary since you can
do the loading within the actual blocks themselves.
2012-11-03 20:29:34 -07:00
Mitchell Hashimoto
5ae3e0e80c
Allow the definition of communicators in plugins
2012-08-08 21:52:25 -07:00
Mitchell Hashimoto
a1cef830e3
Add the Communicator plugin API.
...
This allows communication protocols to be defined for the machine. This
is how things like SSH will be implemented.
2012-08-08 21:28:28 -07:00
Mitchell Hashimoto
1a2a8b49c0
Provider API to return SSH info, must implement ssh_info.
...
Since SSH is such a critical part of Vagrant, each provider must
implement a method that returns the proper way to SSH into the machine.
2012-08-05 12:41:05 -07:00
Mitchell Hashimoto
912998ef31
Fill in the provider API a bit more to what it is.
2012-07-16 15:24:51 -07:00
Mitchell Hashimoto
3519bf0372
Add the "provider" API to the V1 plugin.
2012-07-15 11:17:58 -07:00
Mitchell Hashimoto
436da57cc4
Add the #action API to the provider plugin
2012-07-14 17:04:06 -07:00
Mitchell Hashimoto
70bdd9f56e
Move host base class to a plugin component
2012-06-27 09:26:03 -07:00