Mitchell Hashimoto
de78a3637a
Plugin activation
...
Vagrant is only guaranteeing that the plugin definition superclass (the
Vagrant.plugin("1") part) is backwards compatible. Anything else, such
as Vagrant::Command::Base and so on, will likely change in future
versions. Beacuse of this, plugins should only immediately expose their
definition.
In order to support loading the other classes, plugins should defer
loading to the "activation" phase of a plugin. This can be done using
the `activated` block:
class MyPlugin < Vagrant.plugin("1")
name "my plugin"
activated do
require "myplugin/my_command"
end
command("foo") { MyCommand }
end
Plugin activation is done at two specific times:
* Right when a Vagrant::Environment is created and the global plugins
(such as from ~.vagrantrc) are loaded.
* Right before loading configuration, but after the Vagrantfiles have
been evaluated. This allows plugins to be defined within these files
as well.
2012-05-21 22:23:50 -07:00
Mitchell Hashimoto
d230f0a41c
Environment.rb doesn't need to load in "rubygems" anymore
2012-05-06 13:49:22 -07:00
Mitchell Hashimoto
de92f5217c
Use load for the Vagrantrc, make sure it is only loaded once
2012-05-06 10:09:33 -07:00
Mitchell Hashimoto
462136cbf2
Use the .vagrantrc for plugins!
2012-05-05 13:08:07 -07:00
Mitchell Hashimoto
d9034da8a4
Remove gem-based plugin loading
2012-05-05 12:57:31 -07:00
Mitchell Hashimoto
cae80a7716
Make Vagrant::Plugin a module
2012-04-19 21:42:35 -07:00
Mitchell Hashimoto
661f20bb91
Move hosts to a plugin system
2012-04-18 22:20:45 -07:00
Mitchell Hashimoto
a23fee4848
Remove old configuration classes
2012-04-18 17:16:03 -07:00
Mitchell Hashimoto
f8fa859b5f
Raise an error if the CWD is incorrect
2012-03-08 16:57:17 -08:00
Mitchell Hashimoto
6969f791ad
VAGRANT_CWD can be set to set the CWD of vagrant.
2012-03-08 16:45:19 -08:00
Mitchell Hashimoto
ce00a56ecb
Even with a custom vagrantfile name, use defaults [GH-778]
2012-03-08 13:24:04 -08:00
Mitchell Hashimoto
700938b668
Load rubygems in environment.rb [GH-781]
2012-03-07 22:15:45 -08:00
Mitchell Hashimoto
2c823e98bd
Fix crashing bug with primary_vm on Environment
2012-02-24 10:27:34 -08:00
Mitchell Hashimoto
13fddfa6f9
Load plugins with the private gem path.
...
This changed plugin loading semantics a tiny bit, since they are
no longer loaded when Vagrant is loaded but instead when the
Vagrant::Environment is initialized. I'll note this in the CHANGELOG.
2012-02-06 22:39:35 -05:00
Mitchell Hashimoto
d19f7a44e5
Starting on the vagrant gem command.
2012-02-06 22:16:37 -05:00
Mitchell Hashimoto
88ba3a3619
Change middleware internals to make plugin lives easier [GH-684]
2012-01-28 17:31:50 -08:00
Mitchell Hashimoto
6d212efdbd
Fix ppk path by just... not using ppk anymore. [GH-634]
2012-01-12 18:03:35 -08:00
Mitchell Hashimoto
ef37f692bd
Revert the check for duplicate Vagrantfiles.
...
This is just tricky with case sensitive/insensitive file systems.
Reverting since it doesn't seem worth it.
2012-01-08 23:15:18 -08:00
Mitchell Hashimoto
4f30a834d0
Tests for multivagrantfile being found
2012-01-08 23:04:23 -08:00
Mitchell Hashimoto
8c00d1d652
Raise an error if multiple matching Vagrantfiles are found [GH-588]
2012-01-08 11:54:32 -08:00
Mitchell Hashimoto
75539c2abe
Default host class is the base class
2012-01-07 13:13:17 -08:00
Mitchell Hashimoto
0887a18079
Make some fixes to get tests passing on Ruby 1.8.7
2011-12-26 17:45:55 -08:00
Mitchell Hashimoto
2de7a1424d
Load VirtualBox VM in the VM class
2011-12-20 21:20:45 -08:00
Mitchell Hashimoto
9debf5abe9
Attach a driver to each VM. Use that to detect VirtualBox.
2011-12-20 21:20:45 -08:00
Mitchell Hashimoto
c2e3a3050a
Ruby 1.8.7 compatibility
2011-12-17 20:22:46 -08:00
Mitchell Hashimoto
43cadfe830
vagrant up
2011-12-17 09:14:05 -08:00
Mitchell Hashimoto
27491b554c
Remove thor from requirements. Start revamping Vagrant::CLI
2011-12-16 23:34:30 -08:00
Mitchell Hashimoto
fd9b752938
Make host class available to all actions
2011-12-11 23:27:53 -08:00
Mitchell Hashimoto
668bab0ba9
Better host loading scheme
2011-12-11 23:22:44 -08:00
Mitchell Hashimoto
e201d9cacf
Rename action registry to just Vagrant::Registry
2011-12-11 18:22:06 -08:00
Mitchell Hashimoto
05ae297fd2
Copy insecure private key to user owned directory [GH-580]
2011-12-11 16:32:25 -08:00
Mitchell Hashimoto
5762775998
Reorganize little methods and remove unused methods
2011-12-10 20:22:44 -08:00
Mitchell Hashimoto
4006befe7f
Trivial whitespace change
2011-12-10 20:20:01 -08:00
Mitchell Hashimoto
069a1c1348
Try to actually create directory before showing home directory error
2011-12-10 17:37:18 -08:00
Mitchell Hashimoto
d9e2c8b788
Raise a nice error if home directory is not accessible
2011-12-10 17:14:07 -08:00
Mitchell Hashimoto
d05c6f9d61
Get regression working again
2011-12-10 16:38:01 -08:00
Mitchell Hashimoto
baba6af4ff
Resource prefixes in UI output work
2011-12-10 16:17:09 -08:00
Mitchell Hashimoto
40b9254d5a
Environment reloading works
2011-12-10 16:07:28 -08:00
Mitchell Hashimoto
2a7f0d8a85
Return nil if no root path to determine dotfile
2011-12-10 13:56:34 -08:00
Mitchell Hashimoto
2f85fe1d4f
Return proper dotfile path
2011-12-10 13:02:00 -08:00
Mitchell Hashimoto
bfd93eef4e
Come a lot farther in getting up to work again
2011-12-10 09:54:23 -08:00
Mitchell Hashimoto
1758970a53
Fixing up VM actions to try to get them working again
2011-12-09 20:39:08 -08:00
Mitchell Hashimoto
739d5ffb5f
Lazy load attributes for runners. Get box repackage working.
2011-12-09 20:24:34 -08:00
Mitchell Hashimoto
f261c0571f
Modify box download action to work with new runnerx
2011-12-09 14:55:24 -08:00
Mitchell Hashimoto
3c8261f4ac
Add :ui to the globals for the action runner
2011-12-09 14:50:42 -08:00
Mitchell Hashimoto
bbb8f0ac2c
Integrate new action runner/registry into Vagrant::Environment
2011-12-09 14:39:39 -08:00
Mitchell Hashimoto
daf711fd80
Separate Vagrant::Action into Runner and Registry
2011-12-09 14:22:03 -08:00
Mitchell Hashimoto
8801bc7b1b
Starting to revamp BoxCollection to not depend on env
2011-12-04 11:39:44 -08:00
Mitchell Hashimoto
cf7a5db7e7
More environment.rb cleanup
2011-12-04 11:24:18 -08:00
Mitchell Hashimoto
f8d628148c
Remove all environment parent references
2011-12-04 11:16:55 -08:00