Mitchell Hashimoto
99346cc516
core: add Vagrantfile class, tests
2014-02-06 20:11:12 -08:00
Mitchell Hashimoto
0f2fff2420
Merge pull request #2943 from mitchellh/f-boxes-2
...
Boxes Revamp: Short URLs, Versions, Updates!
* **Box versioning** - All boxes can have versions now. This version information is available in metadata requested by Vagrant. New commands such as `vagrant box outdated` and new settings such as `config.vm.box_check_update` will configure how/when Vagrant checks for box updates. Boxes that don't support versions will always have version "0".
* **Shortnames for boxes** - You can now do things like `vagrant box add hashicorp/precise64`. The name and the URL are one and the same. This requires a backend. We'll be hosting one [for free public access] in the coming month or two. Of course, you don't need to use the backend we'll provide to support versions or unversioned boxes. You would need to for shortnames.
* **Multiple providers at one URL** - A single URL can now represent multiple providers. In this case, Vagrant will ask you what provider you want to download if it can't figure it out on its own.
All of this is _fully backwards compatible_. I verified this as best I could with the tests in vagrant-spec. I have to write new acceptance tests for the new features, however. Also, this PR adds around 100 unit tests.
2014-02-06 20:09:56 -08:00
Mitchell Hashimoto
d18e80e1fd
Fix tests for kernel/v2
2014-02-05 21:24:34 -08:00
Mitchell Hashimoto
cac0fdb490
core: Add the default server URL
2014-02-05 21:20:37 -08:00
Mitchell Hashimoto
eab1d1150a
website/docs: update all the links to the box directory
2014-02-05 21:20:36 -08:00
Mitchell Hashimoto
becc349846
core: handle native windows paths like 'c:\foo.box'
...
[GH-2081]
2014-02-05 21:20:35 -08:00
Mitchell Hashimoto
66a33d846d
website/docs: note that box_check_update is true by default
2014-02-05 21:20:34 -08:00
Mitchell Hashimoto
848fe5d166
kernel/v2: check for box updates by default
...
/cc @pearkes @armon
2014-02-05 21:20:33 -08:00
Mitchell Hashimoto
751b4da2c6
core: if box is unversioned, check update does nothing
2014-02-05 21:20:32 -08:00
Mitchell Hashimoto
647563edaf
core: shorthand boxes must be foo/bar formatted, better errors
2014-02-05 21:20:31 -08:00
Mitchell Hashimoto
433e789a99
core: set URL to opaque if there is no path
2014-02-05 21:20:30 -08:00
Mitchell Hashimoto
85aa7db17e
commands/box: repackage tests
2014-02-05 21:20:29 -08:00
Mitchell Hashimoto
b194525521
core: output a newline after ask with no echo
2014-02-05 21:20:28 -08:00
Mitchell Hashimoto
1a7b78e00e
core: UI supports not echoing
2014-02-05 21:20:27 -08:00
Mitchell Hashimoto
222ec288f2
website/docs: document Vagrantfile updates
2014-02-05 21:20:26 -08:00
Mitchell Hashimoto
286a503cb6
website/docs: docs for box versioning
2014-02-05 21:20:25 -08:00
Mitchell Hashimoto
7a6d1a3ff1
commands/box: update command can update a specific box now
2014-02-05 21:20:23 -08:00
Mitchell Hashimoto
386938f0b1
commands/box: update looks prettier on output
2014-02-05 21:20:22 -08:00
Mitchell Hashimoto
cf9004241e
core: output what we're updating and what we're not
2014-02-05 21:20:21 -08:00
Mitchell Hashimoto
43157fba18
core: output the version that is added with BoxAdd
2014-02-05 21:20:20 -08:00
Mitchell Hashimoto
88b64f93a4
commands/box: "update" command
2014-02-05 21:20:19 -08:00
Mitchell Hashimoto
61a1082d65
core: BoxCheckOutdated is *much* simpler, unified logic, tests
2014-02-05 21:20:18 -08:00
Mitchell Hashimoto
1a5ad9f3d5
providers/virtualbox: check for outdated on any start
2014-02-05 21:20:17 -08:00
Mitchell Hashimoto
bfca65b098
core: better output for BoxCheckOutdated
2014-02-05 21:20:16 -08:00
Mitchell Hashimoto
ea06202903
core: get rid of unnecessary lines
2014-02-05 21:20:15 -08:00
Mitchell Hashimoto
b5157df2cc
core: BoxCheckOutdated only runs if told to
2014-02-05 21:20:14 -08:00
Mitchell Hashimoto
8cc16d14fa
core: BoxCheckOutdated checks locally
2014-02-05 21:20:13 -08:00
Mitchell Hashimoto
d78194654d
core: ability to hide success UI
2014-02-05 21:20:12 -08:00
Mitchell Hashimoto
e537e02d9d
core: BoxCheckOutdated can check if a box is outdated
2014-02-05 21:20:11 -08:00
Mitchell Hashimoto
f2509f5c65
commands/box: outdated command to find outdated boxes
2014-02-05 21:20:10 -08:00
Mitchell Hashimoto
b81686e2c9
core: BoxAdd adds the metadata URL
2014-02-05 21:20:08 -08:00
Mitchell Hashimoto
bd9f375263
core: Box can store a metadata URL
2014-02-05 21:20:07 -08:00
Mitchell Hashimoto
e9afe386c1
core: remove BoxUpgradeRequired exception
2014-02-05 21:20:06 -08:00
Mitchell Hashimoto
4cedd590d9
providers/virtualbox: use new HandleBox middleware
2014-02-05 21:20:05 -08:00
Mitchell Hashimoto
d278fb2661
core: catch ENOENT as not a metadata URL
2014-02-05 21:20:04 -08:00
Mitchell Hashimoto
2ea6f92a6c
core: Cleaner output for BoxAdd
2014-02-05 21:20:03 -08:00
Mitchell Hashimoto
fa77d6810f
core: BoxAdd expands URL paths
2014-02-05 21:20:02 -08:00
Mitchell Hashimoto
d40ff9c390
kernel_v2: test for box_url
2014-02-05 21:20:01 -08:00
Mitchell Hashimoto
8ab3ae1bef
core: BoxAdd UI looks better
2014-02-05 21:20:00 -08:00
Mitchell Hashimoto
f0607c6df0
core: BoxAdd supports multiple URLs properly
2014-02-05 21:19:59 -08:00
Mitchell Hashimoto
38248c240c
core: BoxAdd errors if name doesn't match metadata
2014-02-05 21:19:58 -08:00
Mitchell Hashimoto
b23ad41c40
core: HandleBox reloads the box
2014-02-05 21:19:57 -08:00
Mitchell Hashimoto
f2c4adc4ee
core: use symbol names for providers everywhere
2014-02-05 21:19:56 -08:00
Mitchell Hashimoto
e316e10552
core: make sure the env has the UI in it for adding boxes
2014-02-05 21:19:55 -08:00
Mitchell Hashimoto
a73ea6ab7a
core: fix hang in test
2014-02-05 21:19:54 -08:00
Mitchell Hashimoto
a115750401
core: HandleBox works with metadata boxes
2014-02-05 21:19:52 -08:00
Mitchell Hashimoto
b2fa785d07
core: Environment loads proper version of box
2014-02-05 21:19:51 -08:00
Mitchell Hashimoto
7e847a36b6
core: update error message for shorthand is bad
2014-02-05 21:19:50 -08:00
Mitchell Hashimoto
d08866e9f3
core: nicer error if shorthand can't be found
2014-02-05 21:19:49 -08:00
Mitchell Hashimoto
1bd3275b3b
core: output the expanded URL
2014-02-05 21:19:48 -08:00