267 Commits

Author SHA1 Message Date
Mitchell Hashimoto
5b42994406 core: better cleanup of ".vagrant" 2013-08-29 11:45:57 -07:00
Mitchell Hashimoto
f3bbad8c2e Refactor box collection to support looking for boxes multi-provider 2013-07-19 00:50:00 -04:00
Mitchell Hashimoto
bd378ea2b0 VAGRANT_DOTFILE_PATH [GH-1524] 2013-07-18 11:58:11 -04:00
Mitchell Hashimoto
b68c489991 Fix missing translation for non existent CWD [GH-1947] 2013-07-18 10:43:12 -04:00
Mitchell Hashimoto
04d9872674 Improve the thread safety of BoxCollection 2013-04-19 23:48:05 -06:00
Mitchell Hashimoto
e8d8188474 Error if a box override changes the box setting... 2013-04-19 23:10:17 -06:00
Mitchell Hashimoto
661b982502 Handle box overrides in provider-specific overrides properly [GH-1617] 2013-04-19 23:05:32 -06:00
Mitchell Hashimoto
0f089c5671 --[no-]parallel for vagrant up 2013-04-16 15:22:14 -07:00
Mitchell Hashimoto
f3cf23e873 Ability to specify no parallelism on the environment 2013-04-16 15:13:00 -07:00
Mitchell Hashimoto
efaabea5c0 Use vagrant tmp directory for boxes [GH-1442] 2013-04-07 14:48:56 -07:00
Mitchell Hashimoto
96ebd3e8f7 Providers can support multiple box formats if they choose to.
Currently, providers must match a box format exactly the same
as that provider's name. i.e. the virtuabox provider needs a
"virtualbox" box and the "vmware_fusion" provider needs a
"vmware_fusion" box. Now, the provider can specify what the box format
is they want and support multiple if wanted.

Other box formats are specified in the provider definition within
a plugin:

    class Plugin < Vagrant.plugin("2", "provider")
      # ... other stuff

      provider("foo", box_format: ["virtualbox", "other_format"]) do
        # .. same
      end
    end

Now when using the example "foo" provider above, boxes for both
"virtualbox" or "other_format" are searched for. If both are found,
the order in which the formats exist determines precedence.
2013-04-06 18:21:16 -07:00
Mitchell Hashimoto
fbdd46a130 On Windows, prefer USERPROFILE for home directory path 2013-04-06 15:53:58 -07:00
Mitchell Hashimoto
52a2f48b20 Provider-specific configuration overrides via 2nd block param
Example:

Vagrant.configure("2") do |config|
  # ...

  config.vm.provider :virtualbox do |p, vb_config|
    vb_config.vm.box = "virtualbox_box"
  end
end
2013-04-03 14:57:14 -07:00
Mitchell Hashimoto
368dddd950 Allow only one Environment#batch to run at a time per env 2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
d6a84b5ca4 Environment#batch and forcing disable through env var 2013-04-03 08:31:42 -07:00
JD Harrington
8cd74fee16 Allow override of default_provider
Set the VAGRANT_DEFAULT_PROVIDER environment variable to override the
value of default_provider.
2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
2e50a238fc Provider plugins can provide arbitrary options 2013-04-03 08:31:42 -07:00
Mitchell Hashimoto
8156185f5d Don't error too early when config.vm.box is not properly set 2013-03-29 12:54:01 -07:00
Mitchell Hashimoto
72e0a691db Don't load plugins.json plugins in Bundler env 2013-03-28 17:02:54 -07:00
Mitchell Hashimoto
327ca544ef Don't load any plugins for vagrant plugin [GH-1418] 2013-03-14 12:58:24 -07:00
Fabio Rehm
54e0c37dbf Fix typo on logging output 2013-03-06 19:47:28 -03:00
Mitchell Hashimoto
ade5d8a579 Human-friendly error if error copying private key [GH-580] 2013-03-01 13:51:11 -08:00
Mitchell Hashimoto
499d1ff8bf VAGRANT_VAGRANTFILE env var to specify alternate filename for Vfile 2013-02-23 12:07:23 -08:00
Mitchell Hashimoto
1bda157188 Only look for Vagrantfile if no more specific was given 2013-02-23 11:59:44 -08:00
Mitchell Hashimoto
60a1b035e7 For hooks, put the environment in the action env 2013-02-22 15:52:57 -08:00
Mitchell Hashimoto
3b2a82003e The hook callable has to be an Action builder so the hooks are called 2013-02-22 15:28:48 -08:00
Mitchell Hashimoto
9750069312 Better logging around environment hooks 2013-02-22 14:43:43 -08:00
Mitchell Hashimoto
46db50680b environment_unload hook 2013-02-22 13:54:28 -08:00
Mitchell Hashimoto
3c343c0623 Environment#hook allows hooks to be run at arbitrary points 2013-02-22 12:22:10 -08:00
Mitchell Hashimoto
6a12edeb71 Get rid of unused variable 2013-02-20 20:41:19 -08:00
Mitchell Hashimoto
4144db5042 More gracefully handled plugins which cannot be found 2013-02-07 11:55:45 -08:00
Mitchell Hashimoto
79beefdb0a Do proper provider configuration merging 2013-02-05 12:22:00 -08:00
Mitchell Hashimoto
82c9b658d0 Expose the home_path to the action runner 2013-02-04 10:42:44 -08:00
Mitchell Hashimoto
01756dc964 Fix the UI so the output shows the proper machine name 2013-02-03 14:23:07 -08:00
Mitchell Hashimoto
78e9853b71 The resource in the UI doesn't show up if it is nil 2013-02-03 14:20:40 -08:00
Mitchell Hashimoto
3df6088db0 Make plugin loading more robust to errors 2013-02-03 14:13:27 -08:00
Mitchell Hashimoto
5882d5dad6 VAGRANT_NO_PLUGINS can be used to skip plugin loading 2013-02-03 13:03:00 -08:00
Mitchell Hashimoto
693b825eb1 Don't use the RC file, use the JSOn state file 2013-02-03 12:53:52 -08:00
Mitchell Hashimoto
a2ef7790de Start creating the plugin middleware sequences 2013-02-02 18:42:04 -08:00
Mitchell Hashimoto
67c2e205be Create rgloader/loader.rb files for encoded files 2013-01-31 18:48:56 -08:00
Mitchell Hashimoto
c5120fdd5e Don't fail too early with bad Vagrantfiles [GH-1345] 2013-01-30 20:16:10 -08:00
Mitchell Hashimoto
7eec127704 Support refreshing the machine cache 2013-01-30 10:37:40 -08:00
Mitchell Hashimoto
64042a5d35 Downloading the box_url component works again 2013-01-30 10:24:47 -08:00
Mitchell Hashimoto
c3cc513609 Create the setup_version file to track our directory layout version 2013-01-25 16:37:54 -08:00
Mitchell Hashimoto
2d57afbbda Support warnings/errors when upgrading Vagrantfiles internally 2013-01-20 22:04:50 -05:00
Mitchell Hashimoto
0bd0752bf2 Environment#data_dir
This is basically a directory to store state.
2013-01-18 11:37:49 -08:00
Mitchell Hashimoto
25fcb59e38 Use registries for the V2 plugin manager 2013-01-13 13:05:31 -08:00
Mitchell Hashimoto
a30a92bb4f active_machines should return name as a symbol 2012-12-30 11:51:22 -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
9257fe3d98 Environment#active_machines
This returns a list of active machines for the environment. An active
machine is a machine that at one point was created by Vagrant.
2012-12-27 19:28:05 -10:00